feat: admin rendering UI + contribute i18n

pull/621/head
NGPixel 7 years ago
parent 4643336e9d
commit bc12db7295

@ -1,52 +1,43 @@
<template lang='pug'> <template lang='pug'>
v-card(flat) v-card(flat)
v-card(flat, tile, :color='$vuetify.dark ? "grey darken-4" : "grey lighten-5"').pa-3.pt-4 v-card(flat, tile, :color='$vuetify.dark ? "grey darken-4" : "grey lighten-5"').pa-3.pt-4
.headline.primary--text Contribute .headline.primary--text {{ $t('admin:contribute.title') }}
.subheading.grey--text Help support Wiki.js development and operations .subheading.grey--text {{ $t('admin:contribute.subtitle') }}
v-card.pa-3 v-card.pa-3
.body-1.pl-3 Wiki.js is a #[strong free and open-source software] brought to you with #[v-icon(color='red') favorite] by #[a(href='https://requarks.io', target='_blank') requarks.io] and #[a(href='https://github.com/Requarks/wiki/graphs/contributors', target='_blank') contributors]. i18next.body-1.pl-3(path='admin:contribute.openSource', tag='div')
.body-1.pt-3.pl-3 We need your help to keep improving the software and run the various associated services (e.g. hosting and networking). v-icon(color='red') favorite
a(href='https://requarks.io', target='_blank') requarks.io
a(href='https://github.com/Requarks/wiki/graphs/contributors', target='_blank') {{ $t('admin:contribute.openSourceContributors') }}
.body-1.pt-3.pl-3 {{ $t('admin:contribute.needYourHelp') }}
v-divider v-divider
v-subheader Fund our work v-subheader {{ $t('admin:contribute.fundOurWork') }}
.body-1.pl-3 Wiki.js is part of the Open Collective initiative. You can contribute financially by making a monthly or one-time donation: .body-1.pl-3 {{ $t('admin:contribute.openCollective') }}
v-card-actions.mt-3.ml-2 v-card-actions.mt-3.ml-2
v-btn(depressed, color='primary', href='https://opencollective.com/wikijs') v-btn(depressed, color='primary', href='https://opencollective.com/wikijs')
v-icon(left) local_atm v-icon(left) local_atm
| Make a donation span {{ $t('admin:contribute.makeADonation') }}
v-divider v-divider
v-subheader Contribute v-subheader {{ $t('admin:contribute.contribute') }}
.body-1.pl-3 .body-1.pl-3
ul ul
li Submit an idea or vote on a proposed one on the #[a(href='https://requests.requarks.io/wiki', target='_blank') feature requests board]. i18next(path='admin:contribute.submitAnIdea', tag='li')
li Found a bug? Submit an issue on #[a(href='https://github.com/Requarks/wiki/issues', target='_blank') Github]. a(href='https://requests.requarks.io/wiki', target='_blank') {{ $t('admin:contribute.submitAnIdeaLink') }}
li Help translate Wiki.js in your language. Let us know on #[a(href='https://gitter.im/Requarks/wiki', target='_blank') Gitter]. i18next(path='admin:contribute.foundABug', tag='li')
a(href='https://github.com/Requarks/wiki/issues', target='_blank') Github
i18next(path='admin:contribute.helpTranslate', tag='li')
a(href='https://gitter.im/Requarks/wiki', target='_blank') Gitter
v-divider v-divider
v-subheader Spread the word v-subheader {{ $t('admin:contribute.spreadTheWord') }}
.body-1.pl-3 .body-1.pl-3
ul ul
li Talk to your friends and colleagues about how awesome Wiki.js is! li {{ $t('admin:contribute.talkToFriends') }}
li Follow us on #[a(href='https://twitter.com/requarks', target='_blank') Twitter]. i18next(path='admin:contribute.followUsOnTwitter', tag='li')
a(href='https://twitter.com/requarks', target='_blank') Twitter
</template> </template>
<script> <script>
import IconGithubCircle from 'mdi/github-circle'
export default { export default {
components: {
IconGithubCircle
},
data() {
return {
tab: '0',
telemetry: true
}
},
methods: {
resetClientID() {
}
}
} }
</script> </script>

