Changeset 35384


Ignore:
Timestamp:
2021-09-14T11:13:37+12:00 (3 years ago)
Author:
davidb
Message:

Implement transcription text download

Location:
main/trunk/model-interfaces-dev/atea/korero-maori-asr
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • main/trunk/model-interfaces-dev/atea/korero-maori-asr/package-lock.json

    r35383 r35384  
    12961296      }
    12971297    },
     1298    "@types/file-saver": {
     1299      "version": "2.0.3",
     1300      "resolved": "https://registry.npmjs.org/@types/file-saver/-/file-saver-2.0.3.tgz",
     1301      "integrity": "sha512-MBIou8pd/41jkff7s97B47bc9+p0BszqqDJsO51yDm49uUxeKzrfuNl5fSLC6BpLEWKA8zlwyqALVmXrFwoBHQ==",
     1302      "dev": true
     1303    },
    12981304    "@types/glob": {
    12991305      "version": "7.1.4",
     
    58875893      }
    58885894    },
     5895    "file-saver": {
     5896      "version": "2.0.5",
     5897      "resolved": "https://registry.npmjs.org/file-saver/-/file-saver-2.0.5.tgz",
     5898      "integrity": "sha512-P9bmyZ3h/PRG+Nzga+rbdI4OEpNDzAVyy74uVO9ATgzLK6VtAsYybF/+TOCvrc0MO793d6+42lLyZTw7/ArVzA=="
     5899    },
    58895900    "filesize": {
    58905901      "version": "3.6.1",
  • main/trunk/model-interfaces-dev/atea/korero-maori-asr/package.json

    r35383 r35384  
    1010  "dependencies": {
    1111    "core-js": "^3.16.4",
     12    "file-saver": "^2.0.5",
    1213    "vue": "^3.0.0",
    1314    "vuex": "^4.0.2"
    1415  },
    1516  "devDependencies": {
     17    "@types/file-saver": "^2.0.3",
    1618    "@vue/cli-plugin-babel": "~4.5.0",
    1719    "@vue/cli-plugin-eslint": "~4.5.0",
  • main/trunk/model-interfaces-dev/atea/korero-maori-asr/src/components/TranscriptionItem.vue

    r35355 r35384  
    88
    99            <span>{{ translations.get("TranscriptionItem_FileName") }}: {{ transcription.fileName }}</span>
     10
     11            <button @click="downloadAsText" type="button">
     12                <span class="material-icons">download</span>
     13                <span>{{ translations.get("TranscriptionItem_DownloadAsText") }}</span>
     14            </button>
    1015
    1116            <button class="theme-error" @click="remove" type="button">
     
    3641    display: grid;
    3742    gap: 0.5em 0.5em;
    38     grid-template-columns: auto 1fr auto;
     43    grid-template-columns: auto 1fr auto auto;
    3944    align-items: center;
    4045
     
    5257<script>
    5358import { mapState } from "vuex";
     59import { saveAs } from "file-saver"
    5460import TranscriptionItemEditor from "./TranscriptionItemEditor.vue"
    5561import { TranscriptionViewModel } from "../main";
     
    8591            // Start our removal animation and give it some time to complete
    8692            Util.delay(550).then(() => this.$store.commit("transcriptionRemove", this.transcription.id));
     93        },
     94        downloadAsText() {
     95            const extensionIndex = this.transcription.fileName.lastIndexOf(".");
     96            let fileName = this.transcription.fileName.slice(0, extensionIndex);
     97            fileName += "_transcription.txt";
     98
     99            const blob = new Blob([ this.transcription.transcription ], { type: "text/plain;charset=utf-8" });
     100            saveAs(blob, fileName);
    87101        }
    88102    }
Note: See TracChangeset for help on using the changeset viewer.