1 import { getCheckbox, go } from '../utils'
3 export class AdminConfigPage {
5 async navigateTo (tab: 'instance-homepage' | 'basic-configuration' | 'instance-information') {
7 'instance-homepage': 'INSTANCE HOMEPAGE',
8 'basic-configuration': 'APPEARANCE',
9 'instance-information': 'INSTANCE'
12 await go('/admin/config/edit-custom#' + tab)
14 await $('.inner-form-title=' + waitTitles[tab]).waitForDisplayed()
17 async updateNSFWSetting (newValue: 'do_not_list' | 'blur' | 'display') {
18 const elem = $('#instanceDefaultNSFWPolicy')
20 await elem.waitForDisplayed()
21 await elem.scrollIntoView(false) // Avoid issues with fixed header on firefox
22 await elem.waitForClickable()
24 return elem.selectByAttribute('value', newValue)
27 updateHomepage (newValue: string) {
28 return $('#instanceCustomHomepageContent').setValue(newValue)
31 async toggleSignup () {
32 const checkbox = await getCheckbox('signupEnabled')
34 await checkbox.waitForClickable()
35 await checkbox.click()
39 const button = $('input[type=submit]')
41 await button.waitForClickable()