email-normalizer-texts

This commit is contained in:
steffenrapp 2024-09-05 16:31:40 +00:00
parent 0a72a2b24b
commit f5a5ca6550
3 changed files with 24 additions and 7 deletions

View file

@ -495,6 +495,14 @@ tools:
description: >-
Vereinheitlichen von E-Mail-Adressen auf ein Standardformat für einen
einfacheren Vergleich. Nützlich für Deduplizierung und Datenbereinigung.
input: 'Unbearbeitete E-Mails zur Normalisierung:'
input-placeholder: Gib hier deine E-Mails ein (eine pro Zeile)...
output: 'Normalisierte E-Mails:'
output-placeholder: Hier werden normalisierte E-Mails angezeigt...
button:
clear: E-Mails leeren
copy: Kopiere normalisierte E-Mails
copied: Normalisierte E-Mails in die Zwischenablage kopiert
markdown-to-html:
title: Markdown zu HTML
description: Markdown in HTML konvertieren und (als PDF) ausdrucken

View file

@ -464,6 +464,14 @@ tools:
description: >-
Normalize email addresses to a standard format for easier comparison.
Useful for deduplication and data cleaning.
input: 'Raw emails to normalize:'
output: 'Normalized emails:'
input-placeholder: Put your emails here (one per line)...
output-placeholder: Normalized emails will appear here...
button:
clear: Clear emails
copy: Copy normalized emails
copied: Normalized emails copied to the clipboard
markdown-to-html:
title: Markdown to HTML
description: Convert Markdown to HTML and allow to print (as PDF)

View file

@ -3,6 +3,7 @@ import { normalizeEmail } from 'email-normalizer';
import { withDefaultOnError } from '@/utils/defaults';
import { useCopy } from '@/composable/copy';
const { t } = useI18n();
const emails = ref('');
const normalizedEmails = computed(() => {
if (!emails.value) {
@ -17,17 +18,17 @@ const normalizedEmails = computed(() => {
.join('\n');
});
const { copy } = useCopy({ source: normalizedEmails, text: 'Normalized emails copied to the clipboard', createToast: true });
const { copy } = useCopy({ source: normalizedEmails, text: t('tools.email-normalizer.copied'), createToast: true });
</script>
<template>
<div>
<div class="mb-2">
Raw emails to normalize:
{{ t('tools.email-normalizer.input') }}
</div>
<c-input-text
v-model:value="emails"
placeholder="Put your emails here (one per line)..."
:placeholder="t('tools.email-normalizer.input-placeholder')"
rows="3"
multiline
autocomplete="off"
@ -39,11 +40,11 @@ const { copy } = useCopy({ source: normalizedEmails, text: 'Normalized emails co
/>
<div class="mb-2 mt-4">
Normalized emails:
{{ t('tools.email-normalizer.output') }}
</div>
<c-input-text
:value="normalizedEmails"
placeholder="Normalized emails will appear here..."
:placeholder="t('tools.email-normalizer.output-placeholder')"
rows="3"
autocomplete="off"
autocorrect="off"
@ -55,10 +56,10 @@ const { copy } = useCopy({ source: normalizedEmails, text: 'Normalized emails co
/>
<div class="mt-4 flex justify-center gap-2">
<c-button @click="emails = ''">
Clear emails
{{ t('tools.email-normalizer.button.clear') }}
</c-button>
<c-button :disabled="!normalizedEmails" @click="copy()">
Copy normalized emails
{{ t('tools.email-normalizer.button.copy') }}
</c-button>
</div>
</div>