@ -1,15 +1,212 @@
<template lang='pug'> <template lang='pug'>
v-container(fluid, fill-height) v-container(fluid, fill-height, grid-list-lg)
v-layout(row wrap) v-layout(row wrap)
v-flex(xs12) v-flex(xs12)
.headline.primary--text Rendering .headline.primary--text Rendering
.subheading.grey--text Configure how content is rendered .subheading.grey--text Configure how content is rendered
v-layout.mt-3(row wrap)
v-flex(lg3 xs12)
v-card
v-toolbar(
color='primary'
dense
flat
dark
)
v-icon.mr-2 line_weight
.subheading Pipeline
v-toolbar(
color='blue'
dense
dark
)
v-icon.mr-2 arrow_downward
.body-2 Markdown
v-spacer
v-btn(
icon
@click=''
)
v-icon add
v-list(two-line, dense)
v-list-tile(avatar)
v-list-tile-avatar
v-icon(color='grey') crop_free
v-list-tile-content
v-list-tile-title Core
v-list-tile-sub-title Basic Markdown parser
v-list-tile-avatar
v-icon(color='green', small) lens
v-divider.my-0
v-list-tile(avatar)
v-list-tile-avatar
v-icon(color='grey') tag_faces
v-list-tile-content
v-list-tile-title Emoji
v-list-tile-sub-title Convert tags to emojis
v-list-tile-avatar
v-icon(color='green', small) lens
v-divider.my-0
v-list-tile(avatar)
v-list-tile-avatar
v-icon(color='grey') list
v-list-tile-content
v-list-tile-title Task Lists
v-list-tile-sub-title Parse task lists to checkboxes
v-list-tile-avatar
v-icon(color='green', small) lens
v-divider.my-0
v-list-tile(avatar)
v-list-tile-avatar
v-icon(color='grey') multiline_chart
v-list-tile-content
v-list-tile-title PlantUML
v-list-tile-sub-title Generate diagrams from PlantUML syntax
v-list-tile-avatar
v-icon(color='green', small) lens
v-divider.my-0
v-list-tile(avatar)
v-list-tile-avatar
v-icon(color='grey') merge_type
v-list-tile-content
v-list-tile-title Mermaid
v-list-tile-sub-title Generate flowcharts from Mermaid syntax
v-list-tile-avatar
v-icon(color='green', small) lens
v-divider.my-0
v-list-tile(avatar)
v-list-tile-avatar
v-icon(color='grey') functions
v-list-tile-content
v-list-tile-title Mathjax Pre-Processor
v-list-tile-sub-title Parse Mathjax content from Markdown
v-list-tile-avatar
v-icon(color='red', small) trip_origin
v-toolbar(
color='blue'
dense
dark
)
v-icon.mr-2 arrow_downward
.body-2 HTML
v-spacer
v-btn(
icon
@click=''
)
v-icon add
v-list(two-line, dense)
v-list-tile(avatar)
v-list-tile-avatar
v-icon(color='grey') subscriptions
v-list-tile-content
v-list-tile-title Video Players
v-list-tile-sub-title Embed video players such as Youtube, Vimeo, etc.
v-list-tile-avatar
v-icon(color='green', small) lens
v-divider.my-0
v-list-tile(avatar)
v-list-tile-avatar
v-icon(color='grey') subtitles
v-list-tile-content
v-list-tile-title Asciinema
v-list-tile-sub-title Embed asciinema players from compatible links
v-list-tile-avatar
v-icon(color='green', small) lens
v-divider.my-0
v-list-tile(avatar)
v-list-tile-avatar
v-icon(color='grey') volume_up
v-list-tile-content
v-list-tile-title Audio Players
v-list-tile-sub-title Embed audio players for audio content
v-list-tile-avatar
v-icon(color='green', small) lens
v-divider.my-0
v-list-tile(avatar)
v-list-tile-avatar
v-icon(color='grey') insert_comment
v-list-tile-content
v-list-tile-title Blockquotes
v-list-tile-sub-title Process styled blockquotes
v-list-tile-avatar
v-icon(color='green', small) lens
v-divider.my-0
v-list-tile(avatar)
v-list-tile-avatar
v-icon(color='grey') functions
v-list-tile-content
v-list-tile-title Mathjax Processor
v-list-tile-sub-title TeX/MathML Math Equations Parser
v-list-tile-avatar
v-icon(color='red', small) trip_origin
v-flex(lg9 xs12)
v-card
v-toolbar(
color='grey darken-1'
dark
flat
dense
)
v-icon.mr-2 settings_applications
.subheading Markdown
v-icon chevron_right
.subheading Core
v-spacer
v-btn(flat, disabled)
v-icon(left) wrap_text
span Bypass
v-btn(flat, disabled)
v-icon(left) clear
span Remove
v-card-text
v-switch(
v-model='linkify'
label='Automatically convert links'
color='primary'
persistent-hint
hint='Links will automatically be converted to clickable links.'
)
v-divider
v-switch(
v-model='linkify'
label='Automatically convert line breaks'
color='primary'
persistent-hint
hint='Add linebreaks within paragraphs.'
)
v-divider
v-switch(
v-model='linkify'
label='Highlight code blocks'
color='primary'
persistent-hint
hint='Add syntax coloring to code blocks.'
)
v-select.mt-3(
:items='["Light", "Dark"]'
v-model='codeTheme'
label='Code Color Theme'
outline
background-color='grey lighten-2'
)
v-card-chin
v-btn(
color='primary'
)
v-icon(left) check
span Apply Configuration
</template> </template>
<script> <script>
export default { export default {
data() { data() {
return {} return {
linkify: true,
codeTheme: 'Light'
}
} }
} }
</script> </script>

