|
@@ -1,5 +1,5 @@
|
|
<template lang="pug">
|
|
<template lang="pug">
|
|
-q-layout(view='hHh lpR fFf', container)
|
|
|
|
|
|
+q-layout(view='hHh lpR lFr', container)
|
|
q-header.card-header
|
|
q-header.card-header
|
|
q-toolbar(dark)
|
|
q-toolbar(dark)
|
|
q-icon(name='img:/_assets/icons/fluent-folder.svg', left, size='md')
|
|
q-icon(name='img:/_assets/icons/fluent-folder.svg', left, size='md')
|
|
@@ -25,58 +25,11 @@ q-layout(view='hHh lpR fFf', container)
|
|
)
|
|
)
|
|
q-toolbar(dark)
|
|
q-toolbar(dark)
|
|
q-space
|
|
q-space
|
|
- q-btn.q-mr-sm(
|
|
|
|
- flat
|
|
|
|
- dense
|
|
|
|
- color='blue-4'
|
|
|
|
- :aria-label='t(`common.actions.upload`)'
|
|
|
|
- icon='las la-plus-circle'
|
|
|
|
- @click=''
|
|
|
|
- )
|
|
|
|
- q-tooltip(anchor='bottom middle', self='top middle') {{t(`common.actions.upload`)}}
|
|
|
|
- q-btn(
|
|
|
|
- flat
|
|
|
|
- dense
|
|
|
|
- color='positive'
|
|
|
|
- :aria-label='t(`common.actions.upload`)'
|
|
|
|
- icon='las la-cloud-upload-alt'
|
|
|
|
- @click=''
|
|
|
|
- )
|
|
|
|
- q-tooltip(anchor='bottom middle', self='top middle') {{t(`common.actions.upload`)}}
|
|
|
|
- q-separator.q-mx-sm(vertical, dark, inset)
|
|
|
|
- q-btn.q-mr-sm(
|
|
|
|
- flat
|
|
|
|
- dense
|
|
|
|
- color='blue-grey-4'
|
|
|
|
- :aria-label='t(`common.actions.upload`)'
|
|
|
|
- icon='las la-check-square'
|
|
|
|
- @click=''
|
|
|
|
- )
|
|
|
|
- q-tooltip(anchor='bottom middle', self='top middle') {{t(`common.actions.upload`)}}
|
|
|
|
- q-btn.q-mr-sm(
|
|
|
|
- flat
|
|
|
|
- dense
|
|
|
|
- color='blue-grey-4'
|
|
|
|
- :aria-label='t(`common.actions.upload`)'
|
|
|
|
- icon='las la-list'
|
|
|
|
- @click=''
|
|
|
|
- )
|
|
|
|
- q-tooltip(anchor='bottom middle', self='top middle') {{t(`common.actions.upload`)}}
|
|
|
|
- q-btn(
|
|
|
|
- flat
|
|
|
|
- dense
|
|
|
|
- color='blue-grey-4'
|
|
|
|
- :aria-label='t(`common.actions.refresh`)'
|
|
|
|
- icon='las la-redo-alt'
|
|
|
|
- @click=''
|
|
|
|
- :loading='state.loading > 0'
|
|
|
|
- )
|
|
|
|
- q-tooltip(anchor='bottom middle', self='top middle') {{t(`common.actions.refresh`)}}
|
|
|
|
- q-separator.q-mx-sm(vertical, dark, inset)
|
|
|
|
q-btn(
|
|
q-btn(
|
|
flat
|
|
flat
|
|
dense
|
|
dense
|
|
color='white'
|
|
color='white'
|
|
|
|
+ :label='t(`common.actions.close`)'
|
|
:aria-label='t(`common.actions.close`)'
|
|
:aria-label='t(`common.actions.close`)'
|
|
icon='las la-times'
|
|
icon='las la-times'
|
|
@click='close'
|
|
@click='close'
|
|
@@ -84,16 +37,10 @@ q-layout(view='hHh lpR fFf', container)
|
|
q-tooltip(anchor='bottom middle', self='top middle') {{t(`common.actions.close`)}}
|
|
q-tooltip(anchor='bottom middle', self='top middle') {{t(`common.actions.close`)}}
|
|
q-drawer.bg-blue-grey-1(:model-value='true', :width='350')
|
|
q-drawer.bg-blue-grey-1(:model-value='true', :width='350')
|
|
.q-px-md.q-pb-sm
|
|
.q-px-md.q-pb-sm
|
|
- q-tree.fileman-toc(
|
|
|
|
- :nodes='state.tree'
|
|
|
|
- icon='las la-caret-right'
|
|
|
|
- node-key='key'
|
|
|
|
- dense
|
|
|
|
- accordion
|
|
|
|
- no-connectors
|
|
|
|
- v-model:expanded='state.treeExpanded'
|
|
|
|
- v-model:selected='state.treeSelected'
|
|
|
|
- @click='openFolder'
|
|
|
|
|
|
+ tree(
|
|
|
|
+ :nodes='state.treeNodes'
|
|
|
|
+ :roots='state.treeRoots'
|
|
|
|
+ v-model:selected='state.currentFolderId'
|
|
)
|
|
)
|
|
q-drawer.bg-grey-1(:model-value='true', :width='350', side='right')
|
|
q-drawer.bg-grey-1(:model-value='true', :width='350', side='right')
|
|
.q-pa-md
|
|
.q-pa-md
|
|
@@ -105,8 +52,40 @@ q-layout(view='hHh lpR fFf', container)
|
|
)
|
|
)
|
|
q-page-container
|
|
q-page-container
|
|
q-page.bg-white
|
|
q-page.bg-white
|
|
- q-bar.bg-blue-grey-1
|
|
|
|
- small.text-caption.text-grey-7 / foo / bar
|
|
|
|
|
|
+ q-toolbar.bg-grey-1
|
|
|
|
+ q-space
|
|
|
|
+ q-btn.q-mr-sm(
|
|
|
|
+ flat
|
|
|
|
+ dense
|
|
|
|
+ no-caps
|
|
|
|
+ color='grey'
|
|
|
|
+ :aria-label='t(`common.actions.refresh`)'
|
|
|
|
+ icon='las la-redo-alt'
|
|
|
|
+ @click=''
|
|
|
|
+ )
|
|
|
|
+ q-tooltip(anchor='bottom middle', self='top middle') {{t(`common.actions.refresh`)}}
|
|
|
|
+ q-separator.q-mr-sm(inset, vertical)
|
|
|
|
+ q-btn.q-mr-sm(
|
|
|
|
+ flat
|
|
|
|
+ dense
|
|
|
|
+ no-caps
|
|
|
|
+ color='blue'
|
|
|
|
+ :label='t(`common.actions.new`)'
|
|
|
|
+ :aria-label='t(`common.actions.new`)'
|
|
|
|
+ icon='las la-plus-circle'
|
|
|
|
+ @click=''
|
|
|
|
+ )
|
|
|
|
+ new-menu(hide-asset-btn)
|
|
|
|
+ q-btn(
|
|
|
|
+ flat
|
|
|
|
+ dense
|
|
|
|
+ no-caps
|
|
|
|
+ color='positive'
|
|
|
|
+ :label='t(`common.actions.upload`)'
|
|
|
|
+ :aria-label='t(`common.actions.upload`)'
|
|
|
|
+ icon='las la-cloud-upload-alt'
|
|
|
|
+ @click=''
|
|
|
|
+ )
|
|
q-list.fileman-filelist
|
|
q-list.fileman-filelist
|
|
q-item(clickable)
|
|
q-item(clickable)
|
|
q-item-section(avatar)
|
|
q-item-section(avatar)
|
|
@@ -141,12 +120,18 @@ q-layout(view='hHh lpR fFf', container)
|
|
q-item-section(side)
|
|
q-item-section(side)
|
|
.text-caption 2022/01/01
|
|
.text-caption 2022/01/01
|
|
|
|
|
|
|
|
+ q-footer
|
|
|
|
+ q-bar.bg-blue-grey-1
|
|
|
|
+ small.text-caption.text-grey-7 / foo / bar
|
|
</template>
|
|
</template>
|
|
|
|
|
|
<script setup>
|
|
<script setup>
|
|
import { useI18n } from 'vue-i18n'
|
|
import { useI18n } from 'vue-i18n'
|
|
import { reactive } from 'vue'
|
|
import { reactive } from 'vue'
|
|
|
|
|
|
|
|
+import NewMenu from './PageNewMenu.vue'
|
|
|
|
+import Tree from './TreeNav.vue'
|
|
|
|
+
|
|
import { usePageStore } from 'src/stores/page'
|
|
import { usePageStore } from 'src/stores/page'
|
|
import { useSiteStore } from 'src/stores/site'
|
|
import { useSiteStore } from 'src/stores/site'
|
|
|
|
|
|
@@ -164,33 +149,31 @@ const { t } = useI18n()
|
|
const state = reactive({
|
|
const state = reactive({
|
|
loading: 0,
|
|
loading: 0,
|
|
search: '',
|
|
search: '',
|
|
- tree: [
|
|
|
|
- {
|
|
|
|
- key: 'root',
|
|
|
|
- label: 'Root',
|
|
|
|
- children: [
|
|
|
|
- {
|
|
|
|
- key: '1',
|
|
|
|
- label: 'guides',
|
|
|
|
- icon: 'las la-folder',
|
|
|
|
- children: [
|
|
|
|
- {
|
|
|
|
- key: '3',
|
|
|
|
- label: 'offline',
|
|
|
|
- icon: 'las la-folder'
|
|
|
|
- }
|
|
|
|
- ]
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- key: '2',
|
|
|
|
- label: 'administration',
|
|
|
|
- icon: 'las la-folder'
|
|
|
|
- }
|
|
|
|
- ]
|
|
|
|
|
|
+ currentFolderId: 'boop',
|
|
|
|
+ treeNodes: {
|
|
|
|
+ beep: {
|
|
|
|
+ text: 'Beep',
|
|
|
|
+ children: ['foo', 'bar']
|
|
|
|
+ },
|
|
|
|
+ foo: {
|
|
|
|
+ text: 'Foo'
|
|
|
|
+ },
|
|
|
|
+ bar: {
|
|
|
|
+ text: 'Bar',
|
|
|
|
+ children: ['boop']
|
|
|
|
+ },
|
|
|
|
+ boop: {
|
|
|
|
+ text: 'Boop'
|
|
|
|
+ },
|
|
|
|
+ bop: {
|
|
|
|
+ text: 'Bop',
|
|
|
|
+ children: ['bap']
|
|
|
|
+ },
|
|
|
|
+ bap: {
|
|
|
|
+ text: 'Bap'
|
|
}
|
|
}
|
|
- ],
|
|
|
|
- treeExpanded: ['root'],
|
|
|
|
- treeSelected: []
|
|
|
|
|
|
+ },
|
|
|
|
+ treeRoots: ['beep', 'bop']
|
|
})
|
|
})
|
|
|
|
|
|
// METHODS
|
|
// METHODS
|
|
@@ -215,11 +198,5 @@ function openFolder (node, noder) {
|
|
border-radius: 8px;
|
|
border-radius: 8px;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
-
|
|
|
|
- &-toc {
|
|
|
|
- &.q-tree--dense .q-tree__node {
|
|
|
|
- padding-bottom: 5px;
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
}
|
|
}
|
|
</style>
|
|
</style>
|