You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					30 lines
				
				760 B
			
		
		
			
		
	
	
					30 lines
				
				760 B
			| 
								 
											3 years ago
										 
									 | 
							
								'use strict'
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// turn tar(1) style args like `C` into the more verbose things like `cwd`
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								const argmap = new Map([
							 | 
						||
| 
								 | 
							
								  ['C', 'cwd'],
							 | 
						||
| 
								 | 
							
								  ['f', 'file'],
							 | 
						||
| 
								 | 
							
								  ['z', 'gzip'],
							 | 
						||
| 
								 | 
							
								  ['P', 'preservePaths'],
							 | 
						||
| 
								 | 
							
								  ['U', 'unlink'],
							 | 
						||
| 
								 | 
							
								  ['strip-components', 'strip'],
							 | 
						||
| 
								 | 
							
								  ['stripComponents', 'strip'],
							 | 
						||
| 
								 | 
							
								  ['keep-newer', 'newer'],
							 | 
						||
| 
								 | 
							
								  ['keepNewer', 'newer'],
							 | 
						||
| 
								 | 
							
								  ['keep-newer-files', 'newer'],
							 | 
						||
| 
								 | 
							
								  ['keepNewerFiles', 'newer'],
							 | 
						||
| 
								 | 
							
								  ['k', 'keep'],
							 | 
						||
| 
								 | 
							
								  ['keep-existing', 'keep'],
							 | 
						||
| 
								 | 
							
								  ['keepExisting', 'keep'],
							 | 
						||
| 
								 | 
							
								  ['m', 'noMtime'],
							 | 
						||
| 
								 | 
							
								  ['no-mtime', 'noMtime'],
							 | 
						||
| 
								 | 
							
								  ['p', 'preserveOwner'],
							 | 
						||
| 
								 | 
							
								  ['L', 'follow'],
							 | 
						||
| 
								 | 
							
								  ['h', 'follow'],
							 | 
						||
| 
								 | 
							
								])
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								module.exports = opt => opt ? Object.keys(opt).map(k => [
							 | 
						||
| 
								 | 
							
								  argmap.has(k) ? argmap.get(k) : k, opt[k],
							 | 
						||
| 
								 | 
							
								]).reduce((set, kv) => (set[kv[0]] = kv[1], set), Object.create(null)) : {}
							 |