@ -13,15 +13,16 @@
.login-frame(v-show='screen === "login"') .login-frame(v-show='screen === "login"')
h1.text-xs-center.display-1 {{ siteTitle }} h1.text-xs-center.display-1 {{ siteTitle }}
h2.text-xs-center.subheading {{ $t('auth:loginRequired') }} h2.text-xs-center.subheading {{ $t('auth:loginRequired') }}
v-text-field(solo, ref='iptEmail', v-model='username', :placeholder='$t("auth:fields.emailUser")') v-text-field(solo, hide-details, ref='iptEmail', v-model='username', :placeholder='$t("auth:fields.emailUser")')
v-text-field.mt-2( v-text-field.mt-2(
solo, solo
ref='iptPassword', hide-details
v-model='password', ref='iptPassword'
:append-icon='hidePassword ? "visibility" : "visibility_off"', v-model='password'
:append-icon-cb='() => (hidePassword = !hidePassword)', :append-icon='hidePassword ? "visibility" : "visibility_off"'
:type='hidePassword ? "password" : "text"', :append-icon-cb='() => (hidePassword = !hidePassword)'
:placeholder='$t("auth:fields.password")', :type='hidePassword ? "password" : "text"'
:placeholder='$t("auth:fields.password")'
@keyup.enter='login' @keyup.enter='login'
) )
v-btn.mt-3(block, large, color='primary', @click='login') {{ $t('auth:actions.login') }} v-btn.mt-3(block, large, color='primary', @click='login') {{ $t('auth:actions.login') }}

@ -234,6 +234,7 @@
"vue-router": "3.0.1", "vue-router": "3.0.1",
"vue-simple-breakpoints": "1.0.3", "vue-simple-breakpoints": "1.0.3",
"vue-template-compiler": "2.5.16", "vue-template-compiler": "2.5.16",
"vuedraggable": "2.16.0",
"vuetify": "1.1.1", "vuetify": "1.1.1",
"vuex": "3.0.1", "vuex": "3.0.1",
"vuex-persistedstate": "2.5.4", "vuex-persistedstate": "2.5.4",

