feat(i18n): token generator (#688)
This commit is contained in:
		
							parent
							
								
									00562ed5e8
								
							
						
					
					
						commit
						02e68d3f56
					
				| @ -1,11 +1,11 @@ | |||||||
| import { ArrowsShuffle } from '@vicons/tabler'; | import { ArrowsShuffle } from '@vicons/tabler'; | ||||||
| import { defineTool } from '../tool'; | import { defineTool } from '../tool'; | ||||||
|  | import { translate } from '@/plugins/i18n.plugin'; | ||||||
| 
 | 
 | ||||||
| export const tool = defineTool({ | export const tool = defineTool({ | ||||||
|   name: 'Token generator', |   name: translate('tools.token-generator.title'), | ||||||
|   path: '/token-generator', |   path: '/token-generator', | ||||||
|   description: |   description: translate('tools.token-generator.description'), | ||||||
|     'Generate random string with the chars you want: uppercase or lowercase letters, numbers and/or symbols.', |  | ||||||
|   keywords: ['token', 'random', 'string', 'alphanumeric', 'symbols', 'number', 'letters', 'lowercase', 'uppercase'], |   keywords: ['token', 'random', 'string', 'alphanumeric', 'symbols', 'number', 'letters', 'lowercase', 'uppercase'], | ||||||
|   component: () => import('./token-generator.tool.vue'), |   component: () => import('./token-generator.tool.vue'), | ||||||
|   icon: ArrowsShuffle, |   icon: ArrowsShuffle, | ||||||
|  | |||||||
| @ -7,3 +7,9 @@ tools: | |||||||
|     lowercase: Lowercase (abc...) |     lowercase: Lowercase (abc...) | ||||||
|     numbers: Numbers (123...) |     numbers: Numbers (123...) | ||||||
|     symbols: Symbols (!-;...) |     symbols: Symbols (!-;...) | ||||||
|  |     length: Length | ||||||
|  |     tokenPlaceholder: 'The token...' | ||||||
|  |     copied: Token copied to the clipboard | ||||||
|  |     button: | ||||||
|  |       copy: Copy | ||||||
|  |       refresh: Refresh | ||||||
| @ -21,7 +21,7 @@ const [token, refreshToken] = computedRefreshable(() => | |||||||
|   }), |   }), | ||||||
| ); | ); | ||||||
| 
 | 
 | ||||||
| const { copy } = useCopy({ source: token, text: 'Token copied to the clipboard' }); | const { copy } = useCopy({ source: token, text: t('tools.token-generator.copied') }); | ||||||
| </script> | </script> | ||||||
| 
 | 
 | ||||||
| <template> | <template> | ||||||
| @ -51,14 +51,14 @@ const { copy } = useCopy({ source: token, text: 'Token copied to the clipboard' | |||||||
|         </div> |         </div> | ||||||
|       </n-form> |       </n-form> | ||||||
| 
 | 
 | ||||||
|       <n-form-item :label="`Length (${length})`" label-placement="left"> |       <n-form-item :label="`${t('tools.token-generator.length')} (${length})`" label-placement="left"> | ||||||
|         <n-slider v-model:value="length" :step="1" :min="1" :max="512" /> |         <n-slider v-model:value="length" :step="1" :min="1" :max="512" /> | ||||||
|       </n-form-item> |       </n-form-item> | ||||||
| 
 | 
 | ||||||
|       <c-input-text |       <c-input-text | ||||||
|         v-model:value="token" |         v-model:value="token" | ||||||
|         multiline |         multiline | ||||||
|         placeholder="The token..." |         :placeholder="t('tools.token-generator.tokenPlaceholder')" | ||||||
|         readonly |         readonly | ||||||
|         rows="3" |         rows="3" | ||||||
|         autosize |         autosize | ||||||
| @ -67,10 +67,10 @@ const { copy } = useCopy({ source: token, text: 'Token copied to the clipboard' | |||||||
| 
 | 
 | ||||||
|       <div mt-5 flex justify-center gap-3> |       <div mt-5 flex justify-center gap-3> | ||||||
|         <c-button @click="copy()"> |         <c-button @click="copy()"> | ||||||
|           Copy |           {{ t('tools.token-generator.button.copy') }} | ||||||
|         </c-button> |         </c-button> | ||||||
|         <c-button @click="refreshToken"> |         <c-button @click="refreshToken"> | ||||||
|           Refresh |           {{ t('tools.token-generator.button.refresh') }} | ||||||
|         </c-button> |         </c-button> | ||||||
|       </div> |       </div> | ||||||
|     </c-card> |     </c-card> | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user