mirror of https://github.com/requarks/wiki
parent
3b285c5074
commit
8c6aca6623
@ -1,95 +0,0 @@
|
|||||||
<template lang="pug">
|
|
||||||
v-dialog(v-model='isShown', max-width='550')
|
|
||||||
v-card.wiki-form
|
|
||||||
.dialog-header.is-short
|
|
||||||
span Authorize Social User
|
|
||||||
v-spacer
|
|
||||||
v-chip(label, color='white', small).primary--text coming soon
|
|
||||||
v-card-text
|
|
||||||
v-alert.mb-4.deep-orange.lighten-5.radius-7(
|
|
||||||
v-if='providers.length < 1'
|
|
||||||
color='deep-orange'
|
|
||||||
icon='warning'
|
|
||||||
outline
|
|
||||||
:value='true'
|
|
||||||
) You must enable at least 1 social strategy first.
|
|
||||||
v-select.md2(
|
|
||||||
:items='providers'
|
|
||||||
item-text='title'
|
|
||||||
item-value='key'
|
|
||||||
outline
|
|
||||||
prepend-icon='business'
|
|
||||||
v-model='provider'
|
|
||||||
label='Provider'
|
|
||||||
)
|
|
||||||
v-text-field.md2(
|
|
||||||
outline
|
|
||||||
prepend-icon='email'
|
|
||||||
v-model='email'
|
|
||||||
label='Email Address'
|
|
||||||
ref='emailInput'
|
|
||||||
)
|
|
||||||
v-text-field.md2(
|
|
||||||
outline
|
|
||||||
prepend-icon='person'
|
|
||||||
v-model='name'
|
|
||||||
label='Name'
|
|
||||||
)
|
|
||||||
v-card-chin
|
|
||||||
v-spacer
|
|
||||||
v-btn(flat, @click='isShown = false') Cancel
|
|
||||||
v-btn(color='primary', @click='authorizeUser', :disabled='providers.length < 1 || true') Authorize
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import _ from 'lodash'
|
|
||||||
|
|
||||||
import providersQuery from 'gql/admin/users/users-query-strategies.gql'
|
|
||||||
|
|
||||||
export default {
|
|
||||||
props: {
|
|
||||||
value: {
|
|
||||||
type: Boolean,
|
|
||||||
default: false
|
|
||||||
}
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
providers: [],
|
|
||||||
provider: '',
|
|
||||||
email: '',
|
|
||||||
name: ''
|
|
||||||
}
|
|
||||||
},
|
|
||||||
computed: {
|
|
||||||
isShown: {
|
|
||||||
get() { return this.value },
|
|
||||||
set(val) { this.$emit('input', val) }
|
|
||||||
}
|
|
||||||
},
|
|
||||||
watch: {
|
|
||||||
value(newValue, oldValue) {
|
|
||||||
if (newValue) {
|
|
||||||
this.$nextTick(() => {
|
|
||||||
this.$refs.emailInput.focus()
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
async authorizeUser() {
|
|
||||||
|
|
||||||
}
|
|
||||||
},
|
|
||||||
apollo: {
|
|
||||||
providers: {
|
|
||||||
query: providersQuery,
|
|
||||||
fetchPolicy: 'network-only',
|
|
||||||
update: (data) => _.reject(data.authentication.strategies, ['key', 'local']),
|
|
||||||
watchLoading (isLoading) {
|
|
||||||
this.$store.commit(`loading${isLoading ? 'Start' : 'Stop'}`, 'admin-users-strategies-refresh')
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
@ -0,0 +1,103 @@
|
|||||||
|
<template lang='pug'>
|
||||||
|
v-dialog(v-model='isShown', persistent, max-width='700')
|
||||||
|
v-card.radius-7(color='blue darken-3', dark)
|
||||||
|
v-card-text.text-xs-center.py-4
|
||||||
|
.subheading Which editor do you want to use for this page?
|
||||||
|
v-container(grid-list-lg, fluid)
|
||||||
|
v-layout(row, wrap, justify-center)
|
||||||
|
v-flex(xs4)
|
||||||
|
v-card.radius-7.grey(
|
||||||
|
hover
|
||||||
|
light
|
||||||
|
ripple
|
||||||
|
)
|
||||||
|
v-card-text.text-xs-center(@click='selectEditor("api")')
|
||||||
|
img(src='/svg/icon-rest-api.svg', alt='API', style='width: 36px;')
|
||||||
|
.body-2.mt-2.grey--text.text--darken-2 API Docs
|
||||||
|
.caption.grey--text.text--darken-1 REST / GraphQL
|
||||||
|
v-flex(xs4)
|
||||||
|
v-card.radius-7(
|
||||||
|
hover
|
||||||
|
light
|
||||||
|
ripple
|
||||||
|
)
|
||||||
|
v-card-text.text-xs-center(@click='selectEditor("code")')
|
||||||
|
img(src='/svg/icon-source-code.svg', alt='Code', style='width: 36px;')
|
||||||
|
.body-2.mt-2 Code
|
||||||
|
.caption.grey--text Raw HTML
|
||||||
|
v-flex(xs4)
|
||||||
|
v-card.radius-7(
|
||||||
|
hover
|
||||||
|
light
|
||||||
|
ripple
|
||||||
|
)
|
||||||
|
v-card-text.text-xs-center(@click='selectEditor("markdown")')
|
||||||
|
img(src='/svg/icon-markdown.svg', alt='Markdown', style='width: 36px;')
|
||||||
|
.body-2.mt-2 Markdown
|
||||||
|
.caption.grey--text Default
|
||||||
|
v-flex(xs4)
|
||||||
|
v-card.radius-7.grey(
|
||||||
|
hover
|
||||||
|
light
|
||||||
|
ripple
|
||||||
|
)
|
||||||
|
v-card-text.text-xs-center(@click='selectEditor("tabular")')
|
||||||
|
img(src='/svg/icon-table.svg', alt='Tabular', style='width: 36px;')
|
||||||
|
.body-2.grey--text.mt-2.text--darken-2 Tabular
|
||||||
|
.caption.grey--text.text--darken-1 Excel-like
|
||||||
|
v-flex(xs4)
|
||||||
|
v-card.radius-7.grey(
|
||||||
|
hover
|
||||||
|
light
|
||||||
|
ripple
|
||||||
|
)
|
||||||
|
v-card-text.text-xs-center(@click='selectEditor("wysiwyg")')
|
||||||
|
img(src='/svg/icon-open-in-browser.svg', alt='Visual Builder', style='width: 36px;')
|
||||||
|
.body-2.mt-2.grey--text.text--darken-2 Visual Builder
|
||||||
|
.caption.grey--text.text--darken-1 Drag-n-drop
|
||||||
|
v-flex(xs4)
|
||||||
|
v-card.radius-7.grey(
|
||||||
|
hover
|
||||||
|
light
|
||||||
|
ripple
|
||||||
|
)
|
||||||
|
v-card-text.text-xs-center(@click='selectEditor("wikitext")')
|
||||||
|
img(src='/svg/icon-news.svg', alt='WikiText', style='width: 36px;')
|
||||||
|
.body-2.grey--text.mt-2.text--darken-2 WikiText
|
||||||
|
.caption.grey--text.text--darken-1 MediaWiki Format
|
||||||
|
.caption.blue--text.text--lighten-2 This cannot be changed once the page is created.
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import _ from 'lodash'
|
||||||
|
import { sync } from 'vuex-pathify'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
props: {
|
||||||
|
value: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return { }
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
isShown: {
|
||||||
|
get() { return this.value },
|
||||||
|
set(val) { this.$emit('input', val) }
|
||||||
|
},
|
||||||
|
currentEditor: sync('editor/editor'),
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
selectEditor(name) {
|
||||||
|
this.currentEditor = `editor${_.startCase(name)}`
|
||||||
|
this.isShown = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang='scss'>
|
||||||
|
|
||||||
|
</style>
|
@ -0,0 +1,40 @@
|
|||||||
|
<template lang="pug">
|
||||||
|
v-dialog(v-model='isShown', max-width='550')
|
||||||
|
v-card.wiki-form
|
||||||
|
.dialog-header.is-short.is-red
|
||||||
|
v-icon.mr-2(color='white') warning
|
||||||
|
span Discard Unsaved Changes?
|
||||||
|
v-card-text
|
||||||
|
.body-2 You have unsaved changes. Are you sure you want to leave the editor and discard any modifications you made since the last save?
|
||||||
|
v-card-chin
|
||||||
|
v-spacer
|
||||||
|
v-btn(flat, @click='isShown = false') Cancel
|
||||||
|
v-btn(color='red', @click='discard', dark) Discard Changes
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
|
||||||
|
export default {
|
||||||
|
props: {
|
||||||
|
value: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return { }
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
isShown: {
|
||||||
|
get() { return this.value },
|
||||||
|
set(val) { this.$emit('input', val) }
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
async discard() {
|
||||||
|
this.isShown = false
|
||||||
|
this.$emit('discard', true)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
Loading…
Reference in new issue