Updates to UI, Update NLog to 4.4.12

pull/94/head
Qstick 7 years ago
parent 31db4e2026
commit c8ed46850a

@ -240,7 +240,6 @@
one-var-declaration-per-line: ["error", "always"],
operator-assignment: ["off", "never"],
operator-linebreak: ["error", "after"],
padded-blocks: ["error", "never"],
quote-props: ["error", "as-needed"],
quotes: ["error", "single"],
require-jsdoc: "off",
@ -283,6 +282,6 @@
"react/react-in-jsx-scope": 2,
"react/self-closing-comp": 2,
"react/sort-comp": 2,
"react/wrap-multilines": 2
"react/jsx-wrap-multilines": 2
}
}

@ -1,14 +1,9 @@
const _ = require('lodash');
const gulp = require('gulp');
const simpleVars = require('postcss-simple-vars');
const nested = require('postcss-nested');
const autoprefixer = require('autoprefixer');
const webpackStream = require('webpack-stream');
const livereload = require('gulp-livereload');
const path = require('path');
const webpack = require('webpack');
const errorHandler = require('./helpers/errorHandler');
const reload = require('require-nocache')(module);
const ExtractTextPlugin = require('extract-text-webpack-plugin');
const uiFolder = 'UI';
@ -18,13 +13,20 @@ const isProduction = process.argv.indexOf('--production') > -1;
console.log('ROOT:', root);
console.log('isProduction:', isProduction);
const cssVariables = [
const cssVarsFiles = [
'../src/Styles/Variables/colors',
'../src/Styles/Variables/dimensions',
'../src/Styles/Variables/fonts',
'../src/Styles/Variables/animations'
].map(require.resolve);
const extractCSSPlugin = new ExtractTextPlugin({
filename: path.join('_output', uiFolder, 'Content', 'styles.css'),
allChunks: true,
disable: false,
ignoreOrder: true
});
const config = {
devtool: '#source-map',
stats: {
@ -39,9 +41,10 @@ const config = {
index: 'index.js'
},
resolve: {
root: [
modules: [
root,
path.join(root, 'Shims')
path.join(root, 'Shims'),
'node_modules'
],
alias: {
jquery: 'jquery/src/jquery'
@ -52,10 +55,11 @@ const config = {
sourceMapFilename: '[file].map'
},
plugins: [
new ExtractTextPlugin(path.join('_output', uiFolder, 'Content', 'styles.css'), { allChunks: true }),
extractCSSPlugin,
new webpack.optimize.CommonsChunkPlugin({
name: 'vendor'
}),
new webpack.DefinePlugin({
__DEV__: !isProduction,
'process.env': {
@ -64,22 +68,23 @@ const config = {
})
],
resolveLoader: {
modulesDirectories: [
modules: [
'node_modules',
'gulp/webpack/'
'frontend/gulp/webpack/'
]
},
eslint: {
formatter: function(results) {
return JSON.stringify(results);
}
},
// TODO: Do we need this loader?
// eslint: {
// formatter: function(results) {
// return JSON.stringify(results);
// }
// },
module: {
loaders: [
rules: [
{
test: /\.js?$/,
exclude: /(node_modules|JsLibraries)/,
loader: 'babel',
loader: 'babel-loader',
query: {
plugins: ['transform-class-properties'],
presets: ['es2015', 'decorators-legacy', 'react', 'stage-2'],
@ -95,51 +100,80 @@ const config = {
{
test: /\.css$/,
exclude: /(node_modules|globals.css)/,
loader: ExtractTextPlugin.extract('style', 'css-loader?modules&importLoaders=1&sourceMap&localIdentName=[name]__[local]___[hash:base64:5]!postcss-loader')
use: extractCSSPlugin.extract({
fallback: 'style-loader',
use: [
{
loader: 'css-variables-loader',
options: {
cssVarsFiles
}
},
{
loader: 'css-loader',
options: {
modules: true,
importLoaders: 1,
localIdentName: '[name]-[local]-[hash:base64:5]',
sourceMap: true
}
},
{
loader: 'postcss-loader',
options: {
config: {
ctx: {
cssVarsFiles
},
path: 'frontend/postcss.config.js'
}
}
}
]
})
},
// Global styles
{
test: /\.css$/,
include: /(node_modules|globals.css)/,
loader: 'style!css-loader'
use: [
'style-loader',
{
loader: 'css-loader'
}
]
},
// Fonts
{
test: /\.woff(2)?(\?v=[0-9]\.[0-9]\.[0-9])?$/,
loader: 'url?limit=10240&mimetype=application/font-woff&emitFile=false&name=Content/Fonts/[name].[ext]'
use: [
{
loader: 'url-loader',
options: {
limit: 10240,
mimetype: 'application/font-woff',
emitFile: false,
name: 'Content/Fonts/[name].[ext]'
}
}
]
},
{
test: /\.(ttf|eot|eot?#iefix|svg)(\?v=[0-9]\.[0-9]\.[0-9])?$/,
loader: 'file-loader?emitFile=false&name=Content/Fonts/[name].[ext]'
use: [
{
loader: 'file-loader',
options: {
emitFile: false,
name: 'Content/Fonts/[name].[ext]'
}
}
]
}
]
},
postcss: function(wpack) {
cssVariables.forEach(wpack.addDependency);
return [
simpleVars({
variables: function() {
return cssVariables.reduce(function(obj, vars) {
return _.extend(obj, reload(vars));
}, {});
}
}),
nested(),
autoprefixer({
browsers: [
'Chrome >= 30',
'Firefox >= 30',
'Safari >= 6',
'Edge >= 12',
'Explorer >= 10',
'iOS >= 7',
'Android >= 4.4'
]
})
];
}
};

@ -0,0 +1,11 @@
const loaderUtils = require('loader-utils');
module.exports = function cssVariablesLoader(source) {
const options = loaderUtils.getOptions(this);
options.cssVarsFiles.forEach((cssVarsFile) => {
this.addDependency(cssVarsFile);
});
return source;
};

@ -0,0 +1,33 @@
const reload = require('require-nocache')(module);
module.exports = (ctx, configPath, options) => {
const config = {
plugins: {
'postcss-simple-vars': {
variables: () =>
ctx.options.cssVarsFiles.reduce((acc, vars) => {
return Object.assign(acc, reload(vars));
}, {})
},
'postcss-nested': {},
'postcss-mixins': {
mixinsDir: [
'frontend/src/Styles/Mixins'
]
},
autoprefixer: {
browsers: [
'Chrome >= 30',
'Firefox >= 30',
'Safari >= 6',
'Edge >= 12',
'Explorer >= 11',
'iOS >= 7',
'Android >= 4.4'
]
}
}
};
return config;
};

@ -3,16 +3,19 @@ import React, { Component } from 'react';
import { connect } from 'react-redux';
import { createSelector } from 'reselect';
import { fetchHistory, markAsFailed } from 'Store/Actions/historyActions';
import createArtistSelector from 'Store/Selectors/createArtistSelector';
import createEpisodeSelector from 'Store/Selectors/createEpisodeSelector';
import createUISettingsSelector from 'Store/Selectors/createUISettingsSelector';
import HistoryRow from './HistoryRow';
function createMapStateToProps() {
return createSelector(
createArtistSelector(),
createEpisodeSelector(),
createUISettingsSelector(),
(episode, uiSettings) => {
(artist, episode, uiSettings) => {
return {
artist,
episode,
shortDateFormat: uiSettings.shortDateFormat,
timeFormat: uiSettings.timeFormat
@ -28,6 +31,9 @@ const mapDispatchToProps = {
class HistoryRowConnector extends Component {
//
// Lifecycle
componentDidUpdate(prevProps) {
if (
prevProps.isMarkingAsFailed &&

@ -52,8 +52,8 @@
}
.addButton {
@add-mixin truncate;
composes: button from 'Components/Link/SpinnerButton.css';
composes: truncate from 'Styles/mixins/truncate.css';
}
.hideLanguageProfile {

@ -42,7 +42,7 @@ $hoverScale: 1.05;
}
.title {
composes: truncate from 'Styles/mixins/truncate.css';
@add-mixin truncate;
background-color: $defaultColor;
color: $white;

@ -41,7 +41,7 @@ $hoverScale: 1.05;
}
.title {
composes: truncate from 'Styles/mixins/truncate.css';
@add-mixin truncate;
background-color: $defaultColor;
color: $white;

@ -28,7 +28,7 @@
.artistName,
.albumTitle {
composes: truncate from 'Styles/Mixins/truncate.css';
@add-mixin truncate;
flex: 0 1 300px;
margin-right: 10px;

@ -14,7 +14,7 @@
.artistName,
.albumTitle {
composes: truncate from 'Styles/Mixins/truncate.css';
@add-mixin truncate;
flex: 1 0 1px;
margin-right: 10px;

@ -8,7 +8,7 @@
@media (min-width: 768px) {
.title {
composes: truncate from 'Styles/Mixins/truncate.css';
@add-mixin truncate;
float: left;
clear: left;

@ -24,9 +24,9 @@
}
.pathContainer {
composes: scrollbar from 'Styles/Mixins/scroller.css';
composes: scrollbarTrack from 'Styles/Mixins/scroller.css';
composes: scrollbarThumb from 'Styles/Mixins/scroller.css';
@add-mixin scrollbar;
@add-mixin scrollbarTrack;
@add-mixin scrollbarThumb;
}
.pathInputContainerOpen {

@ -8,13 +8,13 @@
}
.path {
composes: truncate from 'Styles/mixins/truncate.css';
@add-mixin truncate;
flex: 1 0 0;
}
.freeSpace {
composes: truncate from 'Styles/mixins/truncate.css';
@add-mixin truncate;
flex: 1 0 0;
margin-left: 15px;

@ -14,7 +14,7 @@ function Icon(props) {
} = props;
return (
<icon
<i
className={classNames(
name,
className,
@ -25,7 +25,7 @@ function Icon(props) {
fontSize: `${size}px`
}}
>
</icon>
</i>
);
}

@ -1,5 +1,5 @@
.menuItem {
composes: truncate from 'Styles/mixins/truncate.css';
@add-mixin truncate;
display: block;
flex-shrink: 0;

@ -1,5 +1,5 @@
.modalHeader {
composes: truncate from 'Styles/Mixins/truncate.css';
@add-mixin truncate;
flex-shrink: 0;
padding: 15px 50px 15px 30px;

@ -37,9 +37,9 @@
}
.seriesContainer {
composes: scrollbar from 'Styles/Mixins/scroller.css';
composes: scrollbarTrack from 'Styles/Mixins/scroller.css';
composes: scrollbarThumb from 'Styles/Mixins/scroller.css';
@add-mixin scrollbar;
@add-mixin scrollbarTrack;
@add-mixin scrollbarThumb;
}
.containerOpen {

@ -29,6 +29,6 @@
.titles,
.title,
.alternateTitle {
composes: truncate from 'Styles/Mixins/truncate.css';
@add-mixin truncate;
}
}

@ -330,9 +330,9 @@ class PageSidebar extends Component {
return;
}
if (isSidebarVisible && (touchStartX > 210 || touchStartX < 50)) {
if (isSidebarVisible && (touchStartX > 210 || touchStartX < 180)) {
return;
} else if (!isSidebarVisible && touchStartX > 50) {
} else if (!isSidebarVisible && touchStartX > 30) {
return;
}
@ -373,6 +373,15 @@ class PageSidebar extends Component {
}
if (Math.abs(this._touchStartY - currentTouchY) > 20) {
this.setState({
transition: 'none',
transform: 0
});
return;
}
if (Math.abs(this._touchStartX - currentTouchX) < 20) {
return;
}

@ -63,7 +63,7 @@ class PageSidebarItem extends Component {
</span>
}
<span className={isChildItem && styles.noIcon}>
<span className={isChildItem ? styles.noIcon : null}>
{title}
</span>

@ -1,7 +1,7 @@
.scroller {
composes: scrollbar from 'Styles/Mixins/scroller.css';
composes: scrollbarTrack from 'Styles/Mixins/scroller.css';
composes: scrollbarThumb from 'Styles/Mixins/scroller.css';
@add-mixin scrollbar;
@add-mixin scrollbarTrack;
@add-mixin scrollbarThumb;
}
.none {

@ -306,15 +306,17 @@ class SignalRConnector extends Component {
}
onDisconnected = () => {
if (this.props.isReconnecting) {
this.props.setAppValue({
isConnected: false,
isReconnecting: true,
isDisconnected: true
});
this.retryConnection();
if (window.Sonarr.unloading) {
return;
}
this.props.setAppValue({
isConnected: false,
isReconnecting: true,
isDisconnected: true
});
this.retryConnection();
}
//

@ -1,6 +1,6 @@
.cell {
@add-mixin truncate;
composes: cell from 'Components/Table/Cells/TableRowCell.css';
composes: truncate from 'Styles/Mixins/truncate.css';
flex-grow: 0;
flex-shrink: 1;

@ -25,7 +25,7 @@
}
.path {
composes: truncate from 'Styles/Mixins/truncate.css';
@add-mixin truncate;
flex: 1 0 1px;
}

@ -7,11 +7,11 @@
}
.underlay {
composes: cover from 'Styles/Mixins/cover.css';
@add-mixin cover;
}
.overlay {
composes: linkOverlay from 'Styles/Mixins/linkOverlay.css';
@add-mixin linkOverlay;
padding: 10px;
}

@ -5,7 +5,7 @@
}
.name {
composes: truncate from 'Styles/Mixins/truncate.css';
@add-mixin truncate;
margin-bottom: 20px;
font-weight: 300;

@ -7,11 +7,11 @@
}
.underlay {
composes: cover from 'Styles/Mixins/cover.css';
@add-mixin cover;
}
.overlay {
composes: linkOverlay from 'Styles/Mixins/linkOverlay.css';
@add-mixin linkOverlay;
padding: 10px;
}

@ -5,7 +5,7 @@
}
.name {
composes: truncate from 'Styles/Mixins/truncate.css';
@add-mixin truncate;
margin-bottom: 20px;
font-weight: 300;

@ -7,11 +7,11 @@
}
.underlay {
composes: cover from 'Styles/Mixins/cover.css';
@add-mixin cover;
}
.overlay {
composes: linkOverlay from 'Styles/Mixins/linkOverlay.css';
@add-mixin linkOverlay;
padding: 10px;
}

@ -5,7 +5,7 @@
}
.name {
composes: truncate from 'Styles/Mixins/truncate.css';
@add-mixin truncate;
margin-bottom: 20px;
font-weight: 300;

@ -5,7 +5,7 @@
}
.name {
composes: truncate from 'Styles/Mixins/truncate.css';
@add-mixin truncate;
margin-bottom: 20px;
font-weight: 300;

@ -5,7 +5,7 @@
}
.name {
composes: truncate from 'Styles/Mixins/truncate.css';
@add-mixin truncate;
margin-bottom: 20px;
font-weight: 300;

@ -25,25 +25,23 @@
}
.bar {
top: 6px;
top: 9px;
margin: 0 5px;
height: 10px;
border: 1px solid $sliderAccentColor;
border-radius: 4px;
height: 3px;
background-color: $sliderAccentColor;
box-shadow: 0 0 0 #000;
&:nth-child(odd) {
background-color: $white;
background-color: #ddd;
}
}
.handle {
top: 1px;
z-index: 0 !important;
width: 20px;
height: 20px;
border: 1px solid $sliderAccentColor;
width: 18px;
height: 18px;
border: 3px solid $sliderAccentColor;
border-radius: 50%;
background-color: $white;
text-align: center;

@ -1,4 +1,4 @@
.cover {
@define-mixin cover {
position: absolute;
top: 0;
left: 0;

@ -1,5 +1,5 @@
.linkOverlay {
composes: cover from 'Styles/Mixins/cover.css';
@define-mixin linkOverlay {
@add-mixin cover;
pointer-events: none;
user-select: none;

@ -1,17 +1,17 @@
.scrollbar {
@define-mixin scrollbar {
&::-webkit-scrollbar {
width: 6px;
height: 6px;
}
}
.scrollbarTrack {
@define-mixin scrollbarTrack {
&&::-webkit-scrollbar-track {
background-color: transparent;
}
}
.scrollbarThumb {
@define-mixin scrollbarThumb {
&::-webkit-scrollbar-thumb {
min-height: 50px;
border: 1px solid transparent;

@ -10,7 +10,7 @@
* occur.
*/
.truncate {
@define-mixin truncate {
overflow: hidden !important;
max-width: 100%; /* 1 */
text-overflow: ellipsis !important;

@ -20,7 +20,7 @@ import FilterMenu from 'Components/Menu/FilterMenu';
import MenuContent from 'Components/Menu/MenuContent';
import FilterMenuItem from 'Components/Menu/FilterMenuItem';
import ConfirmModal from 'Components/Modal/ConfirmModal';
import CutoffUnmetRow from './CutoffUnmetRow';
import CutoffUnmetRowConnector from './CutoffUnmetRowConnector';
class CutoffUnmet extends Component {
@ -219,7 +219,7 @@ class CutoffUnmet extends Component {
{
items.map((item) => {
return (
<CutoffUnmetRow
<CutoffUnmetRowConnector
key={item.id}
isSelected={selectedState[item.id]}
columns={columns}

@ -0,0 +1,17 @@
import { connect } from 'react-redux';
import { createSelector } from 'reselect';
import createArtistSelector from 'Store/Selectors/createArtistSelector';
import CutoffUnmetRow from './CutoffUnmetRow';
function createMapStateToProps() {
return createSelector(
createArtistSelector(),
(artist) => {
return {
artist
};
}
);
}
export default connect(createMapStateToProps)(CutoffUnmetRow);

@ -21,7 +21,7 @@ import MenuContent from 'Components/Menu/MenuContent';
import FilterMenuItem from 'Components/Menu/FilterMenuItem';
import ConfirmModal from 'Components/Modal/ConfirmModal';
import InteractiveImportModal from 'InteractiveImport/InteractiveImportModal';
import MissingRow from './MissingRow';
import MissingRowConnector from './MissingRowConnector';
class Missing extends Component {
@ -236,7 +236,7 @@ class Missing extends Component {
{
items.map((item) => {
return (
<MissingRow
<MissingRowConnector
key={item.id}
isSelected={selectedState[item.id]}
columns={columns}

@ -0,0 +1,17 @@
import { connect } from 'react-redux';
import { createSelector } from 'reselect';
import createArtistSelector from 'Store/Selectors/createArtistSelector';
import MissingRow from './MissingRow';
function createMapStateToProps() {
return createSelector(
createArtistSelector(),
(artist) => {
return {
artist
};
}
);
}
export default connect(createMapStateToProps)(MissingRow);

@ -48,8 +48,8 @@
</head>
<body>
<div id="root" class="root">
</div>
<div id="modal-root"></div>
<div id="root" class="root"></div>
</body>
<script type="text/javascript">

@ -13,94 +13,97 @@
"author": "Team Lidarr",
"license": "GPL-3.0",
"readmeFilename": "readme.md",
"dependencies": {
"autoprefixer": "6.3.6",
"babel-core": "6.9.0",
"babel-eslint": "7.1.0",
"babel-loader": "6.2.4",
"babel-plugin-transform-class-properties": "6.16.0",
"dependencies": {
"autoprefixer": "7.1.4",
"babel-core": "6.26.0",
"babel-eslint": "8.0.1",
"babel-loader": "7.1.2",
"babel-plugin-transform-class-properties": "6.24.1",
"babel-preset-decorators-legacy": "1.0.0",
"babel-preset-es2015": "6.9.0",
"babel-preset-react": "6.22.0",
"babel-preset-stage-2": "6.5.0",
"babel-preset-es2015": "6.24.1",
"babel-preset-react": "6.24.1",
"babel-preset-stage-2": "6.24.1",
"classnames": "2.2.5",
"clipboard": "1.7.1",
"css-loader": "0.23.1",
"del": "2.2.0",
"create-react-class": "^15.6.2",
"css-loader": "0.28.7",
"del": "3.0.0",
"element-class": "0.2.2",
"esformatter": "0.9.3",
"eslint": "2.10.2",
"eslint-loader": "1.3.0",
"eslint-plugin-filenames": "1.0.0",
"eslint-plugin-react": "5.2.2",
"extract-text-webpack-plugin": "1.0.1",
"file-loader": "0.9.0",
"filesize": "3.5.4",
"esformatter": "0.10.0",
"eslint": "4.7.2",
"eslint-loader": "1.9.0",
"eslint-plugin-filenames": "1.2.0",
"eslint-plugin-react": "7.4.0",
"extract-text-webpack-plugin": "3.0.0",
"file-loader": "0.11.2",
"filesize": "3.5.10",
"gulp": "3.9.1",
"gulp-cached": "1.1.0",
"gulp-clean-css": "3.3.1",
"gulp-concat": "2.6.0",
"gulp-cached": "1.1.1",
"gulp-clean-css": "3.9.0",
"gulp-concat": "2.6.1",
"gulp-declare": "0.3.0",
"gulp-livereload": "3.8.1",
"gulp-postcss": "6.1.1",
"gulp-postcss": "7.0.0",
"gulp-print": "2.0.1",
"gulp-sourcemaps": "1.6.0",
"gulp-sourcemaps": "2.6.1",
"gulp-stripbom": "1.0.4",
"gulp-util": "3.0.7",
"gulp-watch": "4.3.5",
"gulp-util": "3.0.8",
"gulp-watch": "4.3.11",
"gulp-wrap": "0.13.0",
"history": "4.6.3",
"history": "4.7.2",
"jdu": "1.0.0",
"jquery": "2.2.4",
"loader-utils": "^1.1.0",
"lodash": "4.17.4",
"mobile-detect": "1.3.6",
"moment": "2.17.1",
"mousetrap": "1.6.0",
"normalize.css": "5.0.0",
"postcss-loader": "0.9.1",
"postcss-nested": "1.0.0",
"postcss-simple-vars": "3.0.0",
"prop-types": "15.5.10",
"query-string": "https://registry.npmjs.org/query-string/-/query-string-4.2.2.tgz",
"raven-js": "3.17.0",
"raven-for-redux": "1.0.0",
"react": "15.6.1",
"react-addons-shallow-compare": "15.6.0",
"mobile-detect": "1.3.7",
"moment": "2.18.1",
"mousetrap": "1.6.1",
"normalize.css": "7.0.0",
"postcss-loader": "2.0.6",
"postcss-mixins": "6.1.1",
"postcss-nested": "2.1.2",
"postcss-simple-vars": "4.1.0",
"prop-types": "15.6.0",
"query-string": "5.0.0",
"react": "15.6.0",
"react-addons-shallow-compare": "15.6.2",
"react-async-script": "0.9.1",
"react-autosuggest": "9.3.0",
"react-autosuggest": "9.3.2",
"react-custom-scrollbars": "4.1.2",
"react-dnd": "2.4.0",
"react-dnd-html5-backend": "2.4.1",
"react-dnd": "2.5.3",
"react-dnd-html5-backend": "2.5.3",
"react-document-title": "2.0.3",
"react-dom": "15.6.1",
"react-google-recaptcha": "0.9.6",
"react-dom": "15.6.0",
"react-google-recaptcha": "0.9.7",
"react-lazyload": "2.2.7",
"react-measure": "1.4.7",
"react-portal": "3.1.0",
"react-redux": "5.0.5",
"react-router-dom": "4.1.1",
"react-redux": "5.0.6",
"react-router-dom": "4.2.2",
"react-router-redux": "5.0.0-alpha.6",
"react-slider": "0.8.0",
"react-slider": "0.9.0",
"react-tabs": "1.1.0",
"react-tag-autocomplete": "5.4.0",
"react-tag-autocomplete": "5.4.1",
"react-tether": "0.5.7",
"react-virtualized": "9.8.0",
"redux": "3.7.0",
"redux-actions": "2.0.3",
"react-virtualized": "9.10.1",
"redux": "3.7.2",
"redux-actions": "2.2.1",
"redux-batched-actions": "0.2.0",
"redux-localstorage": "0.4.1",
"redux-raven-middleware": "1.2.0",
"redux-thunk": "2.2.0",
"require-nocache": "1.0.0",
"reselect": "3.0.1",
"run-sequence": "1.2.0",
"run-sequence": "2.2.0",
"signalr": "2.2.2",
"streamqueue": "1.1.1",
"style-loader": "0.13.1",
"stylelint": "7.3.1",
"stylelint-order": "0.6.0",
"tar.gz": "1.0.3",
"url-loader": "0.5.7",
"webpack": "1.13.1",
"webpack-stream": "2.1.1"
}
}
"style-loader": "^0.18.2",
"stylelint": "8.1.1",
"stylelint-order": "0.7.0",
"tar.gz": "1.0.5",
"url-loader": "0.5.9",
"webpack": "3.6.0",
"webpack-stream": "^4.0.0"
},
"main": "index.js"
}

@ -30,13 +30,23 @@ namespace Lidarr.Api.V3.History
Post["/failed"] = x => MarkAsFailed();
}
protected HistoryResource MapToResource(NzbDrone.Core.History.History model)
protected HistoryResource MapToResource(NzbDrone.Core.History.History model, bool includeArtist, bool includeAlbum, bool includeTrack)
{
var resource = model.ToResource();
resource.Artist = model.Artist.ToResource();
resource.Album = model.Album.ToResource();
resource.Track = model.Track.ToResource();
if (includeArtist)
{
resource.Artist = model.Artist.ToResource();
}
if (includeAlbum)
{
resource.Album = model.Album.ToResource();
}
if (includeTrack)
{
resource.Track = model.Track.ToResource();
}
if (model.Artist != null)
{
@ -52,6 +62,9 @@ namespace Lidarr.Api.V3.History
private PagingResource<HistoryResource> GetHistory(PagingResource<HistoryResource> pagingResource)
{
var pagingSpec = pagingResource.MapToPagingSpec<HistoryResource, NzbDrone.Core.History.History>("date", SortDirection.Descending);
var includeArtist = Request.GetBooleanQueryParameter("includeArtist");
var includeAlbum = Request.GetBooleanQueryParameter("includeAlbum");
var includeTrack = Request.GetBooleanQueryParameter("includeTrack");
if (pagingResource.FilterKey == "eventType")
{
@ -65,7 +78,7 @@ namespace Lidarr.Api.V3.History
pagingSpec.FilterExpression = h => h.AlbumId == albumId;
}
return ApplyToPage(_historyService.Paged, pagingSpec, MapToResource);
return ApplyToPage(_historyService.Paged, pagingSpec, h => MapToResource(h, includeArtist, includeAlbum, includeTrack));
}
private Response MarkAsFailed()

@ -71,7 +71,7 @@
<Private>True</Private>
</Reference>
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.4.4.3\lib\net40\NLog.dll</HintPath>
<HintPath>..\packages\NLog.4.4.12\lib\net45\NLog.dll</HintPath>
</Reference>
<Reference Include="NodaTime, Version=1.3.0.0, Culture=neutral, PublicKeyToken=4226afe0d9b296d1, processorArchitecture=MSIL">
<HintPath>..\packages\Ical.Net.2.2.32\lib\net40\NodaTime.dll</HintPath>

@ -30,7 +30,7 @@ namespace Lidarr.Api.V3.Queue
{
var pagingSpec = pagingResource.MapToPagingSpec<QueueResource, NzbDrone.Core.Queue.Queue>("timeleft", SortDirection.Ascending);
var includeSeries = Request.GetBooleanQueryParameter("includeSeries");
var includeEpisode = Request.GetBooleanQueryParameter("includeEpisode", true);
var includeEpisode = Request.GetBooleanQueryParameter("includeEpisode");
return ApplyToPage(GetQueue, pagingSpec, (q) => MapToResource(q, includeSeries, includeEpisode));
}

@ -6,6 +6,7 @@ using NzbDrone.Core.ArtistStats;
using NzbDrone.SignalR;
using Lidarr.Api.V3.Albums;
using Lidarr.Http;
using Lidarr.Http.Extensions;
namespace Lidarr.Api.V3.Wanted
{
@ -35,6 +36,9 @@ namespace Lidarr.Api.V3.Wanted
SortDirection = pagingResource.SortDirection
};
var includeArtist = Request.GetBooleanQueryParameter("includeArtist");
var includeTrackFile = Request.GetBooleanQueryParameter("includeTrackFile");
if (pagingResource.FilterKey == "monitored" && pagingResource.FilterValue == "false")
{
pagingSpec.FilterExpression = v => v.Monitored == false || v.Artist.Monitored == false;
@ -44,7 +48,7 @@ namespace Lidarr.Api.V3.Wanted
pagingSpec.FilterExpression = v => v.Monitored == true && v.Artist.Monitored == true;
}
//var resource = ApplyToPage(_episodeCutoffService.EpisodesWhereCutoffUnmet, pagingSpec, v => MapToResource(v, true));
//var resource = ApplyToPage(_episodeCutoffService.EpisodesWhereCutoffUnmet, pagingSpec, v => MapToResource(v, includeSeries, includeEpisodeFile));
return null;
//return resource;
}

@ -5,6 +5,7 @@ using NzbDrone.Core.ArtistStats;
using NzbDrone.SignalR;
using Lidarr.Api.V3.Albums;
using Lidarr.Http;
using Lidarr.Http.Extensions;
namespace Lidarr.Api.V3.Wanted
{
@ -30,6 +31,8 @@ namespace Lidarr.Api.V3.Wanted
SortDirection = pagingResource.SortDirection
};
var includeArtist = Request.GetBooleanQueryParameter("includeSeries");
if (pagingResource.FilterKey == "monitored" && pagingResource.FilterValue == "false")
{
pagingSpec.FilterExpression = v => v.Monitored == false || v.Artist.Monitored == false;
@ -39,7 +42,7 @@ namespace Lidarr.Api.V3.Wanted
pagingSpec.FilterExpression = v => v.Monitored == true && v.Artist.Monitored == true;
}
var resource = ApplyToPage(_albumService.AlbumsWithoutFiles, pagingSpec, v => MapToResource(v, true));
var resource = ApplyToPage(_albumService.AlbumsWithoutFiles, pagingSpec, v => MapToResource(v, includeArtist));
return resource;
}

@ -6,5 +6,5 @@
<package id="Nancy.Authentication.Basic" version="1.4.1" targetFramework="net461" />
<package id="Nancy.Authentication.Forms" version="1.4.1" targetFramework="net461" />
<package id="Newtonsoft.Json" version="9.0.1" targetFramework="net461" />
<package id="NLog" version="4.4.3" targetFramework="net461" />
<package id="NLog" version="4.4.12" targetFramework="net461" />
</packages>

@ -54,7 +54,7 @@
<Private>True</Private>
</Reference>
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.4.4.3\lib\net40\NLog.dll</HintPath>
<HintPath>..\packages\NLog.4.4.12\lib\net45\NLog.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />

@ -5,5 +5,5 @@
<package id="Nancy.Authentication.Basic" version="1.4.1" targetFramework="net461" />
<package id="Nancy.Authentication.Forms" version="1.4.1" targetFramework="net461" />
<package id="Newtonsoft.Json" version="9.0.1" targetFramework="net461" />
<package id="NLog" version="4.4.3" targetFramework="net461" />
<package id="NLog" version="4.4.12" targetFramework="net461" />
</packages>

@ -52,7 +52,7 @@
</PropertyGroup>
<ItemGroup>
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.4.4.3\lib\net40\NLog.dll</HintPath>
<HintPath>..\packages\NLog.4.4.12\lib\net40\NLog.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="NLog" version="4.4.3" targetFramework="net40" />
<package id="NLog" version="4.4.12" targetFramework="net40" />
</packages>

@ -53,7 +53,7 @@
<HintPath>..\packages\Moq.4.0.10827\lib\NET40\Moq.dll</HintPath>
</Reference>
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.4.4.3\lib\net45\NLog.dll</HintPath>
<HintPath>..\packages\NLog.4.4.12\lib\net45\NLog.dll</HintPath>
</Reference>
<Reference Include="nunit.framework, Version=3.6.0.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL">
<HintPath>..\packages\NUnit.3.6.0\lib\net45\nunit.framework.dll</HintPath>

@ -3,6 +3,6 @@
<package id="FluentAssertions" version="4.19.0" targetFramework="net461" />
<package id="Moq" version="4.0.10827" targetFramework="net461" />
<package id="NBuilder" version="4.0.0" targetFramework="net461" />
<package id="NLog" version="4.4.3" targetFramework="net461" />
<package id="NLog" version="4.4.12" targetFramework="net461" />
<package id="NUnit" version="3.6.0" targetFramework="net461" />
</packages>

@ -48,7 +48,7 @@
<HintPath>..\packages\FluentAssertions.4.19.0\lib\net45\FluentAssertions.Core.dll</HintPath>
</Reference>
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.4.4.3\lib\net45\NLog.dll</HintPath>
<HintPath>..\packages\NLog.4.4.12\lib\net45\NLog.dll</HintPath>
</Reference>
<Reference Include="nunit.framework, Version=3.6.0.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL">
<HintPath>..\packages\NUnit.3.6.0\lib\net45\nunit.framework.dll</HintPath>

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="FluentAssertions" version="4.19.0" targetFramework="net461" />
<package id="NLog" version="4.4.3" targetFramework="net461" />
<package id="NLog" version="4.4.12" targetFramework="net461" />
<package id="NUnit" version="3.6.0" targetFramework="net461" />
<package id="Selenium.Support" version="3.2.0" targetFramework="net461" />
<package id="Selenium.WebDriver" version="3.2.0" targetFramework="net461" />

@ -50,7 +50,7 @@
<HintPath>..\packages\Moq.4.0.10827\lib\NET40\Moq.dll</HintPath>
</Reference>
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.4.4.3\lib\net45\NLog.dll</HintPath>
<HintPath>..\packages\NLog.4.4.12\lib\net45\NLog.dll</HintPath>
</Reference>
<Reference Include="nunit.framework, Version=3.6.0.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL">
<HintPath>..\packages\NUnit.3.6.0\lib\net45\nunit.framework.dll</HintPath>

@ -2,6 +2,6 @@
<packages>
<package id="FluentAssertions" version="4.19.0" targetFramework="net461" />
<package id="Moq" version="4.0.10827" targetFramework="net461" />
<package id="NLog" version="4.4.3" targetFramework="net461" />
<package id="NLog" version="4.4.12" targetFramework="net461" />
<package id="NUnit" version="3.6.0" targetFramework="net461" />
</packages>

@ -1,4 +1,4 @@
using System;
using System;
using System.Security.AccessControl;
using System.Security.Principal;
using NLog;
@ -18,7 +18,10 @@ namespace NzbDrone.Common.EnvironmentInfo
private readonly IDiskProvider _diskProvider;
private readonly Logger _logger;
public AppFolderFactory(IAppFolderInfo appFolderInfo, IDiskProvider diskProvider)
public AppFolderFactory(IAppFolderInfo appFolderInfo,
IStartupContext startupContext,
IDiskProvider diskProvider,
IDiskTransferService diskTransferService)
{
_appFolderInfo = appFolderInfo;
_diskProvider = diskProvider;

@ -48,7 +48,7 @@
<HintPath>..\packages\Newtonsoft.Json.9.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
</Reference>
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.4.4.3\lib\net45\NLog.dll</HintPath>
<HintPath>..\packages\NLog.4.4.12\lib\net45\NLog.dll</HintPath>
</Reference>
<Reference Include="Org.Mentalis, Version=1.0.0.1, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\DotNet4.SocksProxy.1.3.4.0\lib\net40\Org.Mentalis.dll</HintPath>

@ -3,6 +3,6 @@
<package id="DotNet4.SocksProxy" version="1.3.4.0" targetFramework="net461" />
<package id="ICSharpCode.SharpZipLib.Patched" version="0.86.5" targetFramework="net461" />
<package id="Newtonsoft.Json" version="9.0.1" targetFramework="net461" />
<package id="NLog" version="4.4.3" targetFramework="net461" />
<package id="NLog" version="4.4.12" targetFramework="net461" />
<package id="SharpRaven" version="2.2.0" targetFramework="net461" />
</packages>

@ -78,7 +78,7 @@
<HintPath>..\packages\Newtonsoft.Json.9.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
</Reference>
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.4.4.3\lib\net45\NLog.dll</HintPath>
<HintPath>..\packages\NLog.4.4.12\lib\net45\NLog.dll</HintPath>
</Reference>
<Reference Include="Owin, Version=1.0.0.0, Culture=neutral, PublicKeyToken=f0ebd12fd5e55cc5, processorArchitecture=MSIL">
<HintPath>..\packages\Owin.1.0\lib\net40\Owin.dll</HintPath>

@ -3,6 +3,6 @@
<package id="Microsoft.Owin" version="3.1.0" targetFramework="net461" />
<package id="Microsoft.Owin.Hosting" version="3.1.0" targetFramework="net461" />
<package id="Newtonsoft.Json" version="9.0.1" targetFramework="net461" />
<package id="NLog" version="4.4.3" targetFramework="net461" />
<package id="NLog" version="4.4.12" targetFramework="net461" />
<package id="Owin" version="1.0" targetFramework="net461" />
</packages>

@ -1,4 +1,4 @@
using System;
using System;
using NUnit.Framework;
using NzbDrone.Common.EnvironmentInfo;
using NzbDrone.Core.HealthCheck.Checks;
@ -18,11 +18,13 @@ namespace NzbDrone.Core.Test.HealthCheck.Checks
.Returns(new Version(version));
}
[TestCase("3.10")]
[TestCase("4.0.0.0")]
[TestCase("4.2")]
[TestCase("4.6")]
[TestCase("4.4.2")]
[TestCase("4.6")]
[TestCase("4.8")]
[TestCase("5.0")]
[TestCase("5.2")]
[TestCase("5.4")]
public void should_return_ok(string version)
{
GivenOutput(version);
@ -38,6 +40,9 @@ namespace NzbDrone.Core.Test.HealthCheck.Checks
[TestCase("3.2.7")]
[TestCase("3.6.1")]
[TestCase("3.8")]
[TestCase("3.10")]
[TestCase("4.0.0.0")]
[TestCase("4.2")]
public void should_return_warning(string version)
{
GivenOutput(version);

@ -79,7 +79,7 @@
<HintPath>..\packages\Newtonsoft.Json.9.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
</Reference>
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.4.4.3\lib\net45\NLog.dll</HintPath>
<HintPath>..\packages\NLog.4.4.12\lib\net45\NLog.dll</HintPath>
</Reference>
<Reference Include="nunit.framework, Version=3.6.0.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL">
<HintPath>..\packages\NUnit.3.6.0\lib\net45\nunit.framework.dll</HintPath>

@ -10,7 +10,7 @@
<package id="Moq" version="4.0.10827" targetFramework="net461" />
<package id="NBuilder" version="4.0.0" targetFramework="net461" />
<package id="Newtonsoft.Json" version="9.0.1" targetFramework="net461" />
<package id="NLog" version="4.4.3" targetFramework="net461" />
<package id="NLog" version="4.4.12" targetFramework="net461" />
<package id="NUnit" version="3.6.0" targetFramework="net461" />
<package id="NUnit3TestAdapter" version="3.7.0" targetFramework="net461" />
<package id="Prowlin" version="0.9.4456.26422" targetFramework="net461" />

@ -1,4 +1,4 @@
using System;
using System;
using System.Linq;
using System.Reflection;
using NLog;
@ -26,21 +26,15 @@ namespace NzbDrone.Core.HealthCheck.Checks
var monoVersion = _platformInfo.Version;
if (monoVersion == new Version("3.4.0") && HasMonoBug18599())
{
_logger.Debug("Mono version 3.4.0, checking for Mono bug #18599 returned positive.");
return new HealthCheck(GetType(), HealthCheckResult.Error, "You are running an old and unsupported version of Mono with a known bug. You should upgrade to a higher version");
}
if (monoVersion == new Version("4.4.0") || monoVersion == new Version("4.4.1"))
{
_logger.Debug("Mono version {0}", monoVersion);
return new HealthCheck(GetType(), HealthCheckResult.Error, $"Your Mono version {monoVersion} has a bug that causes issues connecting to indexers/download clients. You should upgrade to a higher version");
return new HealthCheck(GetType(), HealthCheckResult.Error, $"Your Mono version {monoVersion} has a bug that causes issues connecting to indexers/download clients. You should upgrade to a higher version");
}
if (monoVersion >= new Version("3.10"))
if (monoVersion >= new Version("4.4"))
{
_logger.Debug("Mono version is 3.10 or better: {0}", monoVersion);
_logger.Debug("Mono version is 4.6 or better: {0}", monoVersion);
return new HealthCheck(GetType());
}
@ -51,33 +45,5 @@ namespace NzbDrone.Core.HealthCheck.Checks
public override bool CheckOnSchedule => false;
private bool HasMonoBug18599()
{
_logger.Debug("mono version 3.4.0, checking for mono bug #18599.");
var numberFormatterType = Type.GetType("System.NumberFormatter");
if (numberFormatterType == null)
{
_logger.Debug("Couldn't find System.NumberFormatter. Aborting test.");
return false;
}
var fieldInfo = numberFormatterType.GetField("userFormatProvider",
BindingFlags.Static | BindingFlags.NonPublic);
if (fieldInfo == null)
{
_logger.Debug("userFormatProvider field not found, version likely preceeds the official v3.4.0.");
return false;
}
if (fieldInfo.GetCustomAttributes(false).Any(v => v is ThreadStaticAttribute))
{
_logger.Debug("userFormatProvider field doesn't contain the ThreadStatic Attribute, version is affected by the critical bug #18599.");
return true;
}
return false;
}
}
}
}

@ -81,7 +81,7 @@
<HintPath>..\packages\Newtonsoft.Json.9.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
</Reference>
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.4.4.3\lib\net45\NLog.dll</HintPath>
<HintPath>..\packages\NLog.4.4.12\lib\net45\NLog.dll</HintPath>
</Reference>
<Reference Include="OAuth, Version=1.0.0.0, Culture=neutral, PublicKeyToken=75b3c62967edc2a2, processorArchitecture=MSIL">
<HintPath>..\packages\OAuth.1.0.3\lib\net40\OAuth.dll</HintPath>

@ -167,7 +167,7 @@ namespace NzbDrone.Core.Update
throw new UpdateFailedException("Update Script: '{0}' does not exist", scriptPath);
}
_logger.Info("Removing NzbDrone.Update");
_logger.Info("Removing Lidarr.Update");
_diskProvider.DeleteFolder(_appFolderInfo.GetUpdateClientFolder(), true);
_logger.ProgressInfo("Starting update script: {0}", _configFileProvider.UpdateScriptPath);

@ -5,7 +5,7 @@
<package id="FluentValidation" version="6.2.1.0" targetFramework="net461" />
<package id="ImageResizer" version="3.4.3" targetFramework="net461" />
<package id="Newtonsoft.Json" version="9.0.1" targetFramework="net461" />
<package id="NLog" version="4.4.3" targetFramework="net461" />
<package id="NLog" version="4.4.12" targetFramework="net461" />
<package id="OAuth" version="1.0.3" targetFramework="net461" />
<package id="Prowlin" version="0.9.4456.26422" targetFramework="net461" />
<package id="RestSharp" version="105.2.3" targetFramework="net461" />

@ -93,7 +93,7 @@
<HintPath>..\packages\Newtonsoft.Json.9.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
</Reference>
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.4.4.3\lib\net45\NLog.dll</HintPath>
<HintPath>..\packages\NLog.4.4.12\lib\net45\NLog.dll</HintPath>
</Reference>
<Reference Include="Owin, Version=1.0.0.0, Culture=neutral, PublicKeyToken=f0ebd12fd5e55cc5, processorArchitecture=MSIL">
<HintPath>..\packages\Owin.1.0\lib\net40\Owin.dll</HintPath>

@ -13,6 +13,6 @@
<package id="Nancy" version="1.4.4" targetFramework="net461" />
<package id="Nancy.Owin" version="1.4.1" targetFramework="net461" />
<package id="Newtonsoft.Json" version="9.0.1" targetFramework="net461" />
<package id="NLog" version="4.4.3" targetFramework="net461" />
<package id="NLog" version="4.4.12" targetFramework="net461" />
<package id="Owin" version="1.0" targetFramework="net461" />
</packages>

@ -75,7 +75,7 @@
<HintPath>..\packages\Newtonsoft.Json.9.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
</Reference>
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.4.4.3\lib\net45\NLog.dll</HintPath>
<HintPath>..\packages\NLog.4.4.12\lib\net45\NLog.dll</HintPath>
</Reference>
<Reference Include="nunit.framework, Version=3.6.0.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL">
<HintPath>..\packages\NUnit.3.6.0\lib\net45\nunit.framework.dll</HintPath>

@ -10,7 +10,7 @@
<package id="Nancy" version="1.4.4" targetFramework="net461" />
<package id="Nancy.Owin" version="1.4.1" targetFramework="net461" />
<package id="Newtonsoft.Json" version="9.0.1" targetFramework="net461" />
<package id="NLog" version="4.4.3" targetFramework="net461" />
<package id="NLog" version="4.4.12" targetFramework="net461" />
<package id="NUnit" version="3.6.0" targetFramework="net461" />
<package id="Owin" version="1.0" targetFramework="net461" />
<package id="RestSharp" version="105.2.3" targetFramework="net461" />

@ -56,7 +56,7 @@
</PropertyGroup>
<ItemGroup>
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.4.4.3\lib\net45\NLog.dll</HintPath>
<HintPath>..\packages\NLog.4.4.12\lib\net45\NLog.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="NLog" version="4.4.3" targetFramework="net461" />
<package id="NLog" version="4.4.12" targetFramework="net461" />
</packages>

@ -65,7 +65,7 @@
<HintPath>..\packages\Newtonsoft.Json.9.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
</Reference>
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.4.4.3\lib\net45\NLog.dll</HintPath>
<HintPath>..\packages\NLog.4.4.12\lib\net45\NLog.dll</HintPath>
</Reference>
<Reference Include="nunit.framework, Version=3.6.0.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL">
<HintPath>..\packages\NUnit.3.6.0\lib\net45\nunit.framework.dll</HintPath>

@ -5,7 +5,7 @@
<package id="FluentValidation" version="6.2.1.0" targetFramework="net461" />
<package id="Moq" version="4.0.10827" targetFramework="net461" />
<package id="Newtonsoft.Json" version="9.0.1" targetFramework="net461" />
<package id="NLog" version="4.4.3" targetFramework="net461" />
<package id="NLog" version="4.4.12" targetFramework="net461" />
<package id="NUnit" version="3.6.0" targetFramework="net461" />
<package id="RestSharp" version="105.2.3" targetFramework="net461" />
<package id="Unity" version="2.1.505.2" targetFramework="net461" />

@ -52,7 +52,7 @@
<HintPath>..\packages\Moq.4.0.10827\lib\NET40\Moq.dll</HintPath>
</Reference>
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.4.4.3\lib\net45\NLog.dll</HintPath>
<HintPath>..\packages\NLog.4.4.12\lib\net45\NLog.dll</HintPath>
</Reference>
<Reference Include="nunit.framework, Version=3.6.0.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL">
<HintPath>..\packages\NUnit.3.6.0\lib\net45\nunit.framework.dll</HintPath>

@ -3,6 +3,6 @@
<package id="FluentAssertions" version="4.19.0" targetFramework="net461" />
<package id="Moq" version="4.0.10827" targetFramework="net461" />
<package id="NBuilder" version="4.0.0" targetFramework="net461" />
<package id="NLog" version="4.4.3" targetFramework="net461" />
<package id="NLog" version="4.4.12" targetFramework="net461" />
<package id="NUnit" version="3.6.0" targetFramework="net461" />
</packages>

@ -46,7 +46,7 @@
<HintPath>..\packages\Newtonsoft.Json.9.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
</Reference>
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.4.4.3\lib\net45\NLog.dll</HintPath>
<HintPath>..\packages\NLog.4.4.12\lib\net45\NLog.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Newtonsoft.Json" version="9.0.1" targetFramework="net461" />
<package id="NLog" version="4.4.3" targetFramework="net461" />
<package id="NLog" version="4.4.12" targetFramework="net461" />
</packages>

@ -57,7 +57,7 @@
</PropertyGroup>
<ItemGroup>
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.4.4.3\lib\net45\NLog.dll</HintPath>
<HintPath>..\packages\NLog.4.4.12\lib\net45\NLog.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="NLog" version="4.4.3" targetFramework="net461" />
<package id="NLog" version="4.4.12" targetFramework="net461" />
</packages>

@ -78,7 +78,7 @@
<HintPath>..\packages\Newtonsoft.Json.9.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
</Reference>
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.4.4.3\lib\net45\NLog.dll</HintPath>
<HintPath>..\packages\NLog.4.4.12\lib\net45\NLog.dll</HintPath>
</Reference>
<Reference Include="Owin, Version=1.0.0.0, Culture=neutral, PublicKeyToken=f0ebd12fd5e55cc5, processorArchitecture=MSIL">
<HintPath>..\packages\Owin.1.0\lib\net40\Owin.dll</HintPath>

@ -3,6 +3,6 @@
<package id="Microsoft.Owin" version="3.1.0" targetFramework="net461" />
<package id="Microsoft.Owin.Hosting" version="3.1.0" targetFramework="net461" />
<package id="Newtonsoft.Json" version="9.0.1" targetFramework="net461" />
<package id="NLog" version="4.4.3" targetFramework="net461" />
<package id="NLog" version="4.4.12" targetFramework="net461" />
<package id="Owin" version="1.0" targetFramework="net461" />
</packages>

File diff suppressed because it is too large Load Diff
Loading…
Cancel
Save