✌️
This commit is contained in:
		
							parent
							
								
									5a711df958
								
							
						
					
					
						commit
						1c60dfe2d9
					
				
					 9 changed files with 81 additions and 16 deletions
				
			
		|  | @ -242,6 +242,12 @@ desktop: | ||||||
|     mk-drive-browser-nav-folder: |     mk-drive-browser-nav-folder: | ||||||
|       drive: "Drive" |       drive: "Drive" | ||||||
| 
 | 
 | ||||||
|  |     mk-selectdrive-page: | ||||||
|  |       title: "Choose a file(s)" | ||||||
|  |       ok: "OK" | ||||||
|  |       cancel: "Cancel" | ||||||
|  |       upload: "Upload a file(s) from you PC" | ||||||
|  | 
 | ||||||
|     mk-nav-home-widget: |     mk-nav-home-widget: | ||||||
|       about: "About" |       about: "About" | ||||||
|       stats: "Stats" |       stats: "Stats" | ||||||
|  |  | ||||||
|  | @ -242,6 +242,12 @@ desktop: | ||||||
|     mk-drive-browser-nav-folder: |     mk-drive-browser-nav-folder: | ||||||
|       drive: "ドライブ" |       drive: "ドライブ" | ||||||
| 
 | 
 | ||||||
|  |     mk-selectdrive-page: | ||||||
|  |       title: "ファイルを選択してください" | ||||||
|  |       ok: "決定" | ||||||
|  |       cancel: "キャンセル" | ||||||
|  |       upload: "PCからドライブにファイルをアップロード" | ||||||
|  | 
 | ||||||
|     mk-nav-home-widget: |     mk-nav-home-widget: | ||||||
|       about: "Misskeyについて" |       about: "Misskeyについて" | ||||||
|       stats: "統計" |       stats: "統計" | ||||||
|  |  | ||||||
|  | @ -7,15 +7,17 @@ const route = require('page'); | ||||||
| let page = null; | let page = null; | ||||||
| 
 | 
 | ||||||
