it-tools/src/tools/text-statistics/text-statistics.vue

39 lines
1.2 KiB
Vue
Raw Normal View History

2022-04-14 01:06:06 +02:00
<template>
<n-card>
2022-04-15 23:10:47 +02:00
<n-input
v-model:value="text"
type="textarea"
placeholder="Your text..."
rows="5"
/>
2022-04-14 01:06:06 +02:00
<br>
<br>
<n-space justify="space-around">
2022-04-15 23:10:47 +02:00
<n-statistic
label="Character count"
:value="text.length"
/>
<n-statistic
label="Word count"
:value="text.split(/\s+/).length"
/>
<n-statistic
label="Line count"
:value="text.split(/\r\n|\r|\n/).length"
/>
<n-statistic
label="Byte size"
:value="formatBytes(getStringSizeInBytes(text))"
/>
2022-04-14 01:06:06 +02:00
</n-space>
</n-card>
</template>
<script setup lang="ts">
import { ref } from 'vue'
import { formatBytes } from '@/utils/convert'
import { getStringSizeInBytes } from './text-statistics.service'
const text = ref('Lorem ipsum dolor sit amet, consectetur adipiscing elit. Commodo risus faucibus varius volutpat habitasse suspendisse justo inceptos primis mi. Fusce molestie lorem bibendum habitasse litora adipiscing turpis egestas quis nec. Non id conubia vulputate etiam iaculis vitae venenatis hac fusce condimentum. Adipiscing pellentesque venenatis ornare pulvinar tempus hac montes velit erat convallis.')
</script>