Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wiki-js
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
1
Issues
1
List
Board
Labels
Milestones
Merge Requests
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Jacklull
wiki-js
Commits
a0d98041
Commit
a0d98041
authored
Sep 30, 2018
by
Nicolas Giard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat: page selector (wip)
parent
904e2a6e
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
110 additions
and
3 deletions
+110
-3
client-app.js
client/client-app.js
+2
-1
admin-pages.vue
client/components/admin/admin-pages.vue
+8
-2
page-selector.vue
client/components/common/page-selector.vue
+100
-0
No files found.
client/client-app.js
View file @
a0d98041
...
...
@@ -128,9 +128,10 @@ Vue.component('login', () => import(/* webpackPrefetch: true, webpackChunkName:
Vue
.
component
(
'nav-footer'
,
()
=>
import
(
/* webpackMode: "eager" */
'./components/common/nav-footer.vue'
))
Vue
.
component
(
'nav-header'
,
()
=>
import
(
/* webpackMode: "eager" */
'./components/common/nav-header.vue'
))
Vue
.
component
(
'nav-sidebar'
,
()
=>
import
(
/* webpackMode: "eager" */
'./components/common/nav-sidebar.vue'
))
Vue
.
component
(
'page'
,
()
=>
import
(
/* webpackChunkName: "theme-page" */
'./themes/'
+
process
.
env
.
CURRENT_THEME
+
'/components/app.vue'
))
Vue
.
component
(
'page-selector'
,
()
=>
import
(
/* webpackPrefetch: true, webpackChunkName: "ui-extra" */
'./components/common/page-selector.vue'
))
Vue
.
component
(
'profile'
,
()
=>
import
(
/* webpackChunkName: "profile" */
'./components/profile.vue'
))
Vue
.
component
(
'v-card-chin'
,
()
=>
import
(
/* webpackPrefetch: true, webpackChunkName: "ui-extra" */
'./components/common/v-card-chin.vue'
))
Vue
.
component
(
'page'
,
()
=>
import
(
/* webpackChunkName: "theme-page" */
'./themes/'
+
process
.
env
.
CURRENT_THEME
+
'/components/app.vue'
))
let
bootstrap
=
()
=>
{
// ====================================
...
...
client/components/admin/admin-pages.vue
View file @
a0d98041
...
...
@@ -10,7 +10,7 @@
v-spacer
v-btn(color='grey', outline, @click='refresh', large)
v-icon.grey--text refresh
v-btn(color='primary', depressed,
@click='save', large
)
v-btn(color='primary', depressed,
large, @click='newpage'
)
v-icon(left) add
span New Page
v-card.mt-3
...
...
@@ -33,6 +33,8 @@
v-alert.ma-3(icon='warning', :value='true', outline) No pages to display.
.text-xs-center.py-2(v-if='groups.length > 15')
v-pagination(v-model='pagination.page', :length='pages')
page-selector(v-model='pageSelectorShown', mode='new')
</
template
>
<
script
>
...
...
@@ -50,7 +52,8 @@ export default {
{
text
:
'Created'
,
value
:
'createdAt'
,
width
:
250
},
{
text
:
'Last Updated'
,
value
:
'updatedAt'
,
width
:
250
}
],
search
:
''
search
:
''
,
pageSelectorShown
:
false
}
},
computed
:
{
...
...
@@ -70,6 +73,9 @@ export default {
style
:
'success'
,
icon
:
'cached'
})
},
newpage
()
{
this
.
pageSelectorShown
=
true
}
}
}
...
...
client/components/common/page-selector.vue
0 → 100644
View file @
a0d98041
<
template
lang=
"pug"
>
v-dialog(v-model='isShown', lazy, max-width='850px')
v-card
.dialog-header
span Select Page Location
v-spacer
v-text-field.mr-3(
solo
flat
background-color='blue darken-2'
dark
prepend-inner-icon='search'
label='Search...'
clearable
:height='20'
hide-details
)
v-progress-circular(
indeterminate
color='white'
:size='20'
:width='2'
v-show='searchLoading'
)
.d-flex(style='min-height:400px;')
v-flex(xs4).grey.lighten-3
v-toolbar(color='grey lighten-2', dense, flat)
v-btn(icon): v-icon(color='grey') arrow_upward
v-spacer
v-btn(icon): v-icon(color='grey darken-2') create_new_folder
v-list.grey.lighten-3(dense)
v-list-tile.primary(dark)
v-list-tile-avatar: v-icon folder_open
v-list-tile-title.white--text / (Site Root)
v-divider
v-list-tile
v-list-tile-avatar: v-icon folder
v-list-tile-title Folder B
v-flex(xs8)
v-toolbar(color='grey lighten-4', dense, flat)
v-spacer
v-btn(icon): v-icon(color='grey') forward
v-btn(icon): v-icon(color='grey') delete
v-list(dense)
v-list-tile
v-list-tile-avatar: v-icon insert_drive_file
v-list-tile-title File A
v-divider
v-list-tile
v-list-tile-avatar: v-icon insert_drive_file
v-list-tile-title File B
v-divider
v-list-tile
v-list-tile-avatar: v-icon insert_drive_file
v-list-tile-title File C
v-divider
v-list-tile
v-list-tile-avatar: v-icon insert_drive_file
v-list-tile-title File D
v-card-text.grey.lighten-2.pa-2
v-text-field(
solo
hide-details
v-model='location'
)
v-card-chin
v-spacer
v-btn(outline, @click='close') Cancel
v-btn(color='primary')
v-icon(left) check
span Select
</
template
>
<
script
>
export
default
{
props
:
{
value
:
{
type
:
Boolean
,
default
:
false
}
},
data
()
{
return
{
searchLoading
:
true
,
location
:
'/new-page'
}
},
computed
:
{
isShown
:
{
get
()
{
return
this
.
value
},
set
(
val
)
{
this
.
$emit
(
'input'
,
val
)
}
}
},
methods
:
{
close
()
{
this
.
isShown
=
false
}
}
}
</
script
>
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment