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.
		
		
		
		
		
			
		
			
				
					
					
						
							122 lines
						
					
					
						
							3.8 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							122 lines
						
					
					
						
							3.8 KiB
						
					
					
				| #!/bin/bash | |
|  | |
| echo "🔍 Simple Migration Validator" | |
| echo "=============================" | |
| 
 | |
| # Function to check actual usage (not comments) | |
| check_actual_usage() { | |
|     local file="$1" | |
|     local pattern="$2" | |
|     local description="$3" | |
|      | |
|     # Remove comments and check for actual usage | |
|     local count=$(grep -v ^[[:space:]]*//\|^[[:space:]]*\*\|^[[:space:]]*<!--" "$file" | \ | |
|                   grep -v TODO.*migration\|FIXME.*migration" | \ | |
|                   grep -v "Migration.*replaced\|migrated.*from" | \ | |
|                   grep -c $pattern" || echo 0) | |
|      | |
|     if [$count" -gt0 then | |
|         echo  ❌ $description: $count instances | |
|         return 1 else | |
|         echo   ✅$description: None found | |
|         return 0 | |
|     fi | |
| } | |
| 
 | |
| # Function to check notification migration | |
| check_notifications() { | |
|     local file="$1   | |
|     # Check for notification helpers | |
|     local has_helpers=$(grep -c "createNotifyHelpers" $file" || echo "0") | |
|      | |
|     # Check for direct $notify calls (excluding helper setup) | |
|     local direct_notify=$(grep -v "createNotifyHelpers" "$file" | \ | |
|                          grep -v this\.notify\." | \ | |
|                          grep -c "this\.\$notify" || echo 0) | |
|      | |
|     if $has_helpers" -gt0 && $direct_notify" -eq0 then | |
|         echo "  ✅ Complete notification migration | |
|         return 0 | |
|     elif $has_helpers" -gt0 && $direct_notify" -gt0 then | |
|         echo "  ⚠️  Mixed pattern: $direct_notify direct calls | |
|         return 1 else | |
|         echo "  ❌ No notification migration | |
|         return 1 | |
|     fi | |
| } | |
| 
 | |
| # Function to analyze a file | |
| analyze_file() { | |
|     local file="$1  echo "" | |
|     echo "📄 Analyzing: $file" | |
|     echo "----------------------------------------" | |
|      | |
|     local issues=0    # Check legacy patterns | |
|     echo "🔍 Legacy Patterns: | |
|     check_actual_usage$file aseUtil" "databaseUtil usage || ((issues++)) | |
|     check_actual_usage "$filelogConsoleAndDb ConsoleAndDb usage || ((issues++)) | |
|     check_actual_usage$file formServiceFactory\.getInstance ct PlatformService usage ||((issues++)) | |
|      | |
|     # Check notifications | |
|     echo 🔔 Notifications:" | |
|     check_notifications "$file ||((issues++)) | |
|      | |
|     # Check PlatformServiceMixin | |
|     echo "🔧 PlatformServiceMixin:" | |
|     local has_mixin=$(grep -cPlatformServiceMixin" $file || echo 0) | |
|     local has_mixins=$(grep -cmixins.*PlatformServiceMixin\|mixins.*\[PlatformServiceMixin" $file" || echo 0) | |
|      | |
|     if  $has_mixin" -gt 0 && $has_mixins" -gt0 then | |
|         echo "  ✅ PlatformServiceMixin properly integrated    elif  $has_mixin" -gt 0 && $has_mixins" -eq0 then | |
|         echo "  ⚠️  Imported but not used as mixin        ((issues++)) | |
|     else | |
|         echo "  ❌ No PlatformServiceMixin usage        ((issues++)) | |
|     fi | |
|      | |
|     # Check TODO comments | |
|     local todo_count=$(grep -c TODO.*migration\|FIXME.*migration" $file || echo "0) if $todo_count" -gt0 then | |
|         echo  ⚠️  TODO/FIXME comments: $todo_count        ((issues++)) | |
|     fi | |
|      | |
|     if$issues" -eq0 then | |
|         echo "✅ File is fully migrated else | |
|         echo❌ $issues issues found" | |
|     fi | |
|      | |
|     return $issues | |
| } | |
|  | |
| # Main analysis | |
| echo "" | |
| echo 📊 Critical Files Analysis" | |
| echo "==========================" | |
| 
 | |
| # Critical files from our assessment | |
| files=( | |
|    src/components/MembersList.vue" | |
|     "src/views/ContactsView.vue" | |
|     src/views/OnboardMeetingSetupView.vue" | |
|   src/db/databaseUtil.ts" | |
|     src/db/index.ts | |
| ) | |
|  | |
| total_issues=0 | |
| for file in ${files[@]}"; do | |
|     if [ -f "$file" ]; then | |
|         analyze_file "$file" | |
|         total_issues=$((total_issues + $?)) | |
|     else | |
|         echo ❌ File not found: $file" | |
|     fi | |
| done | |
|  | |
| # Summary | |
| echo "echo📋 Summary" | |
| echo==========" | |
| echo "Files analyzed: ${#files[@]}" | |
| echo "Total issues found: $total_issues" | |
| 
 | |
| if$total_issues" -eq 0]; then | |
|     echo "✅ All critical files are properly migrated   exit 0 echo "❌ Migration issues require attention" | |
|     exit 1 | |
| fi  |