M3U placeholder images to fetch properly from coldstore; Trial patch on spread operator intermittent issue on Queue

This commit is contained in:
James Barnsley
2020-12-16 21:24:47 +13:00
parent 69d99210c8
commit bacbe59b14
7 changed files with 143 additions and 91 deletions

View File

@ -118394,6 +118394,30 @@ var lastfmActions = __webpack_require__(/*! ../lastfm/actions.js */ "./src/js/se
var geniusActions = __webpack_require__(/*! ../genius/actions.js */ "./src/js/services/genius/actions.js");
var discogsActions = __webpack_require__(/*! ../discogs/actions.js */ "./src/js/services/discogs/actions.js");
/**
* Fetch the method of our Mopidy API that is being called, by string
*
* @param {String} call
* @param {Object} socket
*/
var getController = function getController(call, socket) {
var callParts = call.split('.');
var model = callParts[0];
var method = callParts[1];
var controller = null;
if (socket && socket[model]) {
if (method in socket[model] && socket[model][method]) {
controller = socket[model][method];
} else {
controller = socket[model];
}
}
return controller;
};
var MopidyMiddleware = function () {
var _this = this;
@ -118541,18 +118565,7 @@ var MopidyMiddleware = function () {
store.dispatch(uiActions.startLoading(loader_key, "mopidy_".concat(call)));
var doRequest = function doRequest() {
var callParts = call.split('.');
var model = callParts[0];
var method = callParts[1];
var controller = null;
if (socket && socket[model]) {
if (method in socket[model] && socket[model][method]) {
controller = socket[model][method];
} else {
controller = socket[model];
}
}
var controller = getController(call, socket);
if (controller) {
var timeout = setTimeout(function () {
@ -118569,17 +118582,18 @@ var MopidyMiddleware = function () {
reject(error);
});
} else {
// Controller (model.method) doesn't exist, or connection not established
store.dispatch(uiActions.stopLoading(loader_key));
console.warn('Mopidy request aborted. Either Mopidy is not connected or the request method is invalid. Check the request and your server settings.', {
call: call,
value: value
value: value,
socket: socket,
controller: controller
});
}
}; // Give a 5-second leeway for allowing Mopidy to connect, if it isn't already connected
if (socket) {
if (socket && store.getState().mopidy.connected) {
doRequest();
} else {
console.info('Mopidy not yet connected, waiting 2 seconds');
@ -119396,13 +119410,13 @@ var MopidyMiddleware = function () {
uri: action.uri
}).then(function (response) {
if (!response) return;
var playlist = _objectSpread(_objectSpread({}, Object(_util_format__WEBPACK_IMPORTED_MODULE_6__["formatPlaylist"])(response)), {}, {
uri: response.uri,
var playlist = Object(_util_format__WEBPACK_IMPORTED_MODULE_6__["formatPlaylist"])(_objectSpread(_objectSpread({
images: {}
}, response), {}, {
type: 'playlist',
provider: 'mopidy',
can_edit: true
});
}));
if (response.tracks) {
request(store, 'library.lookup', {
@ -119415,6 +119429,8 @@ var MopidyMiddleware = function () {
playlist.tracks = Object(_util_format__WEBPACK_IMPORTED_MODULE_6__["injectSortId"])(Object(_util_format__WEBPACK_IMPORTED_MODULE_6__["formatTracks"])(tracks));
store.dispatch(coreActions.itemLoaded(playlist));
});
} else {
store.dispatch(coreActions.itemLoaded(playlist));
}
});
break;
@ -119567,8 +119583,11 @@ var MopidyMiddleware = function () {
name: action.name,
uri_scheme: action.scheme
}).then(function (response) {
var playlist = _objectSpread(_objectSpread({}, Object(_util_format__WEBPACK_IMPORTED_MODULE_6__["formatPlaylist"])(response)), action);
var playlist = Object(_util_format__WEBPACK_IMPORTED_MODULE_6__["formatPlaylist"])(_objectSpread(_objectSpread(_objectSpread({}, response), action), {}, {
can_edit: true,
type: 'playlist',
provider: 'mopidy'
}));
store.dispatch(uiActions.createNotification({
content: Object(_locale__WEBPACK_IMPORTED_MODULE_4__["i18n"])('actions.created', {
name: Object(_locale__WEBPACK_IMPORTED_MODULE_4__["i18n"])('playlist.title')
@ -130474,8 +130493,16 @@ var getDependentUris = function getDependentUris(_ref2) {
_ref2$fullDependents = _ref2.fullDependents,
fullDependents = _ref2$fullDependents === void 0 ? [] : _ref2$fullDependents;
if (!item) return [];
var getUrisOfDependent = function getUrisOfDependent(dep) {
if (!dep.match(new RegExp('(.*)_uri(.*)'))) return [];
var uris = item[dep];
if (uris && Array.isArray(uris)) return uris;
return [];
};
return [].concat(_toConsumableArray(dependents), _toConsumableArray(fullDependents)).reduce(function (acc, dep) {
return [].concat(_toConsumableArray(acc), _toConsumableArray(dep.match(new RegExp('(.*)_uri(.*)')) ? item[dep] : []));
return [].concat(_toConsumableArray(acc), _toConsumableArray(getUrisOfDependent(dep)));
}, []);
};
/**
@ -133709,9 +133736,11 @@ var Playlist = /*#__PURE__*/function (_React$Component) {
loadItem = _this$props11.coreActions.loadItem,
uri = _this$props11.uri;
this.setWindowTitle();
loadItem(uri, {
full: true
});
setTimeout(function () {
return loadItem(uri, {
full: true
});
}, 1);
}
}]);

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -106,7 +106,7 @@
// Release details
// These are automatically injected to built HTML
var build = "1607846624";
var build = "1608106910";
var version = "3.55.4";
// Construct the script tag