| 
									
										
										
										
											2022-01-16 15:24:24 -09:00
										 |  |  | <template> | 
					
						
							|  |  |  |   <div class="d-flex align-center" style="max-width: 60px"> | 
					
						
							|  |  |  |     <v-text-field | 
					
						
							|  |  |  |       v-model.number="quantity" | 
					
						
							|  |  |  |       hide-details | 
					
						
							| 
									
										
										
										
											2022-08-15 23:55:51 +02:00
										 |  |  |       :label="$t('form.quantity-label-abbreviated')" | 
					
						
							| 
									
										
										
										
											2022-01-16 15:24:24 -09:00
										 |  |  |       :min="min" | 
					
						
							|  |  |  |       :max="max" | 
					
						
							|  |  |  |       type="number" | 
					
						
							|  |  |  |       class="rounded-xl" | 
					
						
							|  |  |  |       small | 
					
						
							|  |  |  |       text | 
					
						
							|  |  |  |     > | 
					
						
							|  |  |  |     </v-text-field> | 
					
						
							|  |  |  |   </div> | 
					
						
							|  |  |  | </template> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | <script lang="ts"> | 
					
						
							|  |  |  | import { computed, defineComponent } from "@nuxtjs/composition-api"; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | export default defineComponent({ | 
					
						
							|  |  |  |   name: "VInputNumber", | 
					
						
							|  |  |  |   props: { | 
					
						
							|  |  |  |     min: { | 
					
						
							|  |  |  |       type: Number, | 
					
						
							|  |  |  |       default: 0, | 
					
						
							|  |  |  |     }, | 
					
						
							|  |  |  |     max: { | 
					
						
							|  |  |  |       type: Number, | 
					
						
							|  |  |  |       default: 9999, | 
					
						
							|  |  |  |     }, | 
					
						
							|  |  |  |     rules: { | 
					
						
							|  |  |  |       type: Array, | 
					
						
							|  |  |  |       default: () => [], | 
					
						
							|  |  |  |     }, | 
					
						
							|  |  |  |     step: { | 
					
						
							|  |  |  |       type: Number, | 
					
						
							|  |  |  |       default: 1, | 
					
						
							|  |  |  |     }, | 
					
						
							|  |  |  |     value: { | 
					
						
							|  |  |  |       type: Number, | 
					
						
							|  |  |  |       default: 0, | 
					
						
							|  |  |  |     }, | 
					
						
							|  |  |  |   }, | 
					
						
							|  |  |  |   setup(props, context) { | 
					
						
							|  |  |  |     const quantity = computed({ | 
					
						
							|  |  |  |       get: () => { | 
					
						
							|  |  |  |         return Number(props.value); | 
					
						
							|  |  |  |       }, | 
					
						
							|  |  |  |       set: (val) => { | 
					
						
							|  |  |  |         context.emit("input", val); | 
					
						
							|  |  |  |       }, | 
					
						
							|  |  |  |     }); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     return { | 
					
						
							|  |  |  |       quantity, | 
					
						
							|  |  |  |     }; | 
					
						
							|  |  |  |   }, | 
					
						
							|  |  |  | }); | 
					
						
							| 
									
										
										
										
											2022-08-15 23:55:51 +02:00
										 |  |  | </script> |