@@ -65,8 +71,41 @@
import { parseText } from '@/utils/textParser';
export default {
- props: ['text', 'message_id', 'uxLocked', 'isLastMessage'],
- inject: ['requestDeleteMessage', 'getWebsocket', 'createPin', 'forkSceneInitiate', 'fixMessageContinuityErrors', 'autocompleteRequest', 'autocompleteInfoMessage', 'getMessageStyle', 'openWorldStateManager'],
+ // props: ['text', 'message_id', 'uxLocked', 'isLastMessage'],
+
+ props: {
+ text: {
+ type: String,
+ required: true
+ },
+ message_id: {
+ required: true
+ },
+ uxLocked: {
+ type: Boolean,
+ required: true
+ },
+ isLastMessage: {
+ type: Boolean,
+ required: true
+ },
+ editorRevisionsEnabled: {
+ type: Boolean,
+ default: false,
+ },
+ },
+ inject: [
+ 'requestDeleteMessage',
+ 'getWebsocket',
+ 'createPin',
+ 'forkSceneInitiate',
+ 'fixMessageContinuityErrors',
+ 'autocompleteRequest',
+ 'autocompleteInfoMessage',
+ 'getMessageStyle',
+ 'openWorldStateManager',
+ 'reviseMessage',
+ ],
computed: {
parts() {
return parseText(this.text);
diff --git a/talemate_frontend/src/components/SceneMessages.vue b/talemate_frontend/src/components/SceneMessages.vue
index 945b700f..b17fe43e 100644
--- a/talemate_frontend/src/components/SceneMessages.vue
+++ b/talemate_frontend/src/components/SceneMessages.vue
@@ -10,7 +10,7 @@
@@ -43,7 +43,7 @@
@@ -99,6 +99,9 @@ export default {
type: Boolean,
default: false,
},
+ agentStatus: {
+ type: Object,
+ }
},
components: {
CharacterMessage,
@@ -122,6 +125,11 @@ export default {
},
}
},
+ computed: {
+ editorRevisionsEnabled() {
+ return this.agentStatus && this.agentStatus.editor && this.agentStatus.editor.actions && this.agentStatus.editor.actions["revision"] && this.agentStatus.editor.actions["revision"].enabled;
+ }
+ },
inject: ['getWebsocket', 'registerMessageHandler', 'setWaitingForInput'],
provide() {
return {
@@ -131,6 +139,7 @@ export default {
forkSceneInitiate: this.forkSceneInitiate,
getMessageColor: this.getMessageColor,
getMessageStyle: this.getMessageStyle,
+ reviseMessage: this.reviseMessage,
}
},
methods: {
@@ -267,6 +276,14 @@ export default {
}));
},
+ reviseMessage(message_id) {
+ this.getWebsocket().send(JSON.stringify({
+ type: 'editor',
+ action: 'request_revision',
+ message_id: message_id,
+ }));
+ },
+
handleMessage(data) {
var i;
diff --git a/talemate_frontend/src/components/TalemateApp.vue b/talemate_frontend/src/components/TalemateApp.vue
index 8833eebb..b71f47e9 100644
--- a/talemate_frontend/src/components/TalemateApp.vue
+++ b/talemate_frontend/src/components/TalemateApp.vue
@@ -186,7 +186,12 @@
-
+