diff options
| author | Shpuld Shpludson <shp@cock.li> | 2019-12-02 12:20:25 +0000 |
|---|---|---|
| committer | Shpuld Shpludson <shp@cock.li> | 2019-12-02 12:20:25 +0000 |
| commit | 5096bff16cc680b7253c05a7ffa1d1c18da727a8 (patch) | |
| tree | 270df741e3c69cc8202d4d023928b9895ea8b874 /src/components/mrf_transparency_panel/mrf_transparency_panel.js | |
| parent | d3adffbefecb7029e5bc83048a933907c7317327 (diff) | |
| parent | fa38a41e42dbbbd5aa9d1aa2efb107d99ce8cd7d (diff) | |
Merge branch 'fix/mrf-js-errors' into 'develop'
fix "can't find property of undefined" errors in mrf transparency panel
See merge request pleroma/pleroma-fe!1008
Diffstat (limited to 'src/components/mrf_transparency_panel/mrf_transparency_panel.js')
| -rw-r--r-- | src/components/mrf_transparency_panel/mrf_transparency_panel.js | 31 |
1 files changed, 21 insertions, 10 deletions
diff --git a/src/components/mrf_transparency_panel/mrf_transparency_panel.js b/src/components/mrf_transparency_panel/mrf_transparency_panel.js index 20f8a08a..6a1baec8 100644 --- a/src/components/mrf_transparency_panel/mrf_transparency_panel.js +++ b/src/components/mrf_transparency_panel/mrf_transparency_panel.js @@ -1,16 +1,27 @@ import { mapState } from 'vuex' +import { get } from 'lodash' const MRFTransparencyPanel = { - computed: mapState({ - federationPolicy: state => state.instance.federationPolicy, - mrfPolicies: state => state.instance.federationPolicy.mrf_policies, - acceptInstances: state => state.instance.federationPolicy.mrf_simple.accept, - rejectInstances: state => state.instance.federationPolicy.mrf_simple.reject, - quarantineInstances: state => state.instance.federationPolicy.quarantined_instances, - ftlRemovalInstances: state => state.instance.federationPolicy.mrf_simple.federated_timeline_removal, - mediaNsfwInstances: state => state.instance.federationPolicy.mrf_simple.media_nsfw, - mediaRemovalInstances: state => state.instance.federationPolicy.mrf_simple.media_removal - }) + computed: { + ...mapState({ + federationPolicy: state => get(state, 'instance.federationPolicy'), + mrfPolicies: state => get(state, 'instance.federationPolicy.mrf_policies', []), + quarantineInstances: state => get(state, 'instance.federationPolicy.quarantined_instances', []), + acceptInstances: state => get(state, 'instance.federationPolicy.mrf_simple.accept', []), + rejectInstances: state => get(state, 'instance.federationPolicy.mrf_simple.reject', []), + ftlRemovalInstances: state => get(state, 'instance.federationPolicy.mrf_simple.federated_timeline_removal', []), + mediaNsfwInstances: state => get(state, 'instance.federationPolicy.mrf_simple.media_nsfw', []), + mediaRemovalInstances: state => get(state, 'instance.federationPolicy.mrf_simple.media_removal', []) + }), + hasInstanceSpecificPolicies () { + return this.quarantineInstances.length || + this.acceptInstances.length || + this.rejectInstances.length || + this.ftlRemovalInstances.length || + this.mediaNsfwInstances.length || + this.mediaRemovalInstances.length + } + } } export default MRFTransparencyPanel |
