Skip to content

Commit 223fd1d

Browse files
committed
fix: conditional json syntax highlighting based on received msg type
1 parent 8f310f9 commit 223fd1d

File tree

3 files changed

+11
-2
lines changed

3 files changed

+11
-2
lines changed

web/src/components/MessageList.vue

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,12 @@
99
<DynamicScroller v-if="showMessages.length" :items="showMessages" :min-item-size="40" class="scroller">
1010
<template v-slot="{ item, active }">
1111
<DynamicScrollerItem :item="item" :active="active" :data-index="item.id">
12-
<MsgLeftItem v-if="!item.out" v-bind="item" @showmenu="handleShowContextMenu(arguments, item)" />
12+
<MsgLeftItem
13+
v-if="!item.out"
14+
v-bind="item"
15+
:receivedMsgType="receivedMsgType"
16+
@showmenu="handleShowContextMenu(arguments, item)"
17+
/>
1318
<MsgRightItem v-else v-bind="item" @showmenu="handleShowContextMenu(arguments, item)" />
1419
</DynamicScrollerItem>
1520
</template>
@@ -40,6 +45,7 @@ export default class MessageList extends Vue {
4045
@Prop({ required: true }) subscriptions!: SubscriptionModel[]
4146
@Prop({ required: true }) marginTop!: number
4247
@Prop({ required: true }) addNewMsg!: boolean
48+
@Prop({ required: true }) receivedMsgType!: string
4349
4450
public showMessages: MessageModel[] = []
4551
private scrollTop: number = -1

web/src/components/MsgLeftItem.vue

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,8 @@
3232
/>
3333
</p>
3434
</div>
35-
<highlightjs autodetect :code="payload" />
35+
<highlightjs v-if="receivedMsgType === 'JSON'" language="json" :code="payload" />
36+
<pre v-else>{{ payload }}</pre>
3637
</div>
3738
<p class="left-time time">{{ createAt }}</p>
3839
</div>
@@ -55,6 +56,7 @@ export default class MsgLeftItem extends Vue {
5556
@Prop({ required: false, default: false }) public retain!: boolean
5657
@Prop({ required: false, default: () => ({}) }) public properties!: PushPropertiesModel
5758
@Prop({ required: false, default: '' }) public color!: string
59+
@Prop({ required: true }) receivedMsgType!: string
5860
5961
private customMenu(event: MouseEvent) {
6062
this.$emit('showmenu', this.payload, event)

web/src/views/connections/ConnectionsDetail.vue

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -160,6 +160,7 @@
160160
:height="messageListHeight"
161161
:marginTop="messageListMarginTop"
162162
:addNewMsg="messagesAddedNewItem"
163+
:receivedMsgType="receivedMsgType"
163164
@showContextMenu="handleContextMenu"
164165
/>
165166
<contextmenu :visible.sync="showContextmenu" v-bind="contextmenuConfig">

0 commit comments

Comments
 (0)