| export default me => { | export default me => { | ||||||
| 	route('/',                 index); | 	route('/',                       index); | ||||||
| 	route('/selectdrive',      selectDrive); | 	route('/selectdrive',            selectDrive); | ||||||
| 	route('/i>mentions',       mentions); | 	route('/i/drive',                drive); | ||||||
| 	route('/post::post',       post); | 	route('/i/drive/folder/:folder', drive); | ||||||
| 	route('/search::query',    search); | 	route('/i/mentions',             mentions); | ||||||
| 	route('/:user',            user.bind(null, 'home')); | 	route('/post::post',             post); | ||||||
| 	route('/:user/graphs',     user.bind(null, 'graphs')); | 	route('/search::query',          search); | ||||||
| 	route('/:user/:post',      post); | 	route('/:user',                  user.bind(null, 'home')); | ||||||
| 	route('*',                 notFound); | 	route('/:user/graphs',           user.bind(null, 'graphs')); | ||||||
|  | 	route('/:user/:post',            post); | ||||||
|  | 	route('*',                       notFound); | ||||||
| 
 | 
 | ||||||
| 	function index() { | 	function index() { | ||||||
| 		me ? home() : entrance(); | 		me ? home() : entrance(); | ||||||
|  | @ -59,6 +61,12 @@ export default me => { | ||||||
| 		mount(document.createElement('mk-selectdrive-page')); | 		mount(document.createElement('mk-selectdrive-page')); | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
|  | 	function drive(ctx) { | ||||||
|  | 		const el = document.createElement('mk-drive-page'); | ||||||
|  | 		if (ctx.params.folder) el.setAttribute('folder', ctx.params.folder); | ||||||
|  | 		mount(el); | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
| 	function notFound() { | 	function notFound() { | ||||||
| 		mount(document.createElement('mk-not-found')); | 		mount(document.createElement('mk-not-found')); | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
|  | @ -2,7 +2,8 @@ | ||||||
| 	<nav> | 	<nav> | ||||||
| 		<div class="path" oncontextmenu={ pathOncontextmenu }> | 		<div class="path" oncontextmenu={ pathOncontextmenu }> | ||||||
| 			<mk-drive-browser-nav-folder class={ current: folder == null } folder={ null }/> | 			<mk-drive-browser-nav-folder class={ current: folder == null } folder={ null }/> | ||||||
| 			<virtual each={ folder in hierarchyFolders }><span class="separator"><i class="fa fa-angle-right"></i></span> | 			<virtual each={ folder in hierarchyFolders }> | ||||||
|  | 				<span class="separator"><i class="fa fa-angle-right"></i></span> | ||||||
| 				<mk-drive-browser-nav-folder folder={ folder }/> | 				<mk-drive-browser-nav-folder folder={ folder }/> | ||||||
| 			</virtual> | 			</virtual> | ||||||
| 			<span class="separator" if={ folder != null }><i class="fa fa-angle-right"></i></span> | 			<span class="separator" if={ folder != null }><i class="fa fa-angle-right"></i></span> | ||||||
|  | @ -571,6 +572,7 @@ | ||||||
| 				if (folder.parent) dive(folder.parent); | 				if (folder.parent) dive(folder.parent); | ||||||
| 
 | 
 | ||||||
| 				this.update(); | 				this.update(); | ||||||
|  | 				this.trigger('open-folder', folder); | ||||||
| 				this.fetch(); | 				this.fetch(); | ||||||
| 			}); | 			}); | ||||||
| 		}; | 		}; | ||||||
|  | @ -640,6 +642,7 @@ | ||||||
| 				folder: null, | 				folder: null, | ||||||
| 				hierarchyFolders: [] | 				hierarchyFolders: [] | ||||||
| 			}); | 			}); | ||||||
|  | 			this.trigger('move-root'); | ||||||
| 			this.fetch(); | 			this.fetch(); | ||||||
| 		}; | 		}; | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -62,6 +62,7 @@ require('./pages/post.tag'); | ||||||
| require('./pages/search.tag'); | require('./pages/search.tag'); | ||||||
| require('./pages/not-found.tag'); | require('./pages/not-found.tag'); | ||||||
| require('./pages/selectdrive.tag'); | require('./pages/selectdrive.tag'); | ||||||
|  | require('./pages/drive.tag'); | ||||||
| require('./autocomplete-suggestion.tag'); | require('./autocomplete-suggestion.tag'); | ||||||
| require('./progress-dialog.tag'); | require('./progress-dialog.tag'); | ||||||
| require('./user-preview.tag'); | require('./user-preview.tag'); | ||||||
|  |  | ||||||
							
								
								
									
										37
									
								
								src/web/app/desktop/tags/pages/drive.tag
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										37
									
								
								src/web/app/desktop/tags/pages/drive.tag
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,37 @@ | ||||||
|  | <mk-drive-page> | ||||||
|  | 	<mk-drive-browser ref="browser" folder={ opts.folder }/> | ||||||
|  | 	<style> | ||||||
|  | 		:scope | ||||||
|  | 			display block | ||||||
|  | 			position fixed | ||||||
|  | 			width 100% | ||||||
|  | 			height 100% | ||||||
|  | 			background #fff | ||||||
|  | 
 | ||||||
|  | 			> mk-drive-browser | ||||||
|  | 				height 100% | ||||||
|  | 	</style> | ||||||
|  | 	<script> | ||||||
|  | 		this.on('mount', () => { | ||||||
|  | 			document.title = 'Misskey Drive'; | ||||||
|  | 
 | ||||||
|  | 			this.refs.browser.on('move-root', () => { | ||||||
|  | 				const title = 'Misskey Drive'; | ||||||
|  | 
 | ||||||
|  | 				// Rewrite URL | ||||||
|  | 				history.pushState(null, title, '/i/drive'); | ||||||
|  | 
 | ||||||
|  | 				document.title = title; | ||||||
|  | 			}); | ||||||
|  | 
 | ||||||
|  | 			this.refs.browser.on('open-folder', folder => { | ||||||
|  | 				const title = folder.name + ' | Misskey Drive'; | ||||||
|  | 
 | ||||||
|  | 				// Rewrite URL | ||||||
|  | 				history.pushState(null, title, '/i/drive/folder/' + folder.id); | ||||||
|  | 
 | ||||||
|  | 				document.title = title; | ||||||
|  | 			}); | ||||||
|  | 		}); | ||||||
|  | 	</script> | ||||||
|  | </mk-drive-page> | ||||||
|  | @ -1,15 +1,16 @@ | ||||||
| <mk-selectdrive-page> | <mk-selectdrive-page> | ||||||
| 	<mk-drive-browser ref="browser" multiple={ multiple }/> | 	<mk-drive-browser ref="browser" multiple={ multiple }/> | ||||||
| 	<div> | 	<div> | ||||||
| 		<button class="upload" title="PCからドライブにファイルをアップロード" onclick={ upload }><i class="fa fa-upload"></i></button> | 		<button class="upload" title="%i18n:desktop.tags.mk-selectdrive-page.upload%" onclick={ upload }><i class="fa fa-upload"></i></button> | ||||||
| 		<button class="cancel" onclick={ close }>キャンセル</button> | 		<button class="cancel" onclick={ close }>%i18n:desktop.tags.mk-selectdrive-page.cancel%</button> | ||||||
| 		<button class="ok" onclick={ ok }>決定</button> | 		<button class="ok" onclick={ ok }>%i18n:desktop.tags.mk-selectdrive-page.ok%</button> | ||||||
| 	</div> | 	</div> | ||||||
| 
 | 
 | ||||||
