mirror of
https://github.com/Viren070/stremio-addon-manager.git
synced 2025-12-01 23:25:50 +01:00
support manifests responses with missing props
This commit is contained in:
@@ -81,6 +81,16 @@ function removeAddon(idx) {
|
|||||||
addons.value.splice(idx, 1)
|
addons.value.splice(idx, 1)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function getNestedObjectProperty(obj, path, defaultValue = null) {
|
||||||
|
try {
|
||||||
|
console.log('path', path, 'obj', obj, 'defaultValue', defaultValue)
|
||||||
|
return path.split('.').reduce((acc, part) => acc && acc[part], obj)
|
||||||
|
} catch (e) {
|
||||||
|
return defaultValue
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
@@ -102,8 +112,10 @@ function removeAddon(idx) {
|
|||||||
@start="dragging = true" @end="dragging = false">
|
@start="dragging = true" @end="dragging = false">
|
||||||
<template #item="{ element, index }">
|
<template #item="{ element, index }">
|
||||||
<AddonItem :name="element.manifest.name" :idx="index" :manifestURL="element.transportUrl"
|
<AddonItem :name="element.manifest.name" :idx="index" :manifestURL="element.transportUrl"
|
||||||
:logoURL="element.manifest.logo" :isDeletable="!element.flags.protected"
|
:logoURL="element.manifest.logo"
|
||||||
:isConfigurable="element.manifest.behaviorHints.configurable" @delete-addon="removeAddon" />
|
:isDeletable="!getNestedObjectProperty(element, 'flags.protected', false)"
|
||||||
|
:isConfigurable="getNestedObjectProperty(element, 'manifest.behaviorHints.configurable', false)"
|
||||||
|
@delete-addon="removeAddon" />
|
||||||
</template>
|
</template>
|
||||||
</draggable>
|
</draggable>
|
||||||
</fieldset>
|
</fieldset>
|
||||||
|
|||||||
Reference in New Issue
Block a user