mirror of
				https://github.com/SoftFever/OrcaSlicer.git
				synced 2025-10-25 01:31:14 -06:00 
			
		
		
		
	 b4ffa91cb4
			
		
	
	
		b4ffa91cb4
		
	
	
	
	
		
			
			Change-Id: I066c0e7f8ce87ec00b1141a1b44430444a819b42 (cherry picked from commit 05907a1a42da82737090d55046974d401f8af057)
		
			
				
	
	
		
			39 lines
		
	
	
		
			No EOL
		
	
	
		
			1.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			39 lines
		
	
	
		
			No EOL
		
	
	
		
			1.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| import { isObject } from './utils.js';
 | |
| import { paramsList } from './params-list.js';
 | |
| 
 | |
| function getChangedParams(swiperParams, oldParams) {
 | |
|   const keys = [];
 | |
|   if (!oldParams) return keys;
 | |
| 
 | |
|   const addKey = key => {
 | |
|     if (keys.indexOf(key) < 0) keys.push(key);
 | |
|   };
 | |
| 
 | |
|   const watchParams = paramsList.filter(key => key[0] === '_').map(key => key.replace(/_/, ''));
 | |
|   watchParams.forEach(key => {
 | |
|     if (key in swiperParams && key in oldParams) {
 | |
|       if (isObject(swiperParams[key]) && isObject(oldParams[key])) {
 | |
|         const newKeys = Object.keys(swiperParams[key]);
 | |
|         const oldKeys = Object.keys(oldParams[key]);
 | |
| 
 | |
|         if (newKeys.length !== oldKeys.length) {
 | |
|           addKey(key);
 | |
|         } else {
 | |
|           newKeys.forEach(newKey => {
 | |
|             if (swiperParams[key][newKey] !== oldParams[key][newKey]) {
 | |
|               addKey(key);
 | |
|             }
 | |
|           });
 | |
|           oldKeys.forEach(oldKey => {
 | |
|             if (swiperParams[key][oldKey] !== oldParams[key][oldKey]) addKey(key);
 | |
|           });
 | |
|         }
 | |
|       } else if (swiperParams[key] !== oldParams[key]) {
 | |
|         addKey(key);
 | |
|       }
 | |
|     }
 | |
|   });
 | |
|   return keys;
 | |
| }
 | |
| 
 | |
| export { getChangedParams }; |