diff options
| author | HJ <30-hj@users.noreply.git.pleroma.social> | 2020-06-06 21:24:47 +0000 |
|---|---|---|
| committer | HJ <30-hj@users.noreply.git.pleroma.social> | 2020-06-06 21:24:47 +0000 |
| commit | a5de8db579f6c50c1bbe5659e82bc29eaa588e7f (patch) | |
| tree | 9ab84c6012e3cb68484514920817862b91f1c25d /src/modules/interface.js | |
| parent | e47d0f210317c6e04e15fb89eb8f1d469137b779 (diff) | |
| parent | 68482fd3a6870514c7e8bd0fe433f24711e97ce9 (diff) | |
Merge branch 'settings-modal' into 'develop'
Settings modal
See merge request pleroma/pleroma-fe!1118
Diffstat (limited to 'src/modules/interface.js')
| -rw-r--r-- | src/modules/interface.js | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/src/modules/interface.js b/src/modules/interface.js index 5b2762e5..eeebd65e 100644 --- a/src/modules/interface.js +++ b/src/modules/interface.js @@ -1,6 +1,8 @@ import { set, delete as del } from 'vue' const defaultState = { + settingsModalState: 'hidden', + settingsModalLoaded: false, settings: { currentSaveStateNotice: null, noticeClearTimeout: null, @@ -35,6 +37,27 @@ const interfaceMod = { }, setMobileLayout (state, value) { state.mobileLayout = value + }, + closeSettingsModal (state) { + state.settingsModalState = 'hidden' + }, + togglePeekSettingsModal (state) { + switch (state.settingsModalState) { + case 'minimized': + state.settingsModalState = 'visible' + return + case 'visible': + state.settingsModalState = 'minimized' + return + default: + throw new Error('Illegal minimization state of settings modal') + } + }, + openSettingsModal (state) { + state.settingsModalState = 'visible' + if (!state.settingsModalLoaded) { + state.settingsModalLoaded = true + } } }, actions: { @@ -49,6 +72,15 @@ const interfaceMod = { }, setMobileLayout ({ commit }, value) { commit('setMobileLayout', value) + }, + closeSettingsModal ({ commit }) { + commit('closeSettingsModal') + }, + openSettingsModal ({ commit }) { + commit('openSettingsModal') + }, + togglePeekSettingsModal ({ commit }) { + commit('togglePeekSettingsModal') } } } |
