Add button to refresh text lorem-ipsum
This commit is contained in:
		
							parent
							
								
									76a19d218d
								
							
						
					
					
						commit
						685c768df8
					
				| @ -2,6 +2,7 @@ | |||||||
| import { generateLoremIpsum } from './lorem-ipsum-generator.service'; | import { generateLoremIpsum } from './lorem-ipsum-generator.service'; | ||||||
| import { useCopy } from '@/composable/copy'; | import { useCopy } from '@/composable/copy'; | ||||||
| import { randIntFromInterval } from '@/utils/random'; | import { randIntFromInterval } from '@/utils/random'; | ||||||
|  | import { computedRefreshable } from '@/composable/computedRefreshable'; | ||||||
| 
 | 
 | ||||||
| const paragraphs = ref(1); | const paragraphs = ref(1); | ||||||
| const sentences = ref([3, 8]); | const sentences = ref([3, 8]); | ||||||
| @ -9,7 +10,7 @@ const words = ref([8, 15]); | |||||||
| const startWithLoremIpsum = ref(true); | const startWithLoremIpsum = ref(true); | ||||||
| const asHTML = ref(false); | const asHTML = ref(false); | ||||||
| 
 | 
 | ||||||
| const loremIpsumText = computed(() => | const [loremIpsumText, refreshLoremIpsum] = computedRefreshable(() => | ||||||
|   generateLoremIpsum({ |   generateLoremIpsum({ | ||||||
|     paragraphCount: paragraphs.value, |     paragraphCount: paragraphs.value, | ||||||
|     asHTML: asHTML.value, |     asHTML: asHTML.value, | ||||||
| @ -18,6 +19,7 @@ const loremIpsumText = computed(() => | |||||||
|     startWithLoremIpsum: startWithLoremIpsum.value, |     startWithLoremIpsum: startWithLoremIpsum.value, | ||||||
|   }), |   }), | ||||||
| ); | ); | ||||||
|  | 
 | ||||||
| const { copy } = useCopy({ source: loremIpsumText, text: 'Lorem ipsum copied to the clipboard' }); | const { copy } = useCopy({ source: loremIpsumText, text: 'Lorem ipsum copied to the clipboard' }); | ||||||
| </script> | </script> | ||||||
| 
 | 
 | ||||||
| @ -41,10 +43,13 @@ const { copy } = useCopy({ source: loremIpsumText, text: 'Lorem ipsum copied to | |||||||
| 
 | 
 | ||||||
|     <c-input-text :value="loremIpsumText" multiline placeholder="Your lorem ipsum..." readonly mt-5 rows="5" /> |     <c-input-text :value="loremIpsumText" multiline placeholder="Your lorem ipsum..." readonly mt-5 rows="5" /> | ||||||
| 
 | 
 | ||||||
|     <div mt-5 flex justify-center> |     <div mt-5 flex justify-center gap-3> | ||||||
|       <c-button autofocus @click="copy()"> |       <c-button autofocus @click="copy()"> | ||||||
|         Copy |         Copy | ||||||
|       </c-button> |       </c-button> | ||||||
|  |       <c-button @click="refreshLoremIpsum"> | ||||||
|  |         Refresh | ||||||
|  |       </c-button> | ||||||
|     </div> |     </div> | ||||||
|   </c-card> |   </c-card> | ||||||
| </template> | </template> | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user