feat: editor-code component
This commit is contained in:
@@ -1,6 +1,13 @@
|
||||
const express = require('express')
|
||||
const router = express.Router()
|
||||
|
||||
/**
|
||||
* Create/Edit document
|
||||
*/
|
||||
router.get('/e/*', (req, res, next) => {
|
||||
res.render('main/editor')
|
||||
})
|
||||
|
||||
/**
|
||||
* View document
|
||||
*/
|
||||
|
@@ -1,24 +0,0 @@
|
||||
extends ../layout.pug
|
||||
|
||||
block content
|
||||
.container.is-fluid.has-collapsable-nav
|
||||
.sidebar.is-collapsed
|
||||
aside
|
||||
.sidebar-label
|
||||
span= t('sidebar.nav')
|
||||
ul.sidebar-menu
|
||||
li
|
||||
a(href='/')
|
||||
i.nc-icon-outline.ui-1_home-minimal
|
||||
span= t('nav.root')
|
||||
if !isGuest
|
||||
li
|
||||
a(href='/admin')
|
||||
i.nc-icon-outline.ui-1_settings-gear-63
|
||||
span= t('nav.account')
|
||||
else
|
||||
li
|
||||
a(href='/login')
|
||||
i.nc-icon-outline.arrows-1_log-in
|
||||
span= t('nav.login')
|
||||
tree
|
@@ -1,25 +0,0 @@
|
||||
extends ../layout.pug
|
||||
|
||||
block rootNavCenter
|
||||
h2.nav-item= t('header.createdoc')
|
||||
|
||||
block rootNavRight
|
||||
loading-spinner
|
||||
span.nav-item
|
||||
a.button.is-outlined(v-on:click='$store.dispatch("modalDiscardPage/open")')
|
||||
i.nc-icon-outline.ui-1_simple-remove
|
||||
span= t('nav.discard')
|
||||
a.button(v-on:click='$root.$emit("editor/save")')
|
||||
i.nc-icon-outline.ui-1_check
|
||||
span= t('nav.savedocument')
|
||||
|
||||
block content
|
||||
editor(inline-template, current-path=pageData.meta.path, v-cloak)
|
||||
.editor-area
|
||||
textarea(ref='editorTextArea', v-pre)= pageData.markdown
|
||||
|
||||
editor-file
|
||||
editor-video
|
||||
editor-codeblock
|
||||
modal-discard-page(mode='create', current-path=pageData.meta.path)
|
||||
page-loader(text=t('loading.editor'))
|
@@ -1,29 +0,0 @@
|
||||
extends ../layout.pug
|
||||
|
||||
block rootNavCenter
|
||||
h2.nav-item= pageData.meta.title
|
||||
|
||||
block rootNavRight
|
||||
loading-spinner
|
||||
span.nav-item
|
||||
a.button.is-outlined(v-on:click='$store.dispatch("modalDiscardPage/open")')
|
||||
i.nc-icon-outline.ui-1_simple-remove
|
||||
span= t('nav.discard')
|
||||
a.button(v-on:click='$root.$emit("editor/save")')
|
||||
i.nc-icon-outline.ui-1_check
|
||||
span= t('nav.savechanges')
|
||||
|
||||
block content
|
||||
editor(inline-template, current-path=pageData.meta.path, v-cloak)
|
||||
.columns.is-gapless
|
||||
.column.editor-area
|
||||
textarea(ref='editorTextArea', v-pre)= pageData.markdown
|
||||
//- .column.editor-sd
|
||||
.editor-sd-item Images
|
||||
.editor-sd-item Files
|
||||
|
||||
editor-file
|
||||
editor-video
|
||||
editor-codeblock
|
||||
modal-discard-page(mode='edit', current-path=pageData.meta.path)
|
||||
page-loader(text=t('loading.editor'))
|
6
server/views/main/editor.pug
Normal file
6
server/views/main/editor.pug
Normal file
@@ -0,0 +1,6 @@
|
||||
extends ../master.pug
|
||||
|
||||
block body
|
||||
body
|
||||
#app
|
||||
editor
|
@@ -1,11 +0,0 @@
|
||||
extends ../layout.pug
|
||||
|
||||
block rootNavRight
|
||||
i.nav-item#notifload
|
||||
.nav-item
|
||||
a.button(href='/' + pageData.meta._id)
|
||||
i.nc-icon-outline.ui-3_select
|
||||
span= t('nav.viewlatest')
|
||||
|
||||
block content
|
||||
history(current-path=pageData.meta._id, history-data=JSON.stringify(pageData.history))
|
@@ -1,5 +0,0 @@
|
||||
extends ../master.pug
|
||||
|
||||
block body
|
||||
body
|
||||
#app.setup: setup(telemetry-id=telemetryClientID, wiki-version=packageObj.version, :langs!=JSON.stringify(data.langs).replace(/"/g, "'"))
|
@@ -1,32 +0,0 @@
|
||||
extends ../layout.pug
|
||||
|
||||
block rootNavCenter
|
||||
h2.nav-item= pageData.meta.title
|
||||
|
||||
block rootNavRight
|
||||
loading-spinner
|
||||
span.nav-item
|
||||
if rights.write && pageData.meta.path !== 'home'
|
||||
a.button.is-outlined(v-on:click='$store.dispatch("modalMovePage/open")')
|
||||
i.nc-icon-outline.arrows-1_shuffle-98
|
||||
span= t('nav.move')
|
||||
a.button.is-outlined(href='/' + pageData.meta.path)
|
||||
i.nc-icon-outline.ui-2_book
|
||||
span= t('nav.normalview')
|
||||
if rights.write
|
||||
a.button.is-orange(href='/edit/' + pageData.meta.path)
|
||||
i.nc-icon-outline.ui-1_edit-76
|
||||
span= t('nav.edit')
|
||||
a.button(v-on:click='$store.dispatch("modalCreatePage/open")')
|
||||
i.nc-icon-outline.ui-1_simple-add
|
||||
span= t('nav.create')
|
||||
|
||||
block content
|
||||
|
||||
source-view(inline-template, entrypath=pageData.meta.path, v-cloak)
|
||||
.ace-container
|
||||
#source-display(v-pre)= pageData.markdown
|
||||
|
||||
modal-create-page(basepath=pageData.meta.path)
|
||||
modal-move-page(current-path=pageData.meta.path)
|
||||
page-loader(text=t('loading.source'))
|
@@ -1,89 +0,0 @@
|
||||
extends ../layout.pug
|
||||
|
||||
mixin tocMenu(ti)
|
||||
each node in ti
|
||||
li
|
||||
a(href='#' + node.anchor, title=node.content)= node.content
|
||||
if node.nodes.length > 0
|
||||
ul
|
||||
+tocMenu(node.nodes)
|
||||
|
||||
block rootNavRight
|
||||
loading-spinner
|
||||
.nav-item
|
||||
if rights.write && pageData.meta.path !== 'home'
|
||||
a.button.is-outlined.is-icon-only(@click='$store.dispatch("modalDeletePage/open")')
|
||||
i.nc-icon-outline.ui-1_trash
|
||||
a.button.is-outlined(v-on:click='$store.dispatch("modalMovePage/open")')
|
||||
i.nc-icon-outline.arrows-1_shuffle-98
|
||||
span= t('nav.move')
|
||||
if appconfig.theme.viewSource === 'all' || (rights.write && appconfig.theme.viewSource === 'write')
|
||||
a.button.is-outlined(href='/source/' + pageData.meta.path)
|
||||
i.nc-icon-outline.education_paper
|
||||
span= t('nav.source')
|
||||
//-a.button.is-outlined(href='/hist/' + pageData.meta.path)
|
||||
i.nc-icon-outline.ui-2_time
|
||||
span= t('nav.history')
|
||||
if rights.write
|
||||
a.button(href='/edit/' + pageData.meta.path)
|
||||
i.nc-icon-outline.ui-1_edit-76
|
||||
span= t('nav.edit')
|
||||
a.button(v-on:click='$store.dispatch("modalCreatePage/open")')
|
||||
i.nc-icon-outline.ui-1_simple-add
|
||||
span= t('nav.create')
|
||||
|
||||
block content
|
||||
|
||||
content-view(inline-template)
|
||||
.container.is-fluid.has-mkcontent
|
||||
.columns.is-gapless
|
||||
|
||||
.column.is-narrow.is-hidden-touch.sidebar
|
||||
|
||||
aside
|
||||
.sidebar-label
|
||||
span= t('sidebar.navigation')
|
||||
ul.sidebar-menu
|
||||
li
|
||||
a(href='/')
|
||||
i.nc-icon-outline.ui-1_home-minimal
|
||||
span= t('nav.root')
|
||||
li
|
||||
a(href='/all')
|
||||
i.nc-icon-outline.business_hierarchy-55
|
||||
span= t('nav.allpages')
|
||||
if pageData.parent
|
||||
li
|
||||
a(href='/' + pageData.parent.path)
|
||||
i.icon-reply
|
||||
span= pageData.parent.title
|
||||
if !isGuest
|
||||
li
|
||||
a(href='/admin')
|
||||
i.nc-icon-outline.ui-1_settings-gear-63
|
||||
span= t('nav.settings')
|
||||
else
|
||||
li
|
||||
a(href='/login')
|
||||
i.nc-icon-outline.arrows-1_log-in
|
||||
span= t('nav.login')
|
||||
aside.sidebar-pagecontents
|
||||
.sidebar-label
|
||||
span= t('sidebar.pagecontents')
|
||||
ul.sidebar-menu
|
||||
li.is-hidden-until-scroll: a(href='#root', title='Top of Page')
|
||||
i.icon-arrow-up2
|
||||
+tocMenu(pageData.tree)
|
||||
|
||||
.column
|
||||
.hero
|
||||
h1.title#title= pageData.meta.title
|
||||
if pageData.meta.subtitle
|
||||
h2.subtitle= pageData.meta.subtitle
|
||||
.content.mkcontent(v-pre, class=[appconfig.theme.code.dark ? 'is-code-dark' : 'is-code-light'])
|
||||
!= pageData.html
|
||||
|
||||
modal-create-page(basepath=pageData.meta.path)
|
||||
modal-move-page(current-path=pageData.meta.path)
|
||||
modal-delete-page(current-path=pageData.meta.path)
|
||||
anchor
|
@@ -7,4 +7,4 @@ block body
|
||||
img(src='/svg/logo-wikijs.svg', alt='Wiki.js')
|
||||
h1= t('welcome.title')
|
||||
h2= t('welcome.subtitle')
|
||||
a.button.is-blue(href='/create/home')= t('welcome.createhome')
|
||||
a.button.is-blue(href='/e/home')= t('welcome.createhome')
|
||||
|
Reference in New Issue
Block a user