logo

pleroma-fe

My custom branche(s) on git.pleroma.social/pleroma/pleroma-fe git clone https://anongit.hacktivis.me/git/pleroma-fe.git/

general_tab.vue (15269B)


  1. <template>
  2. <div :label="$t('settings.general')">
  3. <div class="setting-item">
  4. <h2>{{ $t('settings.interface') }}</h2>
  5. <ul class="setting-list">
  6. <li>
  7. <interface-language-switcher
  8. :prompt-text="$t('settings.interfaceLanguage')"
  9. :language="language"
  10. :set-language="val => language = val"
  11. />
  12. </li>
  13. <li v-if="instanceSpecificPanelPresent">
  14. <BooleanSetting path="hideISP">
  15. {{ $t('settings.hide_isp') }}
  16. </BooleanSetting>
  17. </li>
  18. <li>
  19. <BooleanSetting path="stopGifs">
  20. {{ $t('settings.stop_gifs') }}
  21. </BooleanSetting>
  22. </li>
  23. <li>
  24. <BooleanSetting path="streaming">
  25. {{ $t('settings.streaming') }}
  26. </BooleanSetting>
  27. <ul class="setting-list suboptions">
  28. <li>
  29. <BooleanSetting
  30. path="pauseOnUnfocused"
  31. parent-path="streaming"
  32. >
  33. {{ $t('settings.pause_on_unfocused') }}
  34. </BooleanSetting>
  35. </li>
  36. </ul>
  37. </li>
  38. <li>
  39. <BooleanSetting
  40. path="useStreamingApi"
  41. expert="1"
  42. >
  43. {{ $t('settings.useStreamingApi') }}
  44. </BooleanSetting>
  45. </li>
  46. <li>
  47. <BooleanSetting
  48. path="virtualScrolling"
  49. expert="1"
  50. >
  51. {{ $t('settings.virtual_scrolling') }}
  52. </BooleanSetting>
  53. </li>
  54. <li>
  55. <ChoiceSetting
  56. id="userPopoverAvatarAction"
  57. path="userPopoverAvatarAction"
  58. :options="userPopoverAvatarActionOptions"
  59. expert="1"
  60. >
  61. {{ $t('settings.user_popover_avatar_action') }}
  62. </ChoiceSetting>
  63. </li>
  64. <li>
  65. <BooleanSetting
  66. path="userPopoverOverlay"
  67. expert="1"
  68. >
  69. {{ $t('settings.user_popover_avatar_overlay') }}
  70. </BooleanSetting>
  71. </li>
  72. <li>
  73. <BooleanSetting
  74. path="alwaysShowNewPostButton"
  75. expert="1"
  76. >
  77. {{ $t('settings.always_show_post_button') }}
  78. </BooleanSetting>
  79. </li>
  80. <li>
  81. <BooleanSetting
  82. path="autohideFloatingPostButton"
  83. expert="1"
  84. >
  85. {{ $t('settings.autohide_floating_post_button') }}
  86. </BooleanSetting>
  87. </li>
  88. <li v-if="instanceShoutboxPresent">
  89. <BooleanSetting
  90. path="hideShoutbox"
  91. expert="1"
  92. >
  93. {{ $t('settings.hide_shoutbox') }}
  94. </BooleanSetting>
  95. </li>
  96. <li class="select-multiple">
  97. <span class="label">{{ $t('settings.confirm_dialogs') }}</span>
  98. <ul class="option-list">
  99. <li>
  100. <BooleanSetting path="modalOnRepeat">
  101. {{ $t('settings.confirm_dialogs_repeat') }}
  102. </BooleanSetting>
  103. </li>
  104. <li>
  105. <BooleanSetting path="modalOnUnfollow">
  106. {{ $t('settings.confirm_dialogs_unfollow') }}
  107. </BooleanSetting>
  108. </li>
  109. <li>
  110. <BooleanSetting path="modalOnBlock">
  111. {{ $t('settings.confirm_dialogs_block') }}
  112. </BooleanSetting>
  113. </li>
  114. <li>
  115. <BooleanSetting path="modalOnMute">
  116. {{ $t('settings.confirm_dialogs_mute') }}
  117. </BooleanSetting>
  118. </li>
  119. <li>
  120. <BooleanSetting path="modalOnMuteConversation">
  121. {{ $t('settings.confirm_dialogs_mute_conversation') }}
  122. </BooleanSetting>
  123. </li>
  124. <li>
  125. <BooleanSetting path="modalOnMuteDomain">
  126. {{ $t('settings.confirm_dialogs_mute_domain') }}
  127. </BooleanSetting>
  128. </li>
  129. <li>
  130. <BooleanSetting path="modalOnDelete">
  131. {{ $t('settings.confirm_dialogs_delete') }}
  132. </BooleanSetting>
  133. </li>
  134. <li>
  135. <BooleanSetting path="modalOnLogout">
  136. {{ $t('settings.confirm_dialogs_logout') }}
  137. </BooleanSetting>
  138. </li>
  139. <li>
  140. <BooleanSetting path="modalOnApproveFollow">
  141. {{ $t('settings.confirm_dialogs_approve_follow') }}
  142. </BooleanSetting>
  143. </li>
  144. <li>
  145. <BooleanSetting path="modalOnDenyFollow">
  146. {{ $t('settings.confirm_dialogs_deny_follow') }}
  147. </BooleanSetting>
  148. </li>
  149. <li>
  150. <BooleanSetting path="modalOnRemoveUserFromFollowers">
  151. {{ $t('settings.confirm_dialogs_remove_follower') }}
  152. </BooleanSetting>
  153. </li>
  154. </ul>
  155. </li>
  156. </ul>
  157. </div>
  158. <div class="setting-item">
  159. <h2>{{ $t('settings.post_look_feel') }}</h2>
  160. <ul class="setting-list">
  161. <li>
  162. <ChoiceSetting
  163. id="conversationDisplay"
  164. path="conversationDisplay"
  165. :options="conversationDisplayOptions"
  166. >
  167. {{ $t('settings.conversation_display') }}
  168. </ChoiceSetting>
  169. </li>
  170. <ul
  171. v-if="mergedConfig.conversationDisplay !== 'linear'"
  172. class="setting-list suboptions"
  173. >
  174. <li>
  175. <BooleanSetting path="conversationTreeAdvanced">
  176. {{ $t('settings.tree_advanced') }}
  177. </BooleanSetting>
  178. </li>
  179. <li>
  180. <BooleanSetting
  181. path="conversationTreeFadeAncestors"
  182. :expert="1"
  183. >
  184. {{ $t('settings.tree_fade_ancestors') }}
  185. </BooleanSetting>
  186. </li>
  187. <li>
  188. <IntegerSetting
  189. path="maxDepthInThread"
  190. :min="3"
  191. :expert="1"
  192. >
  193. {{ $t('settings.max_depth_in_thread') }}
  194. </IntegerSetting>
  195. </li>
  196. <li>
  197. <ChoiceSetting
  198. id="conversationOtherRepliesButton"
  199. path="conversationOtherRepliesButton"
  200. :options="conversationOtherRepliesButtonOptions"
  201. :expert="1"
  202. >
  203. {{ $t('settings.conversation_other_replies_button') }}
  204. </ChoiceSetting>
  205. </li>
  206. </ul>
  207. <li>
  208. <BooleanSetting path="collapseMessageWithSubject">
  209. {{ $t('settings.collapse_subject') }}
  210. </BooleanSetting>
  211. </li>
  212. <li>
  213. <BooleanSetting
  214. path="emojiReactionsOnTimeline"
  215. expert="1"
  216. >
  217. {{ $t('settings.emoji_reactions_on_timeline') }}
  218. </BooleanSetting>
  219. </li>
  220. <li>
  221. <BooleanSetting
  222. v-if="user"
  223. source="profile"
  224. path="stripRichContent"
  225. expert="1"
  226. >
  227. {{ $t('settings.no_rich_text_description') }}
  228. </BooleanSetting>
  229. </li>
  230. <li>
  231. <BooleanSetting
  232. path="useAbsoluteTimeFormat"
  233. expert="1"
  234. >
  235. {{ $t('settings.absolute_time_format') }}
  236. </BooleanSetting>
  237. </li>
  238. <ul
  239. v-if="mergedConfig.useAbsoluteTimeFormat"
  240. class="setting-list suboptions"
  241. >
  242. <li>
  243. <UnitSetting
  244. path="absoluteTimeFormatMinAge"
  245. unit-set="time"
  246. :units="['s', 'm', 'h', 'd']"
  247. :min="0"
  248. >
  249. {{ $t('settings.absolute_time_format_min_age') }}
  250. </UnitSetting>
  251. </li>
  252. </ul>
  253. <h3>{{ $t('settings.attachments') }}</h3>
  254. <li>
  255. <BooleanSetting
  256. path="imageCompression"
  257. expert="1"
  258. >
  259. {{ $t('settings.image_compression') }}
  260. </BooleanSetting>
  261. </li>
  262. <li>
  263. <BooleanSetting
  264. path="useContainFit"
  265. expert="1"
  266. >
  267. {{ $t('settings.use_contain_fit') }}
  268. </BooleanSetting>
  269. </li>
  270. <li>
  271. <BooleanSetting path="hideNsfw">
  272. {{ $t('settings.nsfw_clickthrough') }}
  273. </BooleanSetting>
  274. </li>
  275. <ul class="setting-list suboptions">
  276. <li>
  277. <BooleanSetting
  278. path="preloadImage"
  279. expert="1"
  280. parent-path="hideNsfw"
  281. >
  282. {{ $t('settings.preload_images') }}
  283. </BooleanSetting>
  284. </li>
  285. <li>
  286. <BooleanSetting
  287. path="useOneClickNsfw"
  288. expert="1"
  289. parent-path="hideNsfw"
  290. >
  291. {{ $t('settings.use_one_click_nsfw') }}
  292. </BooleanSetting>
  293. </li>
  294. </ul>
  295. <li>
  296. <BooleanSetting
  297. path="loopVideo"
  298. expert="1"
  299. >
  300. {{ $t('settings.loop_video') }}
  301. </BooleanSetting>
  302. <ul class="setting-list suboptions">
  303. <li>
  304. <BooleanSetting
  305. path="loopVideoSilentOnly"
  306. expert="1"
  307. parent-path="loopVideo"
  308. :disabled="!loopSilentAvailable"
  309. >
  310. {{ $t('settings.loop_video_silent_only') }}
  311. </BooleanSetting>
  312. <div
  313. v-if="!loopSilentAvailable"
  314. class="unavailable"
  315. >
  316. <FAIcon icon="globe" />! {{ $t('settings.limited_availability') }}
  317. </div>
  318. </li>
  319. </ul>
  320. </li>
  321. <li>
  322. <BooleanSetting
  323. path="playVideosInModal"
  324. expert="1"
  325. >
  326. {{ $t('settings.play_videos_in_modal') }}
  327. </BooleanSetting>
  328. </li>
  329. <h3>{{ $t('settings.mention_links') }}</h3>
  330. <li>
  331. <ChoiceSetting
  332. id="mentionLinkDisplay"
  333. path="mentionLinkDisplay"
  334. :options="mentionLinkDisplayOptions"
  335. >
  336. {{ $t('settings.mention_link_display') }}
  337. </ChoiceSetting>
  338. </li>
  339. <li>
  340. <BooleanSetting
  341. path="mentionLinkShowTooltip"
  342. expert="1"
  343. >
  344. {{ $t('settings.mention_link_use_tooltip') }}
  345. </BooleanSetting>
  346. </li>
  347. <li>
  348. <BooleanSetting
  349. path="useAtIcon"
  350. expert="1"
  351. >
  352. {{ $t('settings.use_at_icon') }}
  353. </BooleanSetting>
  354. </li>
  355. <li>
  356. <BooleanSetting path="mentionLinkShowAvatar">
  357. {{ $t('settings.mention_link_show_avatar') }}
  358. </BooleanSetting>
  359. </li>
  360. <li>
  361. <BooleanSetting
  362. path="mentionLinkFadeDomain"
  363. expert="1"
  364. >
  365. {{ $t('settings.mention_link_fade_domain') }}
  366. </BooleanSetting>
  367. </li>
  368. <li v-if="user">
  369. <BooleanSetting
  370. path="mentionLinkBoldenYou"
  371. expert="1"
  372. >
  373. {{ $t('settings.mention_link_bolden_you') }}
  374. </BooleanSetting>
  375. </li>
  376. <h3 v-if="expertLevel > 0">
  377. {{ $t('settings.fun') }}
  378. </h3>
  379. <li>
  380. <BooleanSetting
  381. path="greentext"
  382. expert="1"
  383. >
  384. {{ $t('settings.greentext') }}
  385. </BooleanSetting>
  386. </li>
  387. <li v-if="user">
  388. <BooleanSetting
  389. path="mentionLinkShowYous"
  390. expert="1"
  391. >
  392. {{ $t('settings.show_yous') }}
  393. </BooleanSetting>
  394. </li>
  395. </ul>
  396. </div>
  397. <div
  398. v-if="user"
  399. class="setting-item"
  400. >
  401. <h2>{{ $t('settings.composing') }}</h2>
  402. <ul class="setting-list">
  403. <li>
  404. <label for="default-vis">
  405. {{ $t('settings.default_vis') }} <ProfileSettingIndicator :is-profile="true" />
  406. <ScopeSelector
  407. class="scope-selector"
  408. :show-all="true"
  409. :user-default="$store.state.profileConfig.defaultScope"
  410. :initial-scope="$store.state.profileConfig.defaultScope"
  411. :on-scope-change="changeDefaultScope"
  412. />
  413. </label>
  414. </li>
  415. <li>
  416. <!-- <BooleanSetting source="profile" path="defaultNSFW"> -->
  417. <BooleanSetting path="sensitiveByDefault">
  418. {{ $t('settings.sensitive_by_default') }}
  419. </BooleanSetting>
  420. </li>
  421. <li>
  422. <BooleanSetting
  423. path="scopeCopy"
  424. expert="1"
  425. >
  426. {{ $t('settings.scope_copy') }}
  427. </BooleanSetting>
  428. </li>
  429. <li>
  430. <BooleanSetting
  431. path="alwaysShowSubjectInput"
  432. expert="1"
  433. >
  434. {{ $t('settings.subject_input_always_show') }}
  435. </BooleanSetting>
  436. </li>
  437. <li>
  438. <ChoiceSetting
  439. id="subjectLineBehavior"
  440. path="subjectLineBehavior"
  441. :options="subjectLineOptions"
  442. expert="1"
  443. >
  444. {{ $t('settings.subject_line_behavior') }}
  445. </ChoiceSetting>
  446. </li>
  447. <li v-if="postFormats.length > 0">
  448. <ChoiceSetting
  449. id="postContentType"
  450. path="postContentType"
  451. :options="postContentOptions"
  452. >
  453. {{ $t('settings.post_status_content_type') }}
  454. </ChoiceSetting>
  455. </li>
  456. <li>
  457. <BooleanSetting
  458. path="minimalScopesMode"
  459. expert="1"
  460. >
  461. {{ $t('settings.minimal_scopes_mode') }}
  462. </BooleanSetting>
  463. </li>
  464. <li>
  465. <BooleanSetting
  466. path="alwaysShowNewPostButton"
  467. expert="1"
  468. >
  469. {{ $t('settings.always_show_post_button') }}
  470. </BooleanSetting>
  471. </li>
  472. <li>
  473. <BooleanSetting
  474. path="autohideFloatingPostButton"
  475. expert="1"
  476. >
  477. {{ $t('settings.autohide_floating_post_button') }}
  478. </BooleanSetting>
  479. </li>
  480. <li>
  481. <BooleanSetting
  482. path="padEmoji"
  483. expert="1"
  484. >
  485. {{ $t('settings.pad_emoji') }}
  486. </BooleanSetting>
  487. </li>
  488. <li>
  489. <BooleanSetting
  490. path="autocompleteSelect"
  491. expert="1"
  492. >
  493. {{ $t('settings.autocomplete_select_first') }}
  494. </BooleanSetting>
  495. </li>
  496. <li>
  497. <BooleanSetting
  498. path="autoSaveDraft"
  499. >
  500. {{ $t('settings.auto_save_draft') }}
  501. </BooleanSetting>
  502. </li>
  503. <li v-if="!autoSaveDraft">
  504. <ChoiceSetting
  505. id="unsavedPostAction"
  506. path="unsavedPostAction"
  507. :options="unsavedPostActionOptions"
  508. >
  509. {{ $t('settings.unsaved_post_action') }}
  510. </ChoiceSetting>
  511. </li>
  512. </ul>
  513. </div>
  514. </div>
  515. </template>
  516. <script src="./general_tab.js"></script>