| 	<style> | 	<style> | ||||||
| 		:scope | 		:scope | ||||||
| 			display block | 			display block | ||||||
| 			position fixed | 			position fixed | ||||||
|  | 			width 100% | ||||||
| 			height 100% | 			height 100% | ||||||
| 			background #fff | 			background #fff | ||||||
| 
 | 
 | ||||||
|  | @ -130,7 +131,7 @@ | ||||||
| 		this.multiple = q.get('multiple') == 'true' ? true : false; | 		this.multiple = q.get('multiple') == 'true' ? true : false; | ||||||
| 
 | 
 | ||||||
| 		this.on('mount', () => { | 		this.on('mount', () => { | ||||||
| 			document.documentElement.style.background = '#fff'; | 			document.title = '%i18n:desktop.tags.mk-selectdrive-page.title%'; | ||||||
| 
 | 
 | ||||||
| 			this.refs.browser.on('selected', file => { | 			this.refs.browser.on('selected', file => { | ||||||
| 				this.files = [file]; | 				this.files = [file]; | ||||||
|  |  | ||||||
|  | @ -564,7 +564,7 @@ | ||||||
| 				<p><i class="fa fa-cloud"></i>%i18n:desktop.tags.mk-ui-header-account.drive%<i class="fa fa-angle-right"></i></p> | 				<p><i class="fa fa-cloud"></i>%i18n:desktop.tags.mk-ui-header-account.drive%<i class="fa fa-angle-right"></i></p> | ||||||
| 			</li> | 			</li> | ||||||
| 			<li> | 			<li> | ||||||
| 				<a href="/i>mentions"><i class="fa fa-at"></i>%i18n:desktop.tags.mk-ui-header-account.mentions%<i class="fa fa-angle-right"></i></a> | 				<a href="/i/mentions"><i class="fa fa-at"></i>%i18n:desktop.tags.mk-ui-header-account.mentions%<i class="fa fa-angle-right"></i></a> | ||||||
| 			</li> | 			</li> | ||||||
| 		</ul> | 		</ul> | ||||||
| 		<ul> | 		<ul> | ||||||
|  |  | ||||||
|  | @ -2,7 +2,7 @@ | ||||||
| 	<div class="container"> | 	<div class="container"> | ||||||
| 		<div class="thumbnail" style={ 'background-image: url(' + file.url + '?thumbnail&size=128)' }></div> | 		<div class="thumbnail" style={ 'background-image: url(' + file.url + '?thumbnail&size=128)' }></div> | ||||||
| 		<div class="body"> | 		<div class="body"> | ||||||
| 			<p class="name">{ file.name }</p> | 			<p class="name"><span>{ file.name.lastIndexOf('.') != -1 ? file.name.substr(0, file.name.lastIndexOf('.')) : file.name }</span><span class="ext" if={ file.name.lastIndexOf('.') != -1 }>{ file.name.substr(file.name.lastIndexOf('.')) }</span></p> | ||||||
| 			<!-- | 			<!-- | ||||||
| 			if file.tags.length > 0 | 			if file.tags.length > 0 | ||||||
| 				ul.tags | 				ul.tags | ||||||
|  | @ -64,6 +64,9 @@ | ||||||
| 						text-overflow ellipsis | 						text-overflow ellipsis | ||||||
| 						overflow-wrap break-word | 						overflow-wrap break-word | ||||||
| 
 | 
 | ||||||
|  | 						> .ext | ||||||
|  | 							opacity 0.5 | ||||||
|  | 
 | ||||||
| 					> .tags | 					> .tags | ||||||
| 						display block | 						display block | ||||||
| 						margin 4px 0 0 0 | 						margin 4px 0 0 0 | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue