feat: UuidGenerator
Signed-off-by: Corentin Thomasset <corentin.thomasset74@gmail.com>
This commit is contained in:
		
							parent
							
								
									0c120a3c5a
								
							
						
					
					
						commit
						e47ff2456b
					
				| @ -9,6 +9,7 @@ import FileToBase64 from "./routes/tools/FileToBase64"; | |||||||
| import TextCypher from "./routes/tools/TextCypher"; | import TextCypher from "./routes/tools/TextCypher"; | ||||||
| import TextStats from "./routes/tools/TextStats"; | import TextStats from "./routes/tools/TextStats"; | ||||||
| import BaseConverter from "./routes/tools/BaseConverter"; | import BaseConverter from "./routes/tools/BaseConverter"; | ||||||
|  | import UuidGenerator from "./routes/tools/UuidGenerator"; | ||||||
| 
 | 
 | ||||||
| Vue.use(VueRouter) | Vue.use(VueRouter) | ||||||
| 
 | 
 | ||||||
| @ -24,6 +25,13 @@ const toolsComponents = [ | |||||||
|                 component: TokenGenerator, |                 component: TokenGenerator, | ||||||
|                 keywords: ['token', 'random', 'string', 'alphanumeric'] |                 keywords: ['token', 'random', 'string', 'alphanumeric'] | ||||||
|             }, |             }, | ||||||
|  |             { | ||||||
|  |                 icon: 'fa-key', | ||||||
|  |                 text: 'Uuid generator', | ||||||
|  |                 path: '/uuid-generator', | ||||||
|  |                 component: UuidGenerator, | ||||||
|  |                 keywords: ['token', 'v4', 'string', 'alphanumeric'] | ||||||
|  |             }, | ||||||
|             { |             { | ||||||
|                 icon: 'fa-font', |                 icon: 'fa-font', | ||||||
|                 text: 'Hash text', |                 text: 'Hash text', | ||||||
|  | |||||||
							
								
								
									
										47
									
								
								src/routes/tools/UuidGenerator.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										47
									
								
								src/routes/tools/UuidGenerator.vue
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,47 @@ | |||||||
|  | <template> | ||||||
|  |     <v-card class="single-card"> | ||||||
|  |         <v-card-title>Uuid v4 generator</v-card-title> | ||||||
|  | 
 | ||||||
|  |         <v-card-text> | ||||||
|  |             <v-text-field outlined v-model="token" class="centered-input"/> | ||||||
|  | 
 | ||||||
|  |             <div class="text-center"> | ||||||
|  |                 <v-btn @click="refreshBool = !refreshBool" depressed class="mr-4">Refresh</v-btn> | ||||||
|  |                 <v-btn @click="copyToken()" depressed>Copy token</v-btn> | ||||||
|  |             </div> | ||||||
|  |         </v-card-text> | ||||||
|  |     </v-card> | ||||||
|  | </template> | ||||||
|  | 
 | ||||||
|  | <script> | ||||||
|  |     import {copyToClipboard} from "../../utils/helpers"; | ||||||
|  | 
 | ||||||
|  |     const noop = () => { | ||||||
|  |     }; | ||||||
|  | 
 | ||||||
|  |     export default { | ||||||
|  |         name: "UuidGenerator", | ||||||
|  |         data: () => ({ | ||||||
|  |             refreshBool: true | ||||||
|  |         }), | ||||||
|  |         methods: { | ||||||
|  |             copyToken() { | ||||||
|  |                 copyToClipboard(this.token); | ||||||
|  |                 this.$toast.success('Copied to clipboard.') | ||||||
|  |             } | ||||||
|  |         }, | ||||||
|  |         computed: { | ||||||
|  |             token() { | ||||||
|  |                 if (this.refreshBool) noop(); // To force recomputation | ||||||
|  | 
 | ||||||
|  |                 return ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, c => (c ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> c / 4).toString(16)); | ||||||
|  |             } | ||||||
|  |         } | ||||||
|  |     } | ||||||
|  | </script> | ||||||
|  | 
 | ||||||
|  | <style scoped> | ||||||
|  |     ::v-deep .centered-input input { | ||||||
|  |         text-align: center | ||||||
|  |     } | ||||||
|  | </style> | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user