22 lines
		
	
	
		
			499 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			22 lines
		
	
	
		
			499 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| let urlAlphabet =
 | |
|   'useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict'
 | |
| let customAlphabet = (alphabet, defaultSize = 21) => {
 | |
|   return (size = defaultSize) => {
 | |
|     let id = ''
 | |
|     let i = size
 | |
|     while (i--) {
 | |
|       id += alphabet[(Math.random() * alphabet.length) | 0]
 | |
|     }
 | |
|     return id
 | |
|   }
 | |
| }
 | |
| let nanoid = (size = 21) => {
 | |
|   let id = ''
 | |
|   let i = size
 | |
|   while (i--) {
 | |
|     id += urlAlphabet[(Math.random() * 64) | 0]
 | |
|   }
 | |
|   return id
 | |
| }
 | |
| module.exports = { nanoid, customAlphabet }
 | 