@ -6,10 +6,13 @@ module.exports = {
accountKey: String, accountKey: String,
container: String container: String
}, },
activate() { activated(opts) {
}, },
deactivate() { deactivated(opts) {
},
init(opts) {
}, },
created(opts) { created(opts) {

@ -10,10 +10,13 @@ module.exports = {
}, },
bucket: String bucket: String
}, },
activate() { activated(opts) {
}, },
deactivate() { deactivated(opts) {
},
init(opts) {
}, },
created(opts) { created(opts) {

@ -4,10 +4,13 @@ module.exports = {
props: { props: {
path: String path: String
}, },
activate() { activated(opts) {
}, },
deactivate() { deactivated(opts) {
},
init(opts) {
}, },
created(opts) { created(opts) {

@ -5,10 +5,13 @@ module.exports = {
appKey: String, appKey: String,
appSecret: String appSecret: String
}, },
activate() { activated(opts) {
}, },
deactivate() { deactivated(opts) {
},
init(opts) {
}, },
created(opts) { created(opts) {

@ -5,10 +5,13 @@ module.exports = {
clientId: String, clientId: String,
clientSecret: String clientSecret: String
}, },
activate() { activated(opts) {
}, },
deactivate() { deactivated(opts) {
},
init(opts) {
}, },
created(opts) { created(opts) {

@ -20,10 +20,13 @@ module.exports = {
basicUsername: String, basicUsername: String,
basicPassword: String basicPassword: String
}, },
activate() { activated(opts) {
}, },
deactivate() { deactivated(opts) {
},
init(opts) {
}, },
created(opts) { created(opts) {

@ -5,10 +5,13 @@ module.exports = {
clientId: String, clientId: String,
clientSecret: String clientSecret: String
}, },
activate() { activated(opts) {
}, },
deactivate() { deactivated(opts) {
},
init(opts) {
}, },
created(opts) { created(opts) {

@ -7,10 +7,13 @@ module.exports = {
region: String, region: String,
bucket: String bucket: String
}, },
activate() { activated(opts) {
}, },
deactivate() { deactivated(opts) {
},
init(opts) {
}, },
created(opts) { created(opts) {

@ -14,10 +14,13 @@ module.exports = {
default: '~' default: '~'
} }
}, },
activate() { activated(opts) {
}, },
deactivate() { deactivated(opts) {
},
init(opts) {
}, },
created(opts) { created(opts) {

@ -11602,6 +11602,10 @@ sort-keys@^1.0.0:
dependencies: dependencies:
is-plain-obj "^1.0.0" is-plain-obj "^1.0.0"
sortablejs@^1.7.0:
version "1.7.0"
resolved "https://registry.yarnpkg.com/sortablejs/-/sortablejs-1.7.0.tgz#80a2b2370abd568e1cec8c271131ef30a904fa28"
source-list-map@^2.0.0: source-list-map@^2.0.0:
version "2.0.0" version "2.0.0"
resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.0.tgz#aaa47403f7b245a92fbc97ea08f250d6087ed085" resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.0.tgz#aaa47403f7b245a92fbc97ea08f250d6087ed085"
@ -12823,6 +12827,12 @@ vue@2.5.16:
version "2.5.16" version "2.5.16"
resolved "https://registry.yarnpkg.com/vue/-/vue-2.5.16.tgz#07edb75e8412aaeed871ebafa99f4672584a0085" resolved "https://registry.yarnpkg.com/vue/-/vue-2.5.16.tgz#07edb75e8412aaeed871ebafa99f4672584a0085"
vuedraggable@2.16.0:
version "2.16.0"
resolved "https://registry.yarnpkg.com/vuedraggable/-/vuedraggable-2.16.0.tgz#52127081a2adb3de5fabd214d404ff3eee63575a"
dependencies:
sortablejs "^1.7.0"
vuetify@1.1.1: vuetify@1.1.1:
version "1.1.1" version "1.1.1"
resolved "https://registry.yarnpkg.com/vuetify/-/vuetify-1.1.1.tgz#8d8f64306a45aaf862487addae8decf082dac0a3" resolved "https://registry.yarnpkg.com/vuetify/-/vuetify-1.1.1.tgz#8d8f64306a45aaf862487addae8decf082dac0a3"

Loading…
Cancel
Save