This repository has been archived on 2024-02-08. You can view files and clone it, but cannot push or open issues or pull requests.
frontend/src/helpers/migrator.ts
dpschen b59b5def57
All checks were successful
continuous-integration/drone/push Build is passing
feat: compress media files (#818)
Co-authored-by: Dominik Pschenitschni <mail@celement.de>
Reviewed-on: #818
Reviewed-by: konrad <k@knt.li>
Co-authored-by: dpschen <dpschen@noreply.kolaente.de>
Co-committed-by: dpschen <dpschen@noreply.kolaente.de>
2021-10-03 18:48:02 +00:00

48 lines
1.1 KiB
TypeScript

export interface Migrator {
name: string
identifier: string
isFileMigrator?: boolean
}
export const getMigratorFromSlug = (slug: string): Migrator => {
switch (slug) {
case 'wunderlist':
return {
name: 'Wunderlist',
identifier: 'wunderlist',
}
case 'todoist':
return {
name: 'Todoist',
identifier: 'todoist',
}
case 'trello':
return {
name: 'Trello',
identifier: 'trello',
}
case 'microsoft-todo':
return {
name: 'Microsoft Todo',
identifier: 'microsoft-todo',
}
case 'vikunja-file':
return {
name: 'Vikunja Export',
identifier: 'vikunja-file',
isFileMigrator: true,
}
default:
throw Error('Unknown migrator slug ' + slug)
}
}
// NOTE: we list the imports individually for better build time optimisation
export const SERVICE_ICONS = {
'vikunja-file': () => import('@/assets/migration/vikunja-file.png'),
'microsoft-todo': () => import('@/assets/migration/microsoft-todo.svg'),
'todoist': () => import('@/assets/migration/todoist.svg'),
'trello': () => import('@/assets/migration/trello.svg'),
'wunderlist': () => import('@/assets/migration/wunderlist.jpg'),
}