support exporting statistics & analysis result, reconciliation statement and import check result to SSV (semicolon separated values) file

This commit is contained in:
MaysWind
2026-02-24 22:59:29 +08:00
parent f9e9c9285f
commit 6d37d42e50
25 changed files with 59 additions and 6 deletions
@@ -26,6 +26,10 @@
:append-icon="fileFormat === KnownFileType.TSV.extension ? mdiCheck : undefined"
:title="tt('TSV (Tab-separated values) File')"
@click="fileFormat = KnownFileType.TSV.extension"></v-list-item>
<v-list-item :prepend-icon="extendMdiSemicolon"
:append-icon="fileFormat === KnownFileType.SSV.extension ? mdiCheck : undefined"
:title="tt('SSV (Semicolon-separated values) File')"
@click="fileFormat = KnownFileType.SSV.extension"></v-list-item>
<v-list-item :prepend-icon="mdiLanguageMarkdownOutline"
:append-icon="fileFormat === KnownFileType.MARKDOWN.extension ? mdiCheck : undefined"
:title="tt('Markdown File')"
@@ -91,6 +95,9 @@ import { KnownFileType } from '@/core/file.ts';
import { replaceAll } from '@/lib/common.ts';
import { copyTextToClipboard, startDownloadFile } from '@/lib/ui/common.ts';
import {
extendMdiSemicolon
} from '@/icons/desktop/extend_mdi_icons.ts';
import {
mdiDotsVertical,
mdiCheck,
@@ -152,11 +159,13 @@ const dataTableItems = computed<object[]>(() => {
const exportedData = computed<string>(() => {
let ret = '';
if (fileFormat.value === KnownFileType.CSV.extension || fileFormat.value === KnownFileType.TSV.extension) {
if (fileFormat.value === KnownFileType.CSV.extension || fileFormat.value === KnownFileType.TSV.extension || fileFormat.value === KnownFileType.SSV.extension) {
let separator = ',';
if (fileFormat.value === KnownFileType.TSV.extension) {
separator = '\t';
} else if (fileFormat.value === KnownFileType.SSV.extension) {
separator = ';';
}
if (headers.value.length > 0) {