mirror of
https://github.com/haexhub/haex-hub.git
synced 2025-12-17 14:30:52 +01:00
zwischenstand
This commit is contained in:
@ -69,6 +69,9 @@ import { save } from '@tauri-apps/plugin-dialog'
|
||||
import { onKeyStroke } from '@vueuse/core'
|
||||
import { useVaultStore } from '~/stores/vault'
|
||||
import { vaultDatabaseSchema } from './schema'
|
||||
import { BaseDirectory, readFile, writeFile } from '@tauri-apps/plugin-fs'
|
||||
import { resolveResource } from '@tauri-apps/api/path'
|
||||
//import { convertFileSrc } from "@tauri-apps/api/tauri";
|
||||
|
||||
onKeyStroke('Enter', (e) => {
|
||||
e.preventDefault()
|
||||
@ -123,12 +126,22 @@ const onCreateAsync = async () => {
|
||||
|
||||
open.value = false
|
||||
try {
|
||||
const template_vault_path = await resolveResource('database/vault.db')
|
||||
|
||||
const template_vault = await readFile(template_vault_path)
|
||||
|
||||
database.path = await save({
|
||||
defaultPath: database.name.endsWith('.db')
|
||||
? database.name
|
||||
: `${database.name}.db`,
|
||||
})
|
||||
|
||||
if (!database.path) return
|
||||
|
||||
await writeFile('temp_vault.db', template_vault, {
|
||||
baseDir: BaseDirectory.AppLocalData,
|
||||
})
|
||||
|
||||
console.log('data', database)
|
||||
|
||||
if (database.path && database.password) {
|
||||
@ -146,7 +159,7 @@ const onCreateAsync = async () => {
|
||||
}
|
||||
} catch (error) {
|
||||
console.error(error)
|
||||
add({ type: 'error', text: JSON.stringify(error) })
|
||||
add({ type: 'error', text: `${error}` })
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -18,7 +18,7 @@
|
||||
<UiTextGradient>HaexVault</UiTextGradient>
|
||||
</template>
|
||||
</i18n-t>
|
||||
|
||||
Path1: {{ test }}
|
||||
<div class="text-sm">{{ props.path ?? database.path }}</div>
|
||||
</template>
|
||||
|
||||
@ -41,6 +41,15 @@
|
||||
<script setup lang="ts">
|
||||
import { open as openVault } from '@tauri-apps/plugin-dialog'
|
||||
import { vaultDatabaseSchema } from './schema'
|
||||
import {
|
||||
BaseDirectory,
|
||||
copyFile,
|
||||
mkdir,
|
||||
exists,
|
||||
readFile,
|
||||
writeFile,
|
||||
stat,
|
||||
} from '@tauri-apps/plugin-fs'
|
||||
|
||||
const { t } = useI18n()
|
||||
|
||||
@ -96,6 +105,7 @@ const onLoadDatabase = async () => {
|
||||
],
|
||||
})
|
||||
|
||||
console.log('onLoadDatabase', database.path)
|
||||
if (!database.path) return
|
||||
|
||||
open.value = true
|
||||
@ -118,13 +128,17 @@ const onOpenDatabase = async () => {
|
||||
database.password,
|
||||
)
|
||||
|
||||
if (!pathCheck.success || !passwordCheck.success || !path) {
|
||||
/* if (!pathCheck.success || !passwordCheck.success || !path) {
|
||||
add({
|
||||
type: 'error',
|
||||
text: `Params falsch. Path: ${pathCheck.error} | Password: ${passwordCheck.error}`,
|
||||
})
|
||||
return
|
||||
}
|
||||
} */
|
||||
|
||||
//const vaultName = await copyDatabaseInAppDirectoryAsync(path)
|
||||
|
||||
//if (!vaultName) return
|
||||
|
||||
const vaultId = await openAsync({
|
||||
path,
|
||||
@ -159,6 +173,31 @@ const onOpenDatabase = async () => {
|
||||
}
|
||||
}
|
||||
|
||||
const test = ref()
|
||||
const copyDatabaseInAppDirectoryAsync = async (source: string) => {
|
||||
const vaultName = getFileName(source)
|
||||
const vaultsDirExists = await exists('vaults', {
|
||||
baseDir: BaseDirectory.AppLocalData,
|
||||
})
|
||||
//convertFileSrc
|
||||
if (!vaultsDirExists) {
|
||||
await mkdir('vaults', {
|
||||
baseDir: BaseDirectory.AppLocalData,
|
||||
})
|
||||
}
|
||||
|
||||
test.value = `source: ${source} - target: vaults/${vaultName}`
|
||||
console.log('copyDatabaseInAppDirectoryAsync', `vaults/${vaultName}`)
|
||||
|
||||
const sourceFile = await readFile(source)
|
||||
await writeFile(`vaults/HaexVault.db`, sourceFile, {
|
||||
baseDir: BaseDirectory.AppLocalData,
|
||||
})
|
||||
/* await copyFile(source, `vaults/HaexVault.db`, {
|
||||
toPathBaseDir: BaseDirectory.AppLocalData,
|
||||
}) */
|
||||
return vaultName
|
||||
}
|
||||
const onAbort = () => {
|
||||
initDatabase()
|
||||
open.value = false
|
||||
|
||||
Reference in New Issue
Block a user