map metaExtension in meta_resources in useMetaDetails

This commit is contained in:
svetlagasheva 2020-04-27 12:59:14 +03:00
parent 7fbb445b53
commit 9e701f0cc9

View file

@ -1,7 +1,7 @@
// Copyright (C) 2017-2020 Smart code 203358507
const React = require('react');
const { deepLinking, useModelState } = require('stremio/common');
const { CONSTANTS, deepLinking, useModelState } = require('stremio/common');
const initMetaDetailsState = () => ({
selected: null,
@ -12,10 +12,10 @@ const initMetaDetailsState = () => ({
const mapMetaDetailsStateWithCtx = (meta_details, ctx) => {
const selected = meta_details.selected;
const meta_resources = meta_details.meta_resources.map((meta_resource) => {
return {
request: meta_resource.request,
content: meta_resource.content.type === 'Ready' ?
{
return meta_resource.content.type === 'Ready' ?
{
request: meta_resource.request,
content: {
type: 'Ready',
content: {
...meta_resource.content.content,
@ -39,28 +39,35 @@ const mapMetaDetailsStateWithCtx = (meta_details, ctx) => {
metaTransportUrl: meta_resource.request.base,
metaItem: meta_resource.content.content
})
}))
}
}
:
meta_resource.content,
deepLinks: meta_details.selected !== null ?
deepLinking.withMetaResource({
metaResource: meta_resource,
type: meta_details.selected.meta_resource_ref.type_name,
id: meta_details.selected.meta_resource_ref.id,
videoId: meta_details.selected.streams_resource_ref !== null ? meta_details.selected.streams_resource_ref.id : null
})
:
null,
addon: ctx.profile.addons.reduce((result, addon) => {
if (addon.transportUrl === meta_resource.request.base) {
return addon;
}
})),
metaExtension: meta_resource.content.content.links.reduceRight((result, link) => {
if (link.category === CONSTANTS.META_LINK_CATEGORY) {
return link;
}
return result;
}, null)
};
return result;
}, null)
}
},
deepLinks: meta_details.selected !== null ?
deepLinking.withMetaResource({
metaResource: meta_resource,
type: meta_details.selected.meta_resource_ref.type_name,
id: meta_details.selected.meta_resource_ref.id,
videoId: meta_details.selected.streams_resource_ref !== null ? meta_details.selected.streams_resource_ref.id : null
})
:
null,
addon: ctx.profile.addons.reduce((result, addon) => {
if (addon.transportUrl === meta_resource.request.base) {
return addon;
}
return result;
}, null)
}
:
meta_resource;
});
const streams_resources = meta_details.streams_resources.map((stream_resource) => {
return stream_resource.content.type === 'Ready' ?