prepare export modal

This commit is contained in:
marlon-erler
2026-08-29 23:44:00 +02:00
parent 9deb365d3d
commit f5ce48a485
5 changed files with 843 additions and 454 deletions
+364 -47
View File
@@ -28,10 +28,10 @@ nnoremap \1 :call SN("1")
nmap \rn <Plug>(coc-rename) nmap \rn <Plug>(coc-rename)
xmap gx <Plug>NetrwBrowseXVis xmap gx <Plug>NetrwBrowseXVis
nmap gx <Plug>NetrwBrowseX nmap gx <Plug>NetrwBrowseX
snoremap <silent> <BS> c
snoremap <silent> <Del> c
snoremap <silent> <C-H> c
snoremap <C-R> "_c snoremap <C-R> "_c
snoremap <silent> <C-H> c
snoremap <silent> <Del> c
snoremap <silent> <BS> c
nnoremap <silent> <Plug>GitGutterPreviewHunk :call gitgutter#utility#warn('Please change your map <Plug>GitGutterPreviewHunk to <Plug>(GitGutterPreviewHunk)') nnoremap <silent> <Plug>GitGutterPreviewHunk :call gitgutter#utility#warn('Please change your map <Plug>GitGutterPreviewHunk to <Plug>(GitGutterPreviewHunk)')
nnoremap <silent> <Plug>(GitGutterPreviewHunk) :GitGutterPreviewHunk nnoremap <silent> <Plug>(GitGutterPreviewHunk) :GitGutterPreviewHunk
nnoremap <silent> <Plug>GitGutterUndoHunk :call gitgutter#utility#warn('Please change your map <Plug>GitGutterUndoHunk to <Plug>(GitGutterUndoHunk)') nnoremap <silent> <Plug>GitGutterUndoHunk :call gitgutter#utility#warn('Please change your map <Plug>GitGutterUndoHunk to <Plug>(GitGutterUndoHunk)')
@@ -154,19 +154,22 @@ if &shortmess =~ 'A'
else else
set shortmess=aoO set shortmess=aoO
endif endif
badd +1 src/Model/Global/fileTransferModel.ts badd +135 src/Model/Global/fileTransferModel.ts
badd +1 src/Model/Utility/utility.ts badd +1 src/Model/Utility/utility.ts
badd +1 src/View/Modals/dataTransferModal.tsx badd +1 src/View/Modals/dataTransferModal.tsx
badd +1 src/View/translations.ts badd +1 src/View/translations.ts
badd +133 src/View/homePage.tsx badd +133 src/View/homePage.tsx
badd +0 src/ViewModel/Global/fileTransferViewModel.ts badd +1 src/ViewModel/Global/fileTransferViewModel.ts
badd +10 src/View/Components/homePageButton.tsx
badd +107 src/View/Modals/settingsModal.tsx
badd +0 src/View/Components/navigationButton.tsx
argglobal argglobal
%argdel %argdel
set stal=2 set stal=2
tabnew +setlocal\ bufhidden=wipe tabnew +setlocal\ bufhidden=wipe
tabnew +setlocal\ bufhidden=wipe tabnew +setlocal\ bufhidden=wipe
tabrewind tabrewind
edit src/Model/Global/fileTransferModel.ts edit src/View/Modals/settingsModal.tsx
let s:save_splitbelow = &splitbelow let s:save_splitbelow = &splitbelow
let s:save_splitright = &splitright let s:save_splitright = &splitright
set splitbelow splitright set splitbelow splitright
@@ -174,7 +177,14 @@ wincmd _ | wincmd |
vsplit vsplit
wincmd _ | wincmd | wincmd _ | wincmd |
vsplit vsplit
2wincmd h wincmd _ | wincmd |
vsplit
3wincmd h
wincmd w
wincmd w
wincmd _ | wincmd |
split
1wincmd k
wincmd w wincmd w
wincmd w wincmd w
let &splitbelow = s:save_splitbelow let &splitbelow = s:save_splitbelow
@@ -187,12 +197,15 @@ set winheight=1
set winminwidth=0 set winminwidth=0
set winwidth=1 set winwidth=1
exe 'vert 1resize ' . ((&columns * 54 + 127) / 255) exe 'vert 1resize ' . ((&columns * 54 + 127) / 255)
exe 'vert 2resize ' . ((&columns * 196 + 127) / 255) exe 'vert 2resize ' . ((&columns * 98 + 127) / 255)
exe 'vert 3resize ' . ((&columns * 3 + 127) / 255) exe '3resize ' . ((&lines * 21 + 23) / 46)
exe 'vert 3resize ' . ((&columns * 97 + 127) / 255)
exe '4resize ' . ((&lines * 21 + 23) / 46)
exe 'vert 4resize ' . ((&columns * 97 + 127) / 255)
exe 'vert 5resize ' . ((&columns * 3 + 127) / 255)
argglobal argglobal
enew enew
file NERD_tree_tab_1 file NERD_tree_tab_1
balt src/Model/Global/fileTransferModel.ts
let s:cpo_save=&cpo let s:cpo_save=&cpo
set cpo&vim set cpo&vim
nnoremap <buffer> <silent> <NL> :call nerdtree#ui_glue#invokeKeyMap("<C-j>") nnoremap <buffer> <silent> <NL> :call nerdtree#ui_glue#invokeKeyMap("<C-j>")
@@ -382,6 +395,7 @@ setlocal nowrap
setlocal wrapmargin=0 setlocal wrapmargin=0
wincmd w wincmd w
argglobal argglobal
balt src/View/Components/homePageButton.tsx
let s:cpo_save=&cpo let s:cpo_save=&cpo
set cpo&vim set cpo&vim
nmap <buffer> [c <Plug>(GitGutterPrevHunk) nmap <buffer> [c <Plug>(GitGutterPrevHunk)
@@ -431,8 +445,8 @@ setlocal nodiff
setlocal equalprg= setlocal equalprg=
setlocal errorformat=%+A\ %#%f\ %#(%l\\,%c):\ %m,%C%m setlocal errorformat=%+A\ %#%f\ %#(%l\\,%c):\ %m,%C%m
setlocal noexpandtab setlocal noexpandtab
if &filetype != 'typescript' if &filetype != 'typescriptreact'
setlocal filetype=typescript setlocal filetype=typescriptreact
endif endif
setlocal fillchars= setlocal fillchars=
setlocal fixendofline setlocal fixendofline
@@ -455,8 +469,8 @@ setlocal iminsert=0
setlocal imsearch=-1 setlocal imsearch=-1
setlocal include= setlocal include=
setlocal includeexpr= setlocal includeexpr=
setlocal indentexpr=GetTypescriptIndent() setlocal indentexpr=GetTsxIndent()
setlocal indentkeys=0{,0},0),0],:,0#,!^F,o,O,e,0],0) setlocal indentkeys=0{,0},0),0],0,,!^F,o,O,e,*<Return>,<>>,<<>,/
setlocal noinfercase setlocal noinfercase
setlocal iskeyword=@,48-57,_,192-255,$ setlocal iskeyword=@,48-57,_,192-255,$
setlocal keywordprg= setlocal keywordprg=
@@ -504,8 +518,8 @@ setlocal statusline=
setlocal suffixesadd=.ts,.tsx setlocal suffixesadd=.ts,.tsx
setlocal swapfile setlocal swapfile
setlocal synmaxcol=3000 setlocal synmaxcol=3000
if &syntax != 'typescript' if &syntax != 'typescriptreact'
setlocal syntax=typescript setlocal syntax=typescriptreact
endif endif
setlocal tabstop=8 setlocal tabstop=8
setlocal tagcase= setlocal tagcase=
@@ -529,14 +543,328 @@ setlocal wrap
setlocal wrapmargin=0 setlocal wrapmargin=0
silent! normal! zE silent! normal! zE
let &fdl = &fdl let &fdl = &fdl
let s:l = 130 - ((0 * winheight(0) + 23) / 47) let s:l = 67 - ((18 * winheight(0) + 21) / 43)
if s:l < 1 | let s:l = 1 | endif if s:l < 1 | let s:l = 1 | endif
keepjumps exe s:l keepjumps exe s:l
normal! zt normal! zt
keepjumps 130 keepjumps 67
normal! 0
wincmd w
argglobal
if bufexists(fnamemodify("src/View/Modals/settingsModal.tsx", ":p")) | buffer src/View/Modals/settingsModal.tsx | else | edit src/View/Modals/settingsModal.tsx | endif
balt src/View/Components/homePageButton.tsx
let s:cpo_save=&cpo
set cpo&vim
nmap <buffer> [c <Plug>(GitGutterPrevHunk)
nmap <buffer> \hp <Plug>(GitGutterPreviewHunk)
nmap <buffer> \hu <Plug>(GitGutterUndoHunk)
nmap <buffer> \hs <Plug>(GitGutterStageHunk)
xmap <buffer> \hs <Plug>(GitGutterStageHunk)
nmap <buffer> ]c <Plug>(GitGutterNextHunk)
xmap <buffer> ac <Plug>(GitGutterTextObjectOuterVisual)
omap <buffer> ac <Plug>(GitGutterTextObjectOuterPending)
xmap <buffer> ic <Plug>(GitGutterTextObjectInnerVisual)
omap <buffer> ic <Plug>(GitGutterTextObjectInnerPending)
let &cpo=s:cpo_save
unlet s:cpo_save
setlocal keymap=
setlocal noarabic
setlocal autoindent
setlocal backupcopy=
setlocal balloonexpr=
setlocal nobinary
setlocal nobreakindent
setlocal breakindentopt=
setlocal bufhidden=
setlocal buflisted
setlocal buftype=
setlocal nocindent
setlocal cinkeys=0{,0},0),0],:,0#,!^F,o,O,e
setlocal cinoptions=
setlocal cinscopedecls=public,protected,private
setlocal cinwords=if,else,while,do,for,switch
setlocal colorcolumn=
setlocal comments=s1:/*,mb:*,ex:*/,://,b:#,:%,:XCOMM,n:>,fb:-
setlocal commentstring=//\ %s
setlocal complete=.,w,b,u,t,i
setlocal concealcursor=
setlocal conceallevel=0
setlocal completefunc=
setlocal nocopyindent
setlocal cryptmethod=
setlocal nocursorbind
setlocal nocursorcolumn
setlocal nocursorline
setlocal cursorlineopt=both
setlocal define=
setlocal dictionary=
setlocal nodiff
setlocal equalprg=
setlocal errorformat=%+A\ %#%f\ %#(%l\\,%c):\ %m,%C%m
setlocal noexpandtab
if &filetype != 'typescriptreact'
setlocal filetype=typescriptreact
endif
setlocal fillchars=
setlocal fixendofline
setlocal foldcolumn=0
setlocal foldenable
setlocal foldexpr=0
setlocal foldignore=#
setlocal foldlevel=0
setlocal foldmarker={{{,}}}
setlocal foldmethod=manual
setlocal foldminlines=1
setlocal foldnestmax=20
setlocal foldtext=foldtext()
setlocal formatexpr=
setlocal formatoptions=croql
setlocal formatlistpat=^\\s*\\d\\+[\\]:.)}\\t\ ]\\s*
setlocal formatprg=
setlocal grepprg=
setlocal iminsert=0
setlocal imsearch=-1
setlocal include=
setlocal includeexpr=
setlocal indentexpr=GetTsxIndent()
setlocal indentkeys=0{,0},0),0],0,,!^F,o,O,e,*<Return>,<>>,<<>,/
setlocal noinfercase
setlocal iskeyword=@,48-57,_,192-255,$
setlocal keywordprg=
setlocal nolinebreak
setlocal nolisp
setlocal lispoptions=
setlocal lispwords=
setlocal nolist
setlocal listchars=
setlocal makeencoding=
setlocal makeprg=tsc\ \ $*\ %
setlocal matchpairs=(:),{:},[:]
setlocal nomodeline
setlocal modifiable
setlocal nrformats=bin,octal,hex
set number
setlocal number
setlocal numberwidth=4
setlocal omnifunc=
setlocal path=
setlocal nopreserveindent
setlocal nopreviewwindow
setlocal quoteescape=\\
setlocal noreadonly
setlocal norelativenumber
setlocal norightleft
setlocal rightleftcmd=search
setlocal noscrollbind
setlocal scrolloff=-1
setlocal shiftwidth=4
setlocal noshortname
setlocal showbreak=
setlocal sidescrolloff=-1
set signcolumn=yes
setlocal signcolumn=yes
setlocal nosmartindent
setlocal nosmoothscroll
setlocal softtabstop=0
setlocal nospell
setlocal spellcapcheck=[.?!]\\_[\\])'\"\ \ ]\\+
setlocal spellfile=
setlocal spelllang=en
setlocal spelloptions=
setlocal statusline=
setlocal suffixesadd=.ts,.tsx
setlocal swapfile
setlocal synmaxcol=3000
if &syntax != 'typescriptreact'
setlocal syntax=typescriptreact
endif
setlocal tabstop=8
setlocal tagcase=
setlocal tagfunc=
setlocal tags=
setlocal termwinkey=
setlocal termwinscroll=10000
setlocal termwinsize=
setlocal textwidth=0
setlocal thesaurus=
setlocal thesaurusfunc=
setlocal noundofile
setlocal undolevels=-123456
setlocal varsofttabstop=
setlocal vartabstop=
setlocal virtualedit=
setlocal wincolor=
setlocal nowinfixheight
setlocal nowinfixwidth
setlocal wrap
setlocal wrapmargin=0
silent! normal! zE
let &fdl = &fdl
let s:l = 109 - ((15 * winheight(0) + 10) / 21)
if s:l < 1 | let s:l = 1 | endif
keepjumps exe s:l
normal! zt
keepjumps 109
normal! $ normal! $
wincmd w wincmd w
argglobal argglobal
if bufexists(fnamemodify("src/View/Components/navigationButton.tsx", ":p")) | buffer src/View/Components/navigationButton.tsx | else | edit src/View/Components/navigationButton.tsx | endif
balt src/View/Modals/settingsModal.tsx
let s:cpo_save=&cpo
set cpo&vim
nmap <buffer> [c <Plug>(GitGutterPrevHunk)
nmap <buffer> \hp <Plug>(GitGutterPreviewHunk)
nmap <buffer> \hu <Plug>(GitGutterUndoHunk)
nmap <buffer> \hs <Plug>(GitGutterStageHunk)
xmap <buffer> \hs <Plug>(GitGutterStageHunk)
nmap <buffer> ]c <Plug>(GitGutterNextHunk)
xmap <buffer> ac <Plug>(GitGutterTextObjectOuterVisual)
omap <buffer> ac <Plug>(GitGutterTextObjectOuterPending)
xmap <buffer> ic <Plug>(GitGutterTextObjectInnerVisual)
omap <buffer> ic <Plug>(GitGutterTextObjectInnerPending)
let &cpo=s:cpo_save
unlet s:cpo_save
setlocal keymap=
setlocal noarabic
setlocal autoindent
setlocal backupcopy=
setlocal balloonexpr=
setlocal nobinary
setlocal nobreakindent
setlocal breakindentopt=
setlocal bufhidden=
setlocal buflisted
setlocal buftype=
setlocal nocindent
setlocal cinkeys=0{,0},0),0],:,0#,!^F,o,O,e
setlocal cinoptions=
setlocal cinscopedecls=public,protected,private
setlocal cinwords=if,else,while,do,for,switch
setlocal colorcolumn=
setlocal comments=s1:/*,mb:*,ex:*/,://,b:#,:%,:XCOMM,n:>,fb:-
setlocal commentstring=//\ %s
setlocal complete=.,w,b,u,t,i
setlocal concealcursor=
setlocal conceallevel=0
setlocal completefunc=
setlocal nocopyindent
setlocal cryptmethod=
setlocal nocursorbind
setlocal nocursorcolumn
setlocal nocursorline
setlocal cursorlineopt=both
setlocal define=
setlocal dictionary=
setlocal nodiff
setlocal equalprg=
setlocal errorformat=%+A\ %#%f\ %#(%l\\,%c):\ %m,%C%m
setlocal noexpandtab
if &filetype != 'typescriptreact'
setlocal filetype=typescriptreact
endif
setlocal fillchars=
setlocal fixendofline
setlocal foldcolumn=0
setlocal foldenable
setlocal foldexpr=0
setlocal foldignore=#
setlocal foldlevel=0
setlocal foldmarker={{{,}}}
setlocal foldmethod=manual
setlocal foldminlines=1
setlocal foldnestmax=20
setlocal foldtext=foldtext()
setlocal formatexpr=
setlocal formatoptions=croql
setlocal formatlistpat=^\\s*\\d\\+[\\]:.)}\\t\ ]\\s*
setlocal formatprg=
setlocal grepprg=
setlocal iminsert=0
setlocal imsearch=-1
setlocal include=
setlocal includeexpr=
setlocal indentexpr=GetTsxIndent()
setlocal indentkeys=0{,0},0),0],0,,!^F,o,O,e,*<Return>,<>>,<<>,/
setlocal noinfercase
setlocal iskeyword=@,48-57,_,192-255,$
setlocal keywordprg=
setlocal nolinebreak
setlocal nolisp
setlocal lispoptions=
setlocal lispwords=
setlocal nolist
setlocal listchars=
setlocal makeencoding=
setlocal makeprg=tsc\ \ $*\ %
setlocal matchpairs=(:),{:},[:]
setlocal nomodeline
setlocal modifiable
setlocal nrformats=bin,octal,hex
set number
setlocal number
setlocal numberwidth=4
setlocal omnifunc=
setlocal path=
setlocal nopreserveindent
setlocal nopreviewwindow
setlocal quoteescape=\\
setlocal noreadonly
setlocal norelativenumber
setlocal norightleft
setlocal rightleftcmd=search
setlocal noscrollbind
setlocal scrolloff=-1
setlocal shiftwidth=4
setlocal noshortname
setlocal showbreak=
setlocal sidescrolloff=-1
set signcolumn=yes
setlocal signcolumn=yes
setlocal nosmartindent
setlocal nosmoothscroll
setlocal softtabstop=0
setlocal nospell
setlocal spellcapcheck=[.?!]\\_[\\])'\"\ \ ]\\+
setlocal spellfile=
setlocal spelllang=en
setlocal spelloptions=
setlocal statusline=
setlocal suffixesadd=.ts,.tsx
setlocal swapfile
setlocal synmaxcol=3000
if &syntax != 'typescriptreact'
setlocal syntax=typescriptreact
endif
setlocal tabstop=8
setlocal tagcase=
setlocal tagfunc=
setlocal tags=
setlocal termwinkey=
setlocal termwinscroll=10000
setlocal termwinsize=
setlocal textwidth=0
setlocal thesaurus=
setlocal thesaurusfunc=
setlocal noundofile
setlocal undolevels=-123456
setlocal varsofttabstop=
setlocal vartabstop=
setlocal virtualedit=
setlocal wincolor=
setlocal nowinfixheight
setlocal nowinfixwidth
setlocal wrap
setlocal wrapmargin=0
silent! normal! zE
let &fdl = &fdl
let s:l = 15 - ((5 * winheight(0) + 10) / 21)
if s:l < 1 | let s:l = 1 | endif
keepjumps exe s:l
normal! zt
keepjumps 15
normal! 0
wincmd w
argglobal
if bufexists(fnamemodify("src/Model/Utility/utility.ts", ":p")) | buffer src/Model/Utility/utility.ts | else | edit src/Model/Utility/utility.ts | endif if bufexists(fnamemodify("src/Model/Utility/utility.ts", ":p")) | buffer src/Model/Utility/utility.ts | else | edit src/Model/Utility/utility.ts | endif
balt src/Model/Global/fileTransferModel.ts balt src/Model/Global/fileTransferModel.ts
let s:cpo_save=&cpo let s:cpo_save=&cpo
@@ -686,7 +1014,7 @@ setlocal wrap
setlocal wrapmargin=0 setlocal wrapmargin=0
silent! normal! zE silent! normal! zE
let &fdl = &fdl let &fdl = &fdl
let s:l = 233 - ((0 * winheight(0) + 23) / 47) let s:l = 233 - ((0 * winheight(0) + 21) / 43)
if s:l < 1 | let s:l = 1 | endif if s:l < 1 | let s:l = 1 | endif
keepjumps exe s:l keepjumps exe s:l
normal! zt normal! zt
@@ -694,8 +1022,12 @@ keepjumps 233
normal! 017| normal! 017|
wincmd w wincmd w
exe 'vert 1resize ' . ((&columns * 54 + 127) / 255) exe 'vert 1resize ' . ((&columns * 54 + 127) / 255)
exe 'vert 2resize ' . ((&columns * 196 + 127) / 255) exe 'vert 2resize ' . ((&columns * 98 + 127) / 255)
exe 'vert 3resize ' . ((&columns * 3 + 127) / 255) exe '3resize ' . ((&lines * 21 + 23) / 46)
exe 'vert 3resize ' . ((&columns * 97 + 127) / 255)
exe '4resize ' . ((&lines * 21 + 23) / 46)
exe 'vert 4resize ' . ((&columns * 97 + 127) / 255)
exe 'vert 5resize ' . ((&columns * 3 + 127) / 255)
tabnext tabnext
edit src/View/translations.ts edit src/View/translations.ts
let s:save_splitbelow = &splitbelow let s:save_splitbelow = &splitbelow
@@ -722,7 +1054,7 @@ exe 'vert 2resize ' . ((&columns * 111 + 127) / 255)
exe 'vert 3resize ' . ((&columns * 111 + 127) / 255) exe 'vert 3resize ' . ((&columns * 111 + 127) / 255)
argglobal argglobal
enew enew
file NERD_tree_tab_3 file NERD_tree_tab_4
let s:cpo_save=&cpo let s:cpo_save=&cpo
set cpo&vim set cpo&vim
nnoremap <buffer> <silent> <NL> :call nerdtree#ui_glue#invokeKeyMap("<C-j>") nnoremap <buffer> <silent> <NL> :call nerdtree#ui_glue#invokeKeyMap("<C-j>")
@@ -745,14 +1077,6 @@ nnoremap <buffer> <silent> R :call nerdtree#ui_glue#invokeKeyMap("R")
nnoremap <buffer> <silent> T :call nerdtree#ui_glue#invokeKeyMap("T") nnoremap <buffer> <silent> T :call nerdtree#ui_glue#invokeKeyMap("T")
nnoremap <buffer> <silent> U :call nerdtree#ui_glue#invokeKeyMap("U") nnoremap <buffer> <silent> U :call nerdtree#ui_glue#invokeKeyMap("U")
nnoremap <buffer> <silent> X :call nerdtree#ui_glue#invokeKeyMap("X") nnoremap <buffer> <silent> X :call nerdtree#ui_glue#invokeKeyMap("X")
nmap <buffer> [c <Plug>(GitGutterPrevHunk)
nmap <buffer> \hp <Plug>(GitGutterPreviewHunk)
nmap <buffer> \hu <Plug>(GitGutterUndoHunk)
nmap <buffer> \hs <Plug>(GitGutterStageHunk)
xmap <buffer> \hs <Plug>(GitGutterStageHunk)
nmap <buffer> ]c <Plug>(GitGutterNextHunk)
xmap <buffer> ac <Plug>(GitGutterTextObjectOuterVisual)
omap <buffer> ac <Plug>(GitGutterTextObjectOuterPending)
nnoremap <buffer> <silent> cd :call nerdtree#ui_glue#invokeKeyMap("cd") nnoremap <buffer> <silent> cd :call nerdtree#ui_glue#invokeKeyMap("cd")
nnoremap <buffer> <silent> e :call nerdtree#ui_glue#invokeKeyMap("e") nnoremap <buffer> <silent> e :call nerdtree#ui_glue#invokeKeyMap("e")
nnoremap <buffer> <silent> f :call nerdtree#ui_glue#invokeKeyMap("f") nnoremap <buffer> <silent> f :call nerdtree#ui_glue#invokeKeyMap("f")
@@ -760,8 +1084,6 @@ nnoremap <buffer> <silent> go :call nerdtree#ui_glue#invokeKeyMap("go")
nnoremap <buffer> <silent> gb :call nerdtree#ui_glue#invokeKeyMap("gb") nnoremap <buffer> <silent> gb :call nerdtree#ui_glue#invokeKeyMap("gb")
nnoremap <buffer> <silent> gi :call nerdtree#ui_glue#invokeKeyMap("gi") nnoremap <buffer> <silent> gi :call nerdtree#ui_glue#invokeKeyMap("gi")
nnoremap <buffer> <silent> gs :call nerdtree#ui_glue#invokeKeyMap("gs") nnoremap <buffer> <silent> gs :call nerdtree#ui_glue#invokeKeyMap("gs")
xmap <buffer> ic <Plug>(GitGutterTextObjectInnerVisual)
omap <buffer> ic <Plug>(GitGutterTextObjectInnerPending)
nnoremap <buffer> <silent> i :call nerdtree#ui_glue#invokeKeyMap("i") nnoremap <buffer> <silent> i :call nerdtree#ui_glue#invokeKeyMap("i")
nnoremap <buffer> <silent> m :call nerdtree#ui_glue#invokeKeyMap("m") nnoremap <buffer> <silent> m :call nerdtree#ui_glue#invokeKeyMap("m")
nnoremap <buffer> <silent> o :call nerdtree#ui_glue#invokeKeyMap("o") nnoremap <buffer> <silent> o :call nerdtree#ui_glue#invokeKeyMap("o")
@@ -1060,22 +1382,20 @@ setlocal wrap
setlocal wrapmargin=0 setlocal wrapmargin=0
silent! normal! zE silent! normal! zE
let &fdl = &fdl let &fdl = &fdl
let s:l = 123 - ((20 * winheight(0) + 23) / 47) let s:l = 706 - ((17 * winheight(0) + 21) / 43)
if s:l < 1 | let s:l = 1 | endif if s:l < 1 | let s:l = 1 | endif
keepjumps exe s:l keepjumps exe s:l
normal! zt normal! zt
keepjumps 123 keepjumps 706
normal! 0 normal! $
wincmd w wincmd w
argglobal argglobal
if bufexists(fnamemodify("src/View/Modals/dataTransferModal.tsx", ":p")) | buffer src/View/Modals/dataTransferModal.tsx | else | edit src/View/Modals/dataTransferModal.tsx | endif if bufexists(fnamemodify("src/View/Modals/dataTransferModal.tsx", ":p")) | buffer src/View/Modals/dataTransferModal.tsx | else | edit src/View/Modals/dataTransferModal.tsx | endif
balt src/View/homePage.tsx balt src/View/homePage.tsx
let s:cpo_save=&cpo let s:cpo_save=&cpo
set cpo&vim set cpo&vim
imap <buffer> <nowait> <silent> <C-K> <Cmd>:call coc#snippet#jump(0, 0)
imap <buffer> <nowait> <silent> <C-J> <Cmd>:call coc#snippet#jump(1, 0) imap <buffer> <nowait> <silent> <C-J> <Cmd>:call coc#snippet#jump(1, 0)
smap <buffer> <nowait> <silent> <NL> <Cmd>:call coc#snippet#jump(1, 0) imap <buffer> <nowait> <silent> <C-K> <Cmd>:call coc#snippet#jump(0, 0)
smap <buffer> <nowait> <silent>  <Cmd>:call coc#snippet#jump(0, 0)
nmap <buffer> [c <Plug>(GitGutterPrevHunk) nmap <buffer> [c <Plug>(GitGutterPrevHunk)
nmap <buffer> \hp <Plug>(GitGutterPreviewHunk) nmap <buffer> \hp <Plug>(GitGutterPreviewHunk)
nmap <buffer> \hu <Plug>(GitGutterUndoHunk) nmap <buffer> \hu <Plug>(GitGutterUndoHunk)
@@ -1086,8 +1406,6 @@ xmap <buffer> ac <Plug>(GitGutterTextObjectOuterVisual)
omap <buffer> ac <Plug>(GitGutterTextObjectOuterPending) omap <buffer> ac <Plug>(GitGutterTextObjectOuterPending)
xmap <buffer> ic <Plug>(GitGutterTextObjectInnerVisual) xmap <buffer> ic <Plug>(GitGutterTextObjectInnerVisual)
omap <buffer> ic <Plug>(GitGutterTextObjectInnerPending) omap <buffer> ic <Plug>(GitGutterTextObjectInnerPending)
smap <buffer> <nowait> <silent> <C-K> <Cmd>:call coc#snippet#jump(0, 0)
smap <buffer> <nowait> <silent> <C-J> <Cmd>:call coc#snippet#jump(1, 0)
imap <buffer> <nowait> <silent> <NL> <Cmd>:call coc#snippet#jump(1, 0) imap <buffer> <nowait> <silent> <NL> <Cmd>:call coc#snippet#jump(1, 0)
imap <buffer> <nowait> <silent>  <Cmd>:call coc#snippet#jump(0, 0) imap <buffer> <nowait> <silent>  <Cmd>:call coc#snippet#jump(0, 0)
let &cpo=s:cpo_save let &cpo=s:cpo_save
@@ -1225,11 +1543,11 @@ setlocal wrap
setlocal wrapmargin=0 setlocal wrapmargin=0
silent! normal! zE silent! normal! zE
let &fdl = &fdl let &fdl = &fdl
let s:l = 31 - ((30 * winheight(0) + 23) / 47) let s:l = 12 - ((11 * winheight(0) + 21) / 43)
if s:l < 1 | let s:l = 1 | endif if s:l < 1 | let s:l = 1 | endif
keepjumps exe s:l keepjumps exe s:l
normal! zt normal! zt
keepjumps 31 keepjumps 12
normal! $ normal! $
wincmd w wincmd w
3wincmd w 3wincmd w
@@ -1258,8 +1576,7 @@ exe 'vert 1resize ' . ((&columns * 31 + 127) / 255)
exe 'vert 2resize ' . ((&columns * 223 + 127) / 255) exe 'vert 2resize ' . ((&columns * 223 + 127) / 255)
argglobal argglobal
enew enew
file NERD_tree_tab_4 file NERD_tree_tab_3
balt src/ViewModel/Global/fileTransferViewModel.ts
let s:cpo_save=&cpo let s:cpo_save=&cpo
set cpo&vim set cpo&vim
nnoremap <buffer> <silent> <NL> :call nerdtree#ui_glue#invokeKeyMap("<C-j>") nnoremap <buffer> <silent> <NL> :call nerdtree#ui_glue#invokeKeyMap("<C-j>")
@@ -1297,9 +1614,9 @@ nnoremap <buffer> <silent> go :call nerdtree#ui_glue#invokeKeyMap("go")
nnoremap <buffer> <silent> gb :call nerdtree#ui_glue#invokeKeyMap("gb") nnoremap <buffer> <silent> gb :call nerdtree#ui_glue#invokeKeyMap("gb")
nnoremap <buffer> <silent> gi :call nerdtree#ui_glue#invokeKeyMap("gi") nnoremap <buffer> <silent> gi :call nerdtree#ui_glue#invokeKeyMap("gi")
nnoremap <buffer> <silent> gs :call nerdtree#ui_glue#invokeKeyMap("gs") nnoremap <buffer> <silent> gs :call nerdtree#ui_glue#invokeKeyMap("gs")
nnoremap <buffer> <silent> i :call nerdtree#ui_glue#invokeKeyMap("i")
xmap <buffer> ic <Plug>(GitGutterTextObjectInnerVisual) xmap <buffer> ic <Plug>(GitGutterTextObjectInnerVisual)
omap <buffer> ic <Plug>(GitGutterTextObjectInnerPending) omap <buffer> ic <Plug>(GitGutterTextObjectInnerPending)
nnoremap <buffer> <silent> i :call nerdtree#ui_glue#invokeKeyMap("i")
nnoremap <buffer> <silent> m :call nerdtree#ui_glue#invokeKeyMap("m") nnoremap <buffer> <silent> m :call nerdtree#ui_glue#invokeKeyMap("m")
nnoremap <buffer> <silent> o :call nerdtree#ui_glue#invokeKeyMap("o") nnoremap <buffer> <silent> o :call nerdtree#ui_glue#invokeKeyMap("o")
nnoremap <buffer> <silent> p :call nerdtree#ui_glue#invokeKeyMap("p") nnoremap <buffer> <silent> p :call nerdtree#ui_glue#invokeKeyMap("p")
@@ -1597,11 +1914,11 @@ setlocal wrap
setlocal wrapmargin=0 setlocal wrapmargin=0
silent! normal! zE silent! normal! zE
let &fdl = &fdl let &fdl = &fdl
let s:l = 163 - ((34 * winheight(0) + 23) / 47) let s:l = 139 - ((9 * winheight(0) + 21) / 43)
if s:l < 1 | let s:l = 1 | endif if s:l < 1 | let s:l = 1 | endif
keepjumps exe s:l keepjumps exe s:l
normal! zt normal! zt
keepjumps 163 keepjumps 139
normal! $ normal! $
wincmd w wincmd w
exe 'vert 1resize ' . ((&columns * 31 + 127) / 255) exe 'vert 1resize ' . ((&columns * 31 + 127) / 255)
+30 -12
View File
@@ -1833,8 +1833,11 @@
this.showTransferDataInputModal = () => { this.showTransferDataInputModal = () => {
this.presentedModal.value = 4 /* TransferDataInput */; this.presentedModal.value = 4 /* TransferDataInput */;
}; };
this.showExportModal = () => {
this.presentedModal.value = 6 /* ExportModal */;
};
this.showImportModal = () => { this.showImportModal = () => {
this.presentedModal.value = 6 /* ImportModal */; this.presentedModal.value = 7 /* ImportModal */;
}; };
this.prepareReceivingData = () => { this.prepareReceivingData = () => {
if (this.cannotPrepareToReceive.value == true) return; if (this.cannotPrepareToReceive.value == true) return;
@@ -6678,7 +6681,7 @@
coreViewModel2, coreViewModel2,
connectionViewModel2, connectionViewModel2,
fileTransferViewModel2 fileTransferViewModel2
), FileSelectionModal(coreViewModel2, fileTransferViewModel2), TransferDataDisplayModal(coreViewModel2, fileTransferViewModel2), TransferDisplayModal(coreViewModel2, fileTransferViewModel2), TransferDataInputModal(coreViewModel2, fileTransferViewModel2), DataReceptionModal(coreViewModel2, fileTransferViewModel2), ImportModal(coreViewModel2, fileTransferViewModel2)); ), FileSelectionModal(coreViewModel2, fileTransferViewModel2), TransferDataDisplayModal(coreViewModel2, fileTransferViewModel2), TransferDisplayModal(coreViewModel2, fileTransferViewModel2), TransferDataInputModal(coreViewModel2, fileTransferViewModel2), DataReceptionModal(coreViewModel2, fileTransferViewModel2), ExportModal(coreViewModel2, fileTransferViewModel2), ImportModal(coreViewModel2, fileTransferViewModel2));
} }
function DirectionSelectionModal(coreViewModel2, connectionViewModel2, fileTransferViewModel2) { function DirectionSelectionModal(coreViewModel2, connectionViewModel2, fileTransferViewModel2) {
const isPresented = createProxyState( const isPresented = createProxyState(
@@ -6727,7 +6730,7 @@
"button", "button",
{ {
class: "tile", class: "tile",
"on:click": fileTransferViewModel2.showImportModal "on:click": fileTransferViewModel2.showExportModal
}, },
/* @__PURE__ */ createElement("span", { class: "icon" }, "file_save"), /* @__PURE__ */ createElement("span", { class: "icon" }, "file_save"),
/* @__PURE__ */ createElement("div", null, /* @__PURE__ */ createElement("b", null, coreViewModel2.translations.dataTransferModal.exportButton)), /* @__PURE__ */ createElement("div", null, /* @__PURE__ */ createElement("b", null, coreViewModel2.translations.dataTransferModal.exportButton)),
@@ -6823,14 +6826,7 @@
{ {
"subscribe:innerText": fileTransferViewModel2.transferKey "subscribe:innerText": fileTransferViewModel2.transferKey
} }
)))), /* @__PURE__ */ createElement("hr", null), /* @__PURE__ */ createElement( ))))), /* @__PURE__ */ createElement("div", { class: "flex-row width-100" }, /* @__PURE__ */ createElement(
"button",
{
"on:click": null
},
coreViewModel2.translations.dataTransferModal.exportButton,
/* @__PURE__ */ createElement("span", { class: "icon" }, "download")
)), /* @__PURE__ */ createElement("div", { class: "flex-row width-100" }, /* @__PURE__ */ createElement(
"button", "button",
{ {
class: "flex", class: "flex",
@@ -6942,10 +6938,32 @@
} }
)), /* @__PURE__ */ createElement("button", { "on:click": ViewController.reload }, coreViewModel2.translations.general.reloadAppButton, /* @__PURE__ */ createElement("span", { class: "icon" }, "refresh")))); )), /* @__PURE__ */ createElement("button", { "on:click": ViewController.reload }, coreViewModel2.translations.general.reloadAppButton, /* @__PURE__ */ createElement("span", { class: "icon" }, "refresh"))));
} }
function ExportModal(coreViewModel2, fileTransferViewModel2) {
const isPresented = createProxyState(
[fileTransferViewModel2.presentedModal],
() => fileTransferViewModel2.presentedModal.value == 6 /* ExportModal */
);
return /* @__PURE__ */ createElement("div", { class: "modal", "toggle:open": isPresented }, /* @__PURE__ */ createElement("div", null, /* @__PURE__ */ createElement("main", null, /* @__PURE__ */ createElement("h2", null, coreViewModel2.translations.dataTransferModal.exportHeadline), /* @__PURE__ */ createElement(
"p",
{
class: "secondary",
"subscribe:innerText": fileTransferViewModel2.filesReceivedText
}
), /* @__PURE__ */ createElement("hr", null), /* @__PURE__ */ createElement(
"div",
{
class: "tile flex-column align-start",
"children:append": [
fileTransferViewModel2.filePathsReceived,
StringToTextSpan
]
}
)), /* @__PURE__ */ createElement("button", { "on:click": fileTransferViewModel2.close }, coreViewModel2.translations.general.closeButton, /* @__PURE__ */ createElement("span", { class: "icon" }, "close"))));
}
function ImportModal(coreViewModel2, fileTransferViewModel2) { function ImportModal(coreViewModel2, fileTransferViewModel2) {
const isPresented = createProxyState( const isPresented = createProxyState(
[fileTransferViewModel2.presentedModal], [fileTransferViewModel2.presentedModal],
() => fileTransferViewModel2.presentedModal.value == 6 /* ImportModal */ () => fileTransferViewModel2.presentedModal.value == 7 /* ImportModal */
); );
return /* @__PURE__ */ createElement("div", { class: "modal", "toggle:open": isPresented }, /* @__PURE__ */ createElement("div", null, /* @__PURE__ */ createElement("main", null, /* @__PURE__ */ createElement("h2", null, coreViewModel2.translations.dataTransferModal.importHeadline), /* @__PURE__ */ createElement( return /* @__PURE__ */ createElement("div", { class: "modal", "toggle:open": isPresented }, /* @__PURE__ */ createElement("div", null, /* @__PURE__ */ createElement("main", null, /* @__PURE__ */ createElement("h2", null, coreViewModel2.translations.dataTransferModal.importHeadline), /* @__PURE__ */ createElement(
"p", "p",
+54 -5
View File
@@ -26,6 +26,7 @@ export function DataTransferModalWrapper(
{TransferDisplayModal(coreViewModel, fileTransferViewModel)} {TransferDisplayModal(coreViewModel, fileTransferViewModel)}
{TransferDataInputModal(coreViewModel, fileTransferViewModel)} {TransferDataInputModal(coreViewModel, fileTransferViewModel)}
{DataReceptionModal(coreViewModel, fileTransferViewModel)} {DataReceptionModal(coreViewModel, fileTransferViewModel)}
{ExportModal(coreViewModel, fileTransferViewModel)}
{ImportModal(coreViewModel, fileTransferViewModel)} {ImportModal(coreViewModel, fileTransferViewModel)}
</div> </div>
); );
@@ -108,13 +109,13 @@ function DirectionSelectionModal(
</b> </b>
</div> </div>
<span class="icon">arrow_forward</span> <span class="icon">arrow_forward</span>
</button> </button>
<hr></hr> <hr></hr>
<button <button
class="tile" class="tile"
on:click={fileTransferViewModel.showImportModal} on:click={fileTransferViewModel.showExportModal}
> >
<span class="icon">file_save</span> <span class="icon">file_save</span>
<div> <div>
@@ -343,7 +344,7 @@ function TransferDataDisplayModal(
></b> ></b>
</div> </div>
</div> </div>
</div> </div>
</main> </main>
<div class="flex-row width-100"> <div class="flex-row width-100">
<button <button
@@ -353,7 +354,7 @@ function TransferDataDisplayModal(
{coreViewModel.translations.general.backButton} {coreViewModel.translations.general.backButton}
</button> </button>
<button disabled class="flex"> <button disabled class="flex">
{coreViewModel.translations.general.waitingLabel} {coreViewModel.translations.general.waitingLabel}
</button> </button>
</div> </div>
</div> </div>
@@ -586,6 +587,54 @@ function DataReceptionModal(
); );
} }
function ExportModal(
coreViewModel: CoreViewModel,
fileTransferViewModel: FileTransferViewModel,
) {
const isPresented = React.createProxyState(
[fileTransferViewModel.presentedModal],
() =>
fileTransferViewModel.presentedModal.value ==
FileTransferModals.ExportModal,
);
return (
<div class="modal" toggle:open={isPresented}>
<div>
<main>
<h2>
{
coreViewModel.translations.dataTransferModal
.exportHeadline
}
</h2>
<p
class="secondary"
subscribe:innerText={
fileTransferViewModel.filesReceivedText
}
></p>
<hr></hr>
<div
class="tile flex-column align-start"
children:append={[
fileTransferViewModel.filePathsReceived,
StringToTextSpan,
]}
></div>
</main>
<button on:click={fileTransferViewModel.close}>
{coreViewModel.translations.general.closeButton}
<span class="icon">close</span>
</button>
</div>
</div>
);
}
function ImportModal( function ImportModal(
coreViewModel: CoreViewModel, coreViewModel: CoreViewModel,
fileTransferViewModel: FileTransferViewModel, fileTransferViewModel: FileTransferViewModel,
+389 -389
View File
@@ -106,7 +106,7 @@ const englishTranslations = {
transferDataHeadline: "Data Transfer", transferDataHeadline: "Data Transfer",
sendHeadline: "Transfer to other device", sendHeadline: "Transfer to other device",
receiveHeadline: "Transfer to This Device", receiveHeadline: "Transfer to This Device",
exportHeadline: "Export Data", exportHeadline: "Export Data",
importHeadline: "Import Data", importHeadline: "Import Data",
selectionDescription: "Select the data that you want to transfer.", selectionDescription: "Select the data that you want to transfer.",
dataEntryDescription: "Enter this data on the other device.", dataEntryDescription: "Enter this data on the other device.",
@@ -119,7 +119,7 @@ const englishTranslations = {
fromThisDeviceButton: "Send to other device", fromThisDeviceButton: "Send to other device",
toThisDeviceButton: "Send to this device", toThisDeviceButton: "Send to this device",
exportButton: "Export to file", exportButton: "Export to file",
importButton: "Import from file", importButton: "Import from file",
/// ///
@@ -421,482 +421,482 @@ export const allTranslations: {
dataTransferModal: { dataTransferModal: {
transferDataHeadline: "Datenübertragung", transferDataHeadline: "Datenübertragung",
sendHeadline: "An anderes Gerät senden", sendHeadline: "An anderes Gerät senden",
receiveHeadline: "An dieses Gerät senden", receiveHeadline: "An dieses Gerät senden",
exportHeadline: "Daten exportieren", exportHeadline: "Daten exportieren",
importHeadline: "Daten importieren", importHeadline: "Daten importieren",
selectionDescription: selectionDescription:
"Wähle die Daten aus, die du übertragen möchtest.", "Wähle die Daten aus, die du übertragen möchtest.",
dataEntryDescription: dataEntryDescription:
"Gib diese Informationen auf dem anderen Gerät ein.", "Gib diese Informationen auf dem anderen Gerät ein.",
dataEntryInputDescription: dataEntryInputDescription:
"Gib die auf dem anderen Gerät angezeigten Informationen ein.", "Gib die auf dem anderen Gerät angezeigten Informationen ein.",
notConnectedError: "Du bist mit keinem Server verbunden.", notConnectedError: "Du bist mit keinem Server verbunden.",
fromThisDeviceButton: "An anderes Gerät senden", fromThisDeviceButton: "An anderes Gerät senden",
toThisDeviceButton: "An dieses Gerät senden", toThisDeviceButton: "An dieses Gerät senden",
exportButton: "Als Datei exportieren", exportButton: "Als Datei exportieren",
importButton: "Aus Datei importieren", importButton: "Aus Datei importieren",
generalHeadline: "Allgemein", generalHeadline: "Allgemein",
connectionData: "Verbindungsdaten", connectionData: "Verbindungsdaten",
settingsData: "Einstellungen", settingsData: "Einstellungen",
chatsHeadline: "Chats", chatsHeadline: "Chats",
transferChannelHeadline: "Übertragungskanal", transferChannelHeadline: "Übertragungskanal",
transferKeyHeadline: "Schlüssel", transferKeyHeadline: "Schlüssel",
sendButton: "Senden", sendButton: "Senden",
sendAgainButton: "Erneut senden", sendAgainButton: "Erneut senden",
filesSentCount: (count) => `Dateien gesendet: ${count}.`, filesSentCount: (count) => `Dateien gesendet: ${count}.`,
allFilesSent: "Fertig.", allFilesSent: "Fertig.",
filesReceivedCount: (count) => `Dateien empfangen: ${count}.`, filesReceivedCount: (count) => `Dateien empfangen: ${count}.`,
}, },
storage: { storage: {
noItemSelected: "Kein Element ausgewählt", noItemSelected: "Kein Element ausgewählt",
notAFile: "(keine Datei)", notAFile: "(keine Datei)",
contentEmpty: "(leer)", contentEmpty: "(leer)",
path: "Pfad", path: "Pfad",
content: "Inhalt", content: "Inhalt",
deleteItem: "Element löschen", deleteItem: "Element löschen",
removeJunkButton: "Datenmüll löschen", removeJunkButton: "Datenmüll löschen",
}, },
chatPage: { chatPage: {
closeChatAudioLabe: "Chat schließen", closeChatAudioLabe: "Chat schließen",
chatSettingsAudioLabel: "Chateinstellungen", chatSettingsAudioLabel: "Chateinstellungen",
pages: { pages: {
settings: "Einstellungen", settings: "Einstellungen",
messages: "Nachrichten", messages: "Nachrichten",
tasks: "Aufgaben", tasks: "Aufgaben",
calendar: "Kalender", calendar: "Kalender",
}, },
settings: { settings: {
settingsHeadline: "Einstellungen", settingsHeadline: "Einstellungen",
primaryChannelLabel: "Hauptkanal", primaryChannelLabel: "Hauptkanal",
setPrimaryChannelButtonAudioLabel: "Hauptkanal festlegen", setPrimaryChannelButtonAudioLabel: "Hauptkanal festlegen",
namespaceLabel: "Namensraum", namespaceLabel: "Namensraum",
namespacePlaceholder: "Ohne Namensraum", namespacePlaceholder: "Ohne Namensraum",
setNamespaceButtonAudioLabel: "Namensraum festlegen", setNamespaceButtonAudioLabel: "Namensraum festlegen",
newSecondaryChannelPlaceholder: "Sekundären Kanal hinzufügen", newSecondaryChannelPlaceholder: "Sekundären Kanal hinzufügen",
newSecondaryChannelAudioLabel: newSecondaryChannelAudioLabel:
"Name des neuen sekundären Kanals", "Name des neuen sekundären Kanals",
addSecondaryChannelButtonAudioLabel: addSecondaryChannelButtonAudioLabel:
"Sekundären Kanal hinzufügen", "Sekundären Kanal hinzufügen",
encryptionKeyLabel: "Schlüssel", encryptionKeyLabel: "Schlüssel",
setEncryptionKeyButtonAudioLabel: "Schlüssel festlegen", setEncryptionKeyButtonAudioLabel: "Schlüssel festlegen",
showEncryptionKey: "Schlüssel anzeigen", showEncryptionKey: "Schlüssel anzeigen",
deleteChatButton: "Gesamten Chat löschen", deleteChatButton: "Gesamten Chat löschen",
}, },
message: { message: {
messagesHeadline: "Nachrichten", messagesHeadline: "Nachrichten",
messageFilterHeadline: "Nachrichten filtern", messageFilterHeadline: "Nachrichten filtern",
messageFilterReactionsHadline: "Reaktionen", messageFilterReactionsHadline: "Reaktionen",
messageFilterAllReactionsButton: "Alle anzeigen", messageFilterAllReactionsButton: "Alle anzeigen",
composerInputPlaceholder: "Schreib eine Nachricht...", composerInputPlaceholder: "Schreib eine Nachricht...",
sendMessageButtonAudioLabel: "nachricht senden", sendMessageButtonAudioLabel: "nachricht senden",
filterMessagesButtonAudioLabel: "nachrichten filtern", filterMessagesButtonAudioLabel: "nachrichten filtern",
showMessageInfoButtonAudioLabel: "nachrichteninfo anzeigen", showMessageInfoButtonAudioLabel: "nachrichteninfo anzeigen",
messageInfoHeadline: "Nachrichteninfo", messageInfoHeadline: "Nachrichteninfo",
cancelReplyAudioLabel: "antwort abbrechen", cancelReplyAudioLabel: "antwort abbrechen",
sentBy: "Gesendet von", sentBy: "Gesendet von",
timeSent: "Sendezeit", timeSent: "Sendezeit",
channel: "Kanal", channel: "Kanal",
messageContent: "Nachrichteninhalt", messageContent: "Nachrichteninhalt",
copyMessageButton: "Nachricht kopieren", copyMessageButton: "Nachricht kopieren",
resendMessageButton: "Nachricht erneut senden", resendMessageButton: "Nachricht erneut senden",
decryptMessageButton: "Nachricht entschlüsseln", decryptMessageButton: "Nachricht entschlüsseln",
replyToMessageButton: "Auf Nachricht antworten", replyToMessageButton: "Auf Nachricht antworten",
deleteMessageButton: "Nachricht löschen", deleteMessageButton: "Nachricht löschen",
// //
thumbsUpReaction: "Reaktion: Daumen hoch", thumbsUpReaction: "Reaktion: Daumen hoch",
checkReaction: "Reaktion: Haken", checkReaction: "Reaktion: Haken",
stopReaction: "Reaktion: Stopp", stopReaction: "Reaktion: Stopp",
attentionReaction: "Reaktion: Ausrufezeichen", attentionReaction: "Reaktion: Ausrufezeichen",
doubleAttentionReaction: "Reaktion: doppeltes Ausrufezeichen", doubleAttentionReaction: "Reaktion: doppeltes Ausrufezeichen",
questionReaction: "Reaktion: Fragezeichen", questionReaction: "Reaktion: Fragezeichen",
}, },
task: { task: {
newBoardNamePlaceholder: "Board erstellen", newBoardNamePlaceholder: "Board erstellen",
createBoardButtonAudioLabel: "board erstellen", createBoardButtonAudioLabel: "board erstellen",
noBoardSelected: "Kein Board ausgewählt", noBoardSelected: "Kein Board ausgewählt",
boardNotFound: "Board nicht gefunden", boardNotFound: "Board nicht gefunden",
closeBoardButtonAudioLabel: "board schließen", closeBoardButtonAudioLabel: "board schließen",
toggleBoardButtonAudioLabel: "board-liste ein/ausblenden", toggleBoardButtonAudioLabel: "board-liste ein/ausblenden",
showBoardSettingsButtonAudioLabel: showBoardSettingsButtonAudioLabel:
"Board-Einstellungen anzeigen", "Board-Einstellungen anzeigen",
listViewButtonAudioLabel: "Listenansicht", listViewButtonAudioLabel: "Listenansicht",
kanbanViewButtonAudioLabel: "Kanban-Ansicht", kanbanViewButtonAudioLabel: "Kanban-Ansicht",
statusViewButtonAudioLabel: "Statusrasteransicht", statusViewButtonAudioLabel: "Statusrasteransicht",
filterTasksButtonAudioLabel: "Aufgaben filtern", filterTasksButtonAudioLabel: "Aufgaben filtern",
createTaskButtonAudioLabel: "Neue Aufgabe erstellen", createTaskButtonAudioLabel: "Neue Aufgabe erstellen",
boardSettingsHeadline: "Board-Einstellungen", boardSettingsHeadline: "Board-Einstellungen",
boardNameInputLabel: "Boardname", boardNameInputLabel: "Boardname",
deleteBoardButton: "Board und alle Aufgaben löschen", deleteBoardButton: "Board und alle Aufgaben löschen",
taskSettingsHeadline: "Aufgabe bearbeiten", taskSettingsHeadline: "Aufgabe bearbeiten",
taskNameLabel: "Titel", taskNameLabel: "Titel",
taskBoardLabel: "Board", taskBoardLabel: "Board",
taskCategoryLabel: "Kategorie", taskCategoryLabel: "Kategorie",
taskStatusLabel: "Status", taskStatusLabel: "Status",
taskPriorityLabel: "Priorität", taskPriorityLabel: "Priorität",
taskDescriptionLabel: "Beschreibung", taskDescriptionLabel: "Beschreibung",
taskDateLabel: "Datum", taskDateLabel: "Datum",
taskTimeLabel: "Uhrzeit", taskTimeLabel: "Uhrzeit",
deleteTaskButton: "Aufgabe löschen", deleteTaskButton: "Aufgabe löschen",
filterTasksHeadline: "Aufgaben filtern", filterTasksHeadline: "Aufgaben filtern",
renameCategoryInputPlaceholder: "Kategorie umbenennen", renameCategoryInputPlaceholder: "Kategorie umbenennen",
renameStatusInputPlaceholder: "Status umbenennen", renameStatusInputPlaceholder: "Status umbenennen",
}, },
calendar: { calendar: {
eventsBoard: "Ereignisse", eventsBoard: "Ereignisse",
/// ///
todayButtonAudioLabel: "gehe zu heute", todayButtonAudioLabel: "gehe zu heute",
previousMonthButtonAudioLabel: "vorheriger monat", previousMonthButtonAudioLabel: "vorheriger monat",
nextMonthButtonAudioLabel: "nächster monat", nextMonthButtonAudioLabel: "nächster monat",
yearInputAudioLabel: "Jahr", yearInputAudioLabel: "Jahr",
monthInputAudioLabel: "Monat", monthInputAudioLabel: "Monat",
yearInputPlaceholder: "2000", yearInputPlaceholder: "2000",
monthInputPlaceholder: "01", monthInputPlaceholder: "01",
searchEventsHeadline: "Ereignisse suchen", searchEventsHeadline: "Ereignisse suchen",
events: "Ereignisse", events: "Ereignisse",
noEvents: "Keine Ereignisse", noEvents: "Keine Ereignisse",
}, },
}, },
}, },
es: { es: {
updater: { updater: {
migrated: "Migrado", migrated: "Migrado",
}, },
general: { general: {
deleteItemButtonAudioLabel: "eliminar elemento", deleteItemButtonAudioLabel: "eliminar elemento",
searchButtonAudioLabel: "buscar", searchButtonAudioLabel: "buscar",
abortButton: "Abortar", abortButton: "Abortar",
cancelButton: "Cancelar", cancelButton: "Cancelar",
closeButton: "Cerrar", closeButton: "Cerrar",
backButton: "Atrás", backButton: "Atrás",
continueButton: "Continuar", continueButton: "Continuar",
confirmButton: "Confirmar", confirmButton: "Confirmar",
saveButton: "Guardar", saveButton: "Guardar",
setButton: "OK", setButton: "OK",
reloadAppButton: "Recargar app", reloadAppButton: "Recargar app",
fileVersionLabel: "Versión", fileVersionLabel: "Versión",
searchLabel: "Buscar", searchLabel: "Buscar",
waitingLabel: "Esperando...", waitingLabel: "Esperando...",
restoreConnection: "Conectar de nuevo", restoreConnection: "Conectar de nuevo",
noPageSelected: "No página seleccionada", noPageSelected: "No página seleccionada",
}, },
regional: { regional: {
weekdays: { weekdays: {
full: [ full: [
"Domingo", "Domingo",
"Lunes", "Lunes",
"Martes", "Martes",
"Miércoles", "Miércoles",
"Jueves", "Jueves",
"Viernes", "Viernes",
"Sábado", "Sábado",
], ],
abbreviated: ["Dom", "Lun", "Mar", "Mié", "Jue", "Vie", "Sáb"], abbreviated: ["Dom", "Lun", "Mar", "Mié", "Jue", "Vie", "Sáb"],
}, },
}, },
homePage: { homePage: {
appName: "Comms", appName: "Comms",
overviewHeadline: "Resumen", overviewHeadline: "Resumen",
serverAddress: "Dirección del servidor", serverAddress: "Dirección del servidor",
serverAddressPlaceholder: "wss://192.168.0.69:3000", serverAddressPlaceholder: "wss://192.168.0.69:3000",
connectAudioLabel: "conectar al servidor", connectAudioLabel: "conectar al servidor",
disconnectAudioLabel: "desconectar del servidor", disconnectAudioLabel: "desconectar del servidor",
manageConnectionsAudioLabel: "gestionar conexiones", manageConnectionsAudioLabel: "gestionar conexiones",
yourNameLabel: "Tu nombre", yourNameLabel: "Tu nombre",
yourNamePlaceholder: "Juan Pérez", yourNamePlaceholder: "Juan Pérez",
setNameButtonAudioLabel: "establecer nombre", setNameButtonAudioLabel: "establecer nombre",
settingsButton: "Ajustes", settingsButton: "Ajustes",
manageStorageButton: "Gestionar almacenamiento", manageStorageButton: "Gestionar almacenamiento",
transferDataButton: "Enviar o exportar archivos", transferDataButton: "Enviar o exportar archivos",
scrollToChatButton: "Chats", scrollToChatButton: "Chats",
backToOverviewAudioLabel: "volver al resumen", backToOverviewAudioLabel: "volver al resumen",
chatsHeadline: "Chats", chatsHeadline: "Chats",
addChatAudioLabel: "nombre del nuevo chat", addChatAudioLabel: "nombre del nuevo chat",
addChatPlaceholder: "Añadir chat", addChatPlaceholder: "Añadir chat",
addChatButton: "Añadir chat", addChatButton: "Añadir chat",
}, },
settings: { settings: {
pages: { pages: {
appearance: "Aspecto", appearance: "Aspecto",
regional: "Idioma y Región", regional: "Idioma y Región",
info: "Sobre Comms", info: "Sobre Comms",
}, },
themes: { themes: {
dark: "Oscuro", dark: "Oscuro",
light: "Claro", light: "Claro",
system: "Según dispositivo", system: "Según dispositivo",
}, },
version: "Versión", version: "Versión",
language: "Idioma", language: "Idioma",
firstDayOfWeekLabel: "Primer día de la semana", firstDayOfWeekLabel: "Primer día de la semana",
}, },
connectionModal: { connectionModal: {
connectionModalHeadline: "Gestionar Conexiones", connectionModalHeadline: "Gestionar Conexiones",
connectButtonAudioLabel: "conectar", connectButtonAudioLabel: "conectar",
}, },
dataTransferModal: { dataTransferModal: {
transferDataHeadline: "Transferencia de datos", transferDataHeadline: "Transferencia de datos",
sendHeadline: "Enviar a otro dispositivo", sendHeadline: "Enviar a otro dispositivo",
receiveHeadline: "Enviar a este dispositivo", receiveHeadline: "Enviar a este dispositivo",
exportHeadline: "Exportar archivo", exportHeadline: "Exportar archivo",
importHeadline: "Importar archivo", importHeadline: "Importar archivo",
selectionDescription: selectionDescription:
"Selecciona los datos que quieres transferir.", "Selecciona los datos que quieres transferir.",
dataEntryDescription: dataEntryDescription:
"Introduce estos datos en el otro dispositivo.", "Introduce estos datos en el otro dispositivo.",
dataEntryInputDescription: dataEntryInputDescription:
"Introduce los datos mostrados en el otro dispositivo.", "Introduce los datos mostrados en el otro dispositivo.",
notConnectedError: "No estás conectado a ningún servidor.", notConnectedError: "No estás conectado a ningún servidor.",
fromThisDeviceButton: "Enviar a otro dispositivo", fromThisDeviceButton: "Enviar a otro dispositivo",
toThisDeviceButton: "Enviar a este dispositivo", toThisDeviceButton: "Enviar a este dispositivo",
exportButton: "Exportar archivo", exportButton: "Exportar archivo",
importButton: "Importar archivo", importButton: "Importar archivo",
generalHeadline: "General", generalHeadline: "General",
connectionData: "Datos de Conexión", connectionData: "Datos de Conexión",
settingsData: "Datos de Configuración", settingsData: "Datos de Configuración",
chatsHeadline: "Chats", chatsHeadline: "Chats",
transferChannelHeadline: "Canal de Transferencia", transferChannelHeadline: "Canal de Transferencia",
transferKeyHeadline: "Clave de Encriptación de Transferencia", transferKeyHeadline: "Clave de Encriptación de Transferencia",
sendButton: "Enviar", sendButton: "Enviar",
sendAgainButton: "Enviar otra vez", sendAgainButton: "Enviar otra vez",
filesSentCount: (count) => `Archivos enviados: ${count}.`, filesSentCount: (count) => `Archivos enviados: ${count}.`,
allFilesSent: "Hecho.", allFilesSent: "Hecho.",
filesReceivedCount: (count) => `Archivos recibidos: ${count}.`, filesReceivedCount: (count) => `Archivos recibidos: ${count}.`,
}, },
storage: { storage: {
noItemSelected: "Ningún elemento seleccionado", noItemSelected: "Ningún elemento seleccionado",
notAFile: "(no es un archivo)", notAFile: "(no es un archivo)",
contentEmpty: "(vacío)", contentEmpty: "(vacío)",
path: "Ruta", path: "Ruta",
content: "Contenido", content: "Contenido",
deleteItem: "Eliminar elemento", deleteItem: "Eliminar elemento",
removeJunkButton: "Eliminar archivos basura", removeJunkButton: "Eliminar archivos basura",
}, },
chatPage: { chatPage: {
closeChatAudioLabe: "cerrar chat", closeChatAudioLabe: "cerrar chat",
chatSettingsAudioLabel: "configuración del chat", chatSettingsAudioLabel: "configuración del chat",
pages: { pages: {
settings: "Configuración", settings: "Configuración",
messages: "Mensajes", messages: "Mensajes",
tasks: "Tareas", tasks: "Tareas",
calendar: "Calendario", calendar: "Calendario",
}, },
settings: { settings: {
settingsHeadline: "Configuración", settingsHeadline: "Configuración",
primaryChannelLabel: "Canal principal", primaryChannelLabel: "Canal principal",
setPrimaryChannelButtonAudioLabel: "establecer canal principal", setPrimaryChannelButtonAudioLabel: "establecer canal principal",
namespaceLabel: "Espacio de nombres", namespaceLabel: "Espacio de nombres",
namespacePlaceholder: "Sin espacio de nombres", namespacePlaceholder: "Sin espacio de nombres",
setNamespaceButtonAudioLabel: "establecer espacio de nombres", setNamespaceButtonAudioLabel: "establecer espacio de nombres",
newSecondaryChannelPlaceholder: "Añadir canal secundario", newSecondaryChannelPlaceholder: "Añadir canal secundario",
newSecondaryChannelAudioLabel: newSecondaryChannelAudioLabel:
"nombre del nuevo canal secundario", "nombre del nuevo canal secundario",
addSecondaryChannelButtonAudioLabel: "añadir canal secundario", addSecondaryChannelButtonAudioLabel: "añadir canal secundario",
encryptionKeyLabel: "Clave de encriptación", encryptionKeyLabel: "Clave de encriptación",
setEncryptionKeyButtonAudioLabel: setEncryptionKeyButtonAudioLabel:
"establecer clave de encriptación", "establecer clave de encriptación",
showEncryptionKey: "Mostrar clave de encriptación", showEncryptionKey: "Mostrar clave de encriptación",
deleteChatButton: "Eliminar todo el chat", deleteChatButton: "Eliminar todo el chat",
}, },
message: { message: {
messagesHeadline: "Mensajes", messagesHeadline: "Mensajes",
messageFilterHeadline: "Filtrar mensajes", messageFilterHeadline: "Filtrar mensajes",
messageFilterReactionsHadline: "Reacciones", messageFilterReactionsHadline: "Reacciones",
messageFilterAllReactionsButton: "Mostrar todas", messageFilterAllReactionsButton: "Mostrar todas",
composerInputPlaceholder: "Escribe un mensaje...", composerInputPlaceholder: "Escribe un mensaje...",
sendMessageButtonAudioLabel: "enviar mensaje", sendMessageButtonAudioLabel: "enviar mensaje",
filterMessagesButtonAudioLabel: "filtrar mensajes", filterMessagesButtonAudioLabel: "filtrar mensajes",
showMessageInfoButtonAudioLabel: showMessageInfoButtonAudioLabel:
"mostrar información del mensaje", "mostrar información del mensaje",
messageInfoHeadline: "Información del Mensaje", messageInfoHeadline: "Información del Mensaje",
cancelReplyAudioLabel: "abortar la respuesta", cancelReplyAudioLabel: "abortar la respuesta",
sentBy: "Enviado por", sentBy: "Enviado por",
timeSent: "Hora de envío", timeSent: "Hora de envío",
channel: "Canal", channel: "Canal",
messageContent: "Contenido del mensaje", messageContent: "Contenido del mensaje",
copyMessageButton: "Copiar mensaje", copyMessageButton: "Copiar mensaje",
resendMessageButton: "Reenviar mensaje", resendMessageButton: "Reenviar mensaje",
decryptMessageButton: "Desencriptar mensaje", decryptMessageButton: "Desencriptar mensaje",
replyToMessageButton: "Responder al mensaje", replyToMessageButton: "Responder al mensaje",
deleteMessageButton: "Eliminar mensaje", deleteMessageButton: "Eliminar mensaje",
// //
thumbsUpReaction: "Reacción: pulgar hacia arriba", thumbsUpReaction: "Reacción: pulgar hacia arriba",
checkReaction: "Reacción: marca de verificación", checkReaction: "Reacción: marca de verificación",
stopReaction: "Reacción: signo de parada", stopReaction: "Reacción: signo de parada",
attentionReaction: "Reaccion: signo de atención", attentionReaction: "Reaccion: signo de atención",
doubleAttentionReaction: "Reaccion: signo de atención doble", doubleAttentionReaction: "Reaccion: signo de atención doble",
questionReaction: "Reaccion: signo de interrogación", questionReaction: "Reaccion: signo de interrogación",
}, },
task: { task: {
newBoardNamePlaceholder: "Crear un tablero", newBoardNamePlaceholder: "Crear un tablero",
createBoardButtonAudioLabel: "crear tablero", createBoardButtonAudioLabel: "crear tablero",
noBoardSelected: "Ningún tablero seleccionado", noBoardSelected: "Ningún tablero seleccionado",
boardNotFound: "Tablero no encontrado", boardNotFound: "Tablero no encontrado",
closeBoardButtonAudioLabel: "cerrar tablero", closeBoardButtonAudioLabel: "cerrar tablero",
toggleBoardButtonAudioLabel: toggleBoardButtonAudioLabel:
"mostrar o ocultar lista de tableros", "mostrar o ocultar lista de tableros",
showBoardSettingsButtonAudioLabel: showBoardSettingsButtonAudioLabel:
"mostrar configuración del tablero", "mostrar configuración del tablero",
listViewButtonAudioLabel: "vista de lista", listViewButtonAudioLabel: "vista de lista",
kanbanViewButtonAudioLabel: "vista kanban", kanbanViewButtonAudioLabel: "vista kanban",
statusViewButtonAudioLabel: "vista de cuadrícula de estado", statusViewButtonAudioLabel: "vista de cuadrícula de estado",
filterTasksButtonAudioLabel: "filtrar tareas", filterTasksButtonAudioLabel: "filtrar tareas",
createTaskButtonAudioLabel: "crear nueva tarea", createTaskButtonAudioLabel: "crear nueva tarea",
boardSettingsHeadline: "Configuración del Tablero", boardSettingsHeadline: "Configuración del Tablero",
boardNameInputLabel: "Nombre del tablero", boardNameInputLabel: "Nombre del tablero",
deleteBoardButton: "Eliminar tablero y todas las tareas", deleteBoardButton: "Eliminar tablero y todas las tareas",
taskSettingsHeadline: "Editar Tarea", taskSettingsHeadline: "Editar Tarea",
taskNameLabel: "Título", taskNameLabel: "Título",
taskBoardLabel: "Tablero", taskBoardLabel: "Tablero",
taskCategoryLabel: "Categoría", taskCategoryLabel: "Categoría",
taskStatusLabel: "Estado", taskStatusLabel: "Estado",
taskPriorityLabel: "Prioridad", taskPriorityLabel: "Prioridad",
taskDescriptionLabel: "Descripción", taskDescriptionLabel: "Descripción",
taskDateLabel: "Fecha", taskDateLabel: "Fecha",
taskTimeLabel: "Hora", taskTimeLabel: "Hora",
deleteTaskButton: "Eliminar tarea", deleteTaskButton: "Eliminar tarea",
filterTasksHeadline: "Filtrar Tareas", filterTasksHeadline: "Filtrar Tareas",
renameCategoryInputPlaceholder: "Renombrar categoría", renameCategoryInputPlaceholder: "Renombrar categoría",
renameStatusInputPlaceholder: "Renombrar estado", renameStatusInputPlaceholder: "Renombrar estado",
}, },
calendar: { calendar: {
eventsBoard: "Eventos", eventsBoard: "Eventos",
/// ///
todayButtonAudioLabel: "ir a hoy", todayButtonAudioLabel: "ir a hoy",
previousMonthButtonAudioLabel: "mes anterior", previousMonthButtonAudioLabel: "mes anterior",
nextMonthButtonAudioLabel: "mes siguiente", nextMonthButtonAudioLabel: "mes siguiente",
yearInputAudioLabel: "año", yearInputAudioLabel: "año",
monthInputAudioLabel: "mes", monthInputAudioLabel: "mes",
yearInputPlaceholder: "2000", yearInputPlaceholder: "2000",
monthInputPlaceholder: "01", monthInputPlaceholder: "01",
searchEventsHeadline: "Buscar Eventos", searchEventsHeadline: "Buscar Eventos",
events: "Eventos", events: "Eventos",
noEvents: "No hay eventos", noEvents: "No hay eventos",
}, },
}, },
}, },
}; };
@@ -148,6 +148,10 @@ export default class FileTransferViewModel extends Context {
this.presentedModal.value = FileTransferModals.TransferDataInput; this.presentedModal.value = FileTransferModals.TransferDataInput;
}; };
showExportModal = (): void => {
this.presentedModal.value = FileTransferModals.ExportModal;
};
showImportModal = (): void => { showImportModal = (): void => {
this.presentedModal.value = FileTransferModals.ImportModal; this.presentedModal.value = FileTransferModals.ImportModal;
}; };
@@ -209,6 +213,7 @@ export enum FileTransferModals {
TransferDataInput, TransferDataInput,
ReceptionDisplay, ReceptionDisplay,
// import // export
ExportModal,
ImportModal, ImportModal,
} }