aboutsummaryrefslogtreecommitdiff
path: root/src/components/settings_modal/settings_modal.js
diff options
context:
space:
mode:
authorHJ <30-hj@users.noreply.git.pleroma.social>2020-06-06 21:24:47 +0000
committerHJ <30-hj@users.noreply.git.pleroma.social>2020-06-06 21:24:47 +0000
commita5de8db579f6c50c1bbe5659e82bc29eaa588e7f (patch)
tree9ab84c6012e3cb68484514920817862b91f1c25d /src/components/settings_modal/settings_modal.js
parente47d0f210317c6e04e15fb89eb8f1d469137b779 (diff)
parent68482fd3a6870514c7e8bd0fe433f24711e97ce9 (diff)
Merge branch 'settings-modal' into 'develop'
Settings modal See merge request pleroma/pleroma-fe!1118
Diffstat (limited to 'src/components/settings_modal/settings_modal.js')
-rw-r--r--src/components/settings_modal/settings_modal.js42
1 files changed, 42 insertions, 0 deletions
diff --git a/src/components/settings_modal/settings_modal.js b/src/components/settings_modal/settings_modal.js
new file mode 100644
index 00000000..f0d49c91
--- /dev/null
+++ b/src/components/settings_modal/settings_modal.js
@@ -0,0 +1,42 @@
+import Modal from 'src/components/modal/modal.vue'
+import PanelLoading from 'src/components/panel_loading/panel_loading.vue'
+import AsyncComponentError from 'src/components/async_component_error/async_component_error.vue'
+import getResettableAsyncComponent from 'src/services/resettable_async_component.js'
+
+const SettingsModal = {
+ components: {
+ Modal,
+ SettingsModalContent: getResettableAsyncComponent(
+ () => import('./settings_modal_content.vue'),
+ {
+ loading: PanelLoading,
+ error: AsyncComponentError,
+ delay: 0
+ }
+ )
+ },
+ methods: {
+ closeModal () {
+ this.$store.dispatch('closeSettingsModal')
+ },
+ peekModal () {
+ this.$store.dispatch('togglePeekSettingsModal')
+ }
+ },
+ computed: {
+ currentSaveStateNotice () {
+ return this.$store.state.interface.settings.currentSaveStateNotice
+ },
+ modalActivated () {
+ return this.$store.state.interface.settingsModalState !== 'hidden'
+ },
+ modalOpenedOnce () {
+ return this.$store.state.interface.settingsModalLoaded
+ },
+ modalPeeked () {
+ return this.$store.state.interface.settingsModalState === 'minimized'
+ }
+ }
+}
+
+export default SettingsModal