Changeset 35439 for main/trunk


Ignore:
Timestamp:
2021-09-21T11:17:55+12:00 (3 years ago)
Author:
cstephen
Message:

Include edits in downloads

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

Legend:

Unmodified
Added
Removed
  • main/trunk/model-interfaces-dev/atea/korero-maori-asr/src/components/AudioUpload.vue

    r35433 r35439  
    193193
    194194                        try {
    195                             this.$store.commit("transcriptionAdd", tvm);
     195                            this.$store.commit("rawTranscriptionAdd", tvm);
    196196                        }
    197197                        catch (TranscriptionExistsError) {
  • main/trunk/model-interfaces-dev/atea/korero-maori-asr/src/components/TranscriptionItem.vue

    r35437 r35439  
    4242        <hr />
    4343
    44         <TranscriptionItemEditor :transcription="transcription" style="margin-bottom: 1em" />
     44        <TranscriptionItemEditor ref="editor" :transcription="transcription" style="margin-bottom: 1em" />
    4545
    4646        <button @click="toggleEditor" type="button" class="btn-primary theme-flat">
     
    9494import { mapState } from "vuex";
    9595import { saveAs } from "file-saver"
    96 import TranscriptionItemEditor, { getWords } from "./TranscriptionItemEditor.vue"
     96import TranscriptionItemEditor from "./TranscriptionItemEditor.vue"
    9797import { TranscriptionViewModel, PlaybackState } from "../main";
    9898import Util from "../js/Util"
     
    124124        },
    125125        remove() {
    126             this.$store.commit("transcriptionRemove", this.transcription.id);
     126            this.$store.commit("rawTranscriptionRemove", this.transcription.id);
    127127        },
    128128        downloadAsText() {
     
    134134        downloadAsJson() {
    135135            const fileName = buildDownloadableFileName(this.transcription.fileName, "json");
    136             const toDownload = (({ fileName, transcription, metadata }) => ({ fileName, transcription, metadata }))(this.transcription);
     136            const toDownload = (({ fileName, transcription }) => ({ fileName, transcription }))(this.transcription);
     137            toDownload.words = this.$refs.editor.words.map(w => (({ word, startTime, endTime }) => ({ word, startTime, endTime }))(w));
    137138
    138139            const blob = new Blob([ JSON.stringify(toDownload, null, 4) ], { type: "application/json;charset=utf-8" });
     
    141142        downloadAsWebvtt() {
    142143            const fileName = buildDownloadableFileName(this.transcription.fileName, "vtt");
    143             const toDownload = buildWebvttFileContents(this.transcription);
     144            const toDownload = buildWebvttFileContents(this.transcription, this.$refs.editor);
    144145
    145146            const blob = new Blob([ toDownload ], { type: "text/vtt;charset=utf-8" });
     
    168169 * @returns {String} The WebVTT content.
    169170 */
    170 function buildWebvttFileContents(transcription) {
     171function buildWebvttFileContents(transcription, editor) {
    171172    let contents = "WEBVTT Transcription of " + transcription.fileName + "\n\n";
    172173
    173     for (const word of getWords(transcription)) {
     174    for (const word of editor.words) {
    174175        const startTime = Util.formatSecondsTimeString(word.startTime, true);
    175176        const endTime = Util.formatSecondsTimeString(word.endTime, true);
  • main/trunk/model-interfaces-dev/atea/korero-maori-asr/src/components/TranscriptionItemEditor.vue

    r35437 r35439  
    1313            <li v-for="(word, index) in words" :key="word.id" class="word-container">
    1414                <input :size="word.word.length <= 1 ? 1 : word.word.length - 1" :ref="word.id"
    15                     class="editor-word" v-model="word.word" type="text"
     15                    class="editor-word" v-model="word.word" type="text" onpaste="return false;"
    1616                    @input="onEditorInput($event, index)" @focusout="onEditorFocusOut(index)" @keyup="onEditorKeyUp($event, index)" />
    1717                <span>&nbsp;</span>
  • main/trunk/model-interfaces-dev/atea/korero-maori-asr/src/js/TranscribeModule.js

    r35389 r35439  
    1212     *
    1313     * @param {String} char The character.
    14      * @param {Number} confidence The confidence that the character is corret. Smaller values are more confident.
     14     * @param {Number} confidence The confidence that the character is correct. Smaller values are more confident.
    1515     * @param {Number} start_time The timestamp in the audio at which this character is spoken.
    1616     */
  • main/trunk/model-interfaces-dev/atea/korero-maori-asr/src/main.js

    r35433 r35439  
    7878         * @param {TranscriptionViewModel} transcription The transcription's view model object.
    7979         */
    80         transcriptionAdd(state, transcription) {
     80        rawTranscriptionAdd(state, transcription) {
    8181            if (state.rawTranscriptions.has(transcription.id)) {
    82                 throw new Error("Transcription already exists");
     82                throw new TranscriptionExistsError("Cannot add the transcription because it already exists.");
    8383            }
    8484            state.rawTranscriptions.set(transcription.id, transcription);
     
    8888         * Removes a transcription from the store.
    8989         * @param {*} state The state of the store.
    90          * @param {String} id The UUID of the transcription.
     90         * @param {String} id The ID of the transcription.
    9191         */
    92         transcriptionRemove(state, id) {
     92        rawTranscriptionRemove(state, id) {
    9393            state.rawTranscriptions.delete(id);
    9494        },
  • main/trunk/model-interfaces-dev/atea/korero-maori-asr/src/styles/_material.scss

    r35437 r35439  
    9191    display: flex;
    9292    align-items: center;
     93    text-align: left;
    9394
    9495    background-color: var(--primary-bg-color);
Note: See TracChangeset for help on using the changeset viewer.