aboutsummaryrefslogtreecommitdiff
path: root/src/components/conversation/conversation.js
diff options
context:
space:
mode:
authorTusooa Zhu <tusooa@kazv.moe>2021-08-07 10:28:45 -0400
committerTusooa Zhu <tusooa@kazv.moe>2022-03-07 19:19:29 -0500
commitace1f5067c90be2fa0b8da22d39b0e2c88f590fb (patch)
tree3c8b8896060ce8eec7762fd5702dcb220232cbef /src/components/conversation/conversation.js
parentcd0f6a4f7820b27e3d776e598c842328ad64ab18 (diff)
Make status display controlled
Diffstat (limited to 'src/components/conversation/conversation.js')
-rw-r--r--src/components/conversation/conversation.js37
1 files changed, 35 insertions, 2 deletions
diff --git a/src/components/conversation/conversation.js b/src/components/conversation/conversation.js
index 0abb7abd..6fc86b2c 100644
--- a/src/components/conversation/conversation.js
+++ b/src/components/conversation/conversation.js
@@ -2,7 +2,8 @@ import { reduce, filter, findIndex, clone, get } from 'lodash'
import Status from '../status/status.vue'
import ThreadTree from '../thread_tree/thread_tree.vue'
-const debug = console.log
+// const debug = console.log
+const debug = () => {}
const sortById = (a, b) => {
const idA = a.type === 'retweet' ? a.retweeted_status.id : a.id
@@ -39,7 +40,8 @@ const conversation = {
return {
highlight: null,
expanded: false,
- threadDisplayStatusObject: {} // id => 'showing' | 'hidden'
+ threadDisplayStatusObject: {}, // id => 'showing' | 'hidden'
+ statusContentPropertiesObject: {}
}
},
props: [
@@ -236,6 +238,25 @@ const conversation = {
a[id] = status
return a
}, {})
+ },
+ statusContentProperties () {
+ return this.conversation.reduce((a, k) => {
+ const id = k.id
+ const depth = this.depths[id]
+ const props = (() => {
+ if (this.statusContentPropertiesObject[id]) {
+ return this.statusContentPropertiesObject[id]
+ }
+ return {
+ showingTall: false,
+ expandingSubject: false,
+ showingLongSubject: false,
+ }
+ })()
+
+ a[id] = props
+ return a
+ }, {})
}
},
components: {
@@ -326,6 +347,18 @@ const conversation = {
},
showThreadRecursively (id) {
this.setThreadDisplayRecursively(id, 'showing')
+ },
+ setStatusContentProperty (id, name, value) {
+ this.statusContentPropertiesObject = {
+ ...this.statusContentPropertiesObject,
+ [id]: {
+ ...this.statusContentPropertiesObject[id],
+ [name]: value
+ }
+ }
+ },
+ toggleStatusContentProperty (id, name) {
+ this.setStatusContentProperty(id, name, !this.statusContentProperties[id][name])
}
}
}