From ba4876d0d52c92580e6bac3fd2e22d90c0182824 Mon Sep 17 00:00:00 2001 From: Marvin <33938500+marvin-j97@users.noreply.github.com> Date: Fri, 23 Jun 2023 16:51:52 +0200 Subject: [PATCH] refacor(transformers): use monospace font for JSON and SQL text areas (#476) * feat(c-input): Add monospace prop * feat: use monospace input for json and sql inputs --- src/components/FormatTransformer.vue | 1 + src/tools/json-diff/json-diff.vue | 2 ++ src/tools/sql-prettify/sql-prettify.vue | 5 +++-- src/ui/c-input-text/c-input-text.vue | 10 +++++++++- 4 files changed, 15 insertions(+), 3 deletions(-) diff --git a/src/components/FormatTransformer.vue b/src/components/FormatTransformer.vue index cf62a9f4..677fc25a 100644 --- a/src/components/FormatTransformer.vue +++ b/src/components/FormatTransformer.vue @@ -45,6 +45,7 @@ const output = computed(() => transformer.value(input.value)); multiline test-id="input" :validation-rules="inputValidationRules" + monospace />
diff --git a/src/tools/json-diff/json-diff.vue b/src/tools/json-diff/json-diff.vue index 2e57c502..80ada78b 100644 --- a/src/tools/json-diff/json-diff.vue +++ b/src/tools/json-diff/json-diff.vue @@ -29,6 +29,7 @@ const jsonValidationRules = [ multiline test-id="leftJson" raw-text + monospace /> diff --git a/src/tools/sql-prettify/sql-prettify.vue b/src/tools/sql-prettify/sql-prettify.vue index ee4abdc6..a0da8a75 100644 --- a/src/tools/sql-prettify/sql-prettify.vue +++ b/src/tools/sql-prettify/sql-prettify.vue @@ -64,16 +64,17 @@ const prettySQL = computed(() => formatSQL(rawSQL.value, config));
- diff --git a/src/ui/c-input-text/c-input-text.vue b/src/ui/c-input-text/c-input-text.vue index b89d1e40..0f96b2a1 100644 --- a/src/ui/c-input-text/c-input-text.vue +++ b/src/ui/c-input-text/c-input-text.vue @@ -30,6 +30,7 @@ const props = withDefaults( rows?: number | string autosize?: boolean autofocus?: boolean + monospace?: boolean }>(), { value: '', @@ -56,13 +57,14 @@ const props = withDefaults( rows: 3, autosize: false, autofocus: false, + monospace: false, }, ); const emit = defineEmits(['update:value']); const value = useVModel(props, 'value', emit); const showPassword = ref(false); -const { id, placeholder, label, validationRules, labelPosition, labelWidth, labelAlign, autosize, readonly, disabled, clearable, type, multiline, rows, rawText, autofocus } = toRefs(props); +const { id, placeholder, label, validationRules, labelPosition, labelWidth, labelAlign, autosize, readonly, disabled, clearable, type, multiline, rows, rawText, autofocus, monospace } = toRefs(props); const validation = props.validation @@ -157,6 +159,9 @@ defineExpose({ ref="textareaRef" v-model="value" class="input" + :class="{ + 'leading-5 !font-mono': monospace, + }" :placeholder="placeholder" :readonly="readonly" :disabled="disabled" @@ -175,6 +180,9 @@ defineExpose({ v-model="value" :type="htmlInputType" class="input" + :class="{ + 'leading-5 !font-mono': monospace, + }" size="1" :placeholder="placeholder" :readonly="readonly"