Commit 1bd04054 authored by Dannon Baker's avatar Dannon Baker
Browse files

Mixin to avoid duplication of dataset download url construction (could also...

Mixin to avoid duplication of dataset download url construction (could also just pass it as a prop, but this seemed like it might be useful)
parent a07e20d7
Loading
Loading
Loading
Loading
+3 −5
Original line number Diff line number Diff line
@@ -62,22 +62,20 @@
<script>
import { legacyNavigationMixin } from "components/plugins/legacyNavigation";
import { copy as sendToClipboard } from "utils/clipboard";
import { absPath, prependPath } from "utils/redirect";
import { absPath } from "utils/redirect";
import { downloadUrlMixin } from "./mixins.js";
import DatasetDownload from "./DatasetDownload";

export default {
    components: {
        DatasetDownload,
    },
    mixins: [legacyNavigationMixin],
    mixins: [legacyNavigationMixin, downloadUrlMixin],
    props: {
        item: { type: Object, required: true },
        showHighlight: { type: Boolean, default: false },
    },
    computed: {
        downloadUrl() {
            return prependPath(`api/datasets/${this.item.id}/display?to_ext=${this.item.extension}`);
        },
        showDownloads() {
            return !this.item.purged && ["ok", "failed_metadata", "error"].includes(this.item.state);
        },
+2 −3
Original line number Diff line number Diff line
@@ -36,15 +36,14 @@

<script>
import { prependPath } from "utils/redirect";
import { downloadUrlMixin } from "./mixins.js";

export default {
    mixins: [downloadUrlMixin],
    props: {
        item: { type: Object, required: true },
    },
    computed: {
        downloadUrl() {
            return prependPath(`api/datasets/${this.item.id}/display?to_ext=${this.item.extension}`);
        },
        hasMetaFiles() {
            return this.metaFiles && this.metaFiles.length > 0;
        },
+10 −0
Original line number Diff line number Diff line
import { prependPath } from "utils/redirect";

/* VueJS mixin with dataset downloadUrl */
export const downloadUrlMixin = {
    computed: {
        downloadUrl() {
            return prependPath(`api/datasets/${this.item.id}/display?to_ext=${this.item.extension}`);
        },
    },
};