🚧 Site > Add file
This commit is contained in:
@@ -0,0 +1,3 @@
|
|||||||
|
<template src="./template.html"></template>
|
||||||
|
<script src="./script.js"></script>
|
||||||
|
<style src="./style.styl" lang="stylus" scoped></style>
|
||||||
@@ -0,0 +1,16 @@
|
|||||||
|
import Versions from '@/components/versions'
|
||||||
|
|
||||||
|
export default
|
||||||
|
{
|
||||||
|
name: 'file',
|
||||||
|
|
||||||
|
components:
|
||||||
|
{
|
||||||
|
Versions
|
||||||
|
},
|
||||||
|
|
||||||
|
props:
|
||||||
|
{
|
||||||
|
content: { type: Object }
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
.file
|
||||||
|
position absolute
|
||||||
|
top 0
|
||||||
|
right 0
|
||||||
|
width 75%
|
||||||
|
height 100%
|
||||||
|
background rgba(0, 255, 0, 0.3)
|
||||||
|
|
||||||
|
header
|
||||||
|
position absolute
|
||||||
|
top 0
|
||||||
|
left 0
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
<div class="file">
|
||||||
|
<header>
|
||||||
|
File
|
||||||
|
{{ content.path.directory }} {{ content.name }}
|
||||||
|
</header>
|
||||||
|
<versions :content="content.versions"></versions>
|
||||||
|
</div>
|
||||||
@@ -14,5 +14,9 @@ export default
|
|||||||
|
|
||||||
methods:
|
methods:
|
||||||
{
|
{
|
||||||
|
onNameClick()
|
||||||
|
{
|
||||||
|
this.$store.commit('setFile', this.content.data.path.full)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
<div>
|
<div>
|
||||||
<div class="name" :style="{ paddingLeft:depth * 20 + 'px' }">
|
<div class="name" :style="{ paddingLeft:depth * 20 + 'px' }" @click.prevent="onNameClick">
|
||||||
{{ content.name }}
|
{{ content.name }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -1,4 +1,5 @@
|
|||||||
import FilesTree from '@/components/files-tree'
|
import FilesTree from '@/components/files-tree'
|
||||||
|
import File from '@/components/file'
|
||||||
|
|
||||||
export default
|
export default
|
||||||
{
|
{
|
||||||
@@ -6,7 +7,8 @@ export default
|
|||||||
|
|
||||||
components:
|
components:
|
||||||
{
|
{
|
||||||
FilesTree
|
FilesTree,
|
||||||
|
File
|
||||||
},
|
},
|
||||||
|
|
||||||
computed:
|
computed:
|
||||||
@@ -14,6 +16,10 @@ export default
|
|||||||
project()
|
project()
|
||||||
{
|
{
|
||||||
return this.$store.state.project
|
return this.$store.state.project
|
||||||
|
},
|
||||||
|
file()
|
||||||
|
{
|
||||||
|
return this.$store.state.file
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,6 @@
|
|||||||
<div>
|
<div>
|
||||||
{{ project.name }}
|
{{ project.name }}
|
||||||
|
|
||||||
<files-tree></files-tree>
|
<files-tree></files-tree>
|
||||||
|
<file v-if="file" :content="file.data"></file>
|
||||||
</div>
|
</div>
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
<template src="./template.html"></template>
|
||||||
|
<script src="./script.js"></script>
|
||||||
|
<style src="./style.styl" lang="stylus" scoped></style>
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
export default
|
||||||
|
{
|
||||||
|
name: 'version',
|
||||||
|
|
||||||
|
props:
|
||||||
|
{
|
||||||
|
content: { type: Object }
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
<div class="version">
|
||||||
|
{{ content }}
|
||||||
|
</div>
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
<template src="./template.html"></template>
|
||||||
|
<script src="./script.js"></script>
|
||||||
|
<style src="./style.styl" lang="stylus" scoped></style>
|
||||||
@@ -0,0 +1,16 @@
|
|||||||
|
import Version from '@/components/version'
|
||||||
|
|
||||||
|
export default
|
||||||
|
{
|
||||||
|
name: 'versions',
|
||||||
|
|
||||||
|
components:
|
||||||
|
{
|
||||||
|
Version
|
||||||
|
},
|
||||||
|
|
||||||
|
props:
|
||||||
|
{
|
||||||
|
content: { type: Array }
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
.versions
|
||||||
|
position absolute
|
||||||
|
top 30px
|
||||||
|
left 0
|
||||||
|
width 25%
|
||||||
|
height 100%
|
||||||
|
background rgba(255, 0, 0, 0.3)
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
<div class="versions">
|
||||||
|
<version v-for="version of content" :content="version"></version>
|
||||||
|
</div>
|
||||||
@@ -80,6 +80,16 @@ export default new Vuex.Store({
|
|||||||
deleteFile(state, data)
|
deleteFile(state, data)
|
||||||
{
|
{
|
||||||
state.files.removeFile(data.path.full)
|
state.files.removeFile(data.path.full)
|
||||||
|
},
|
||||||
|
|
||||||
|
setFile(state, data)
|
||||||
|
{
|
||||||
|
const file = state.files.getFile(data)
|
||||||
|
|
||||||
|
if(file)
|
||||||
|
{
|
||||||
|
state.file = file
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
Reference in New Issue
Block a user