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
This commit is contained in:
		
							parent
							
								
									363c2e47e6
								
							
						
					
					
						commit
						ba4876d0d5
					
				| @ -45,6 +45,7 @@ const output = computed(() => transformer.value(input.value)); | ||||
|     multiline | ||||
|     test-id="input" | ||||
|     :validation-rules="inputValidationRules" | ||||
|     monospace | ||||
|   /> | ||||
| 
 | ||||
|   <div> | ||||
|  | ||||
| @ -29,6 +29,7 @@ const jsonValidationRules = [ | ||||
|     multiline | ||||
|     test-id="leftJson" | ||||
|     raw-text | ||||
|     monospace | ||||
|   /> | ||||
| 
 | ||||
|   <c-input-text | ||||
| @ -40,6 +41,7 @@ const jsonValidationRules = [ | ||||
|     multiline | ||||
|     test-id="rightJson" | ||||
|     raw-text | ||||
|     monospace | ||||
|   /> | ||||
| 
 | ||||
|   <DiffsViewer :left-json="leftJson" :right-json="rightJson" /> | ||||
|  | ||||
| @ -64,16 +64,17 @@ const prettySQL = computed(() => formatSQL(rawSQL.value, config)); | ||||
|   </div> | ||||
| 
 | ||||
|   <n-form-item label="Your SQL query"> | ||||
|     <n-input | ||||
|     <c-input-text | ||||
|       ref="inputElement" | ||||
|       v-model:value="rawSQL" | ||||
|       placeholder="Put your SQL query here..." | ||||
|       type="textarea" | ||||
|       rows="20" | ||||
|       multiline | ||||
|       autocomplete="off" | ||||
|       autocorrect="off" | ||||
|       autocapitalize="off" | ||||
|       spellcheck="false" | ||||
|       monospace | ||||
|     /> | ||||
|   </n-form-item> | ||||
|   <n-form-item label="Prettify version of your query"> | ||||
|  | ||||
| @ -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" | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user