mirror of
				https://github.com/Unleash/unleash.git
				synced 2025-10-27 11:02:16 +01:00 
			
		
		
		
	Will know tell the user if the toggle name is already in use by an active feature toggle or an archived toggle. Also brings lates unleash-frontend fix, which prevents an invalid form from submitting. closes: #290, #291
		
			
				
	
	
		
			32 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			32 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| 'use strict';
 | |
| 
 | |
| module.exports = () => {
 | |
|     const _features = [];
 | |
|     const _archive = [];
 | |
|     return {
 | |
|         getFeature: name => {
 | |
|             const toggle = _features.find(f => f.name === name);
 | |
|             if (toggle) {
 | |
|                 return Promise.resolve(toggle);
 | |
|             } else {
 | |
|                 return Promise.reject();
 | |
|             }
 | |
|         },
 | |
|         hasFeature: name => {
 | |
|             const toggle = _features.find(f => f.name === name);
 | |
|             const archived = _archive.find(f => f.name === name);
 | |
|             if (toggle) {
 | |
|                 return Promise.resolve({ name, archived: false });
 | |
|             } else if (archived) {
 | |
|                 return Promise.resolve({ name, archived: true });
 | |
|             } else {
 | |
|                 return Promise.reject();
 | |
|             }
 | |
|         },
 | |
|         getFeatures: () => Promise.resolve(_features),
 | |
|         addFeature: feature => _features.push(feature),
 | |
|         getArchivedFeatures: () => Promise.resolve(_archive),
 | |
|         addArchivedFeature: feature => _archive.push(feature),
 | |
|     };
 | |
| };
 |