cursorflow 2.3.0__tar.gz → 2.3.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. {cursorflow-2.3.0 → cursorflow-2.3.1}/PKG-INFO +1 -1
  2. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/cli.py +15 -2
  3. {cursorflow-2.3.0 → cursorflow-2.3.1}/pyproject.toml +2 -2
  4. {cursorflow-2.3.0 → cursorflow-2.3.1}/LICENSE +0 -0
  5. {cursorflow-2.3.0 → cursorflow-2.3.1}/MANIFEST.in +0 -0
  6. {cursorflow-2.3.0 → cursorflow-2.3.1}/README.md +0 -0
  7. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/__init__.py +0 -0
  8. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/auto_init.py +0 -0
  9. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/auto_updater.py +0 -0
  10. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/core/action_validator.py +0 -0
  11. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/core/agent.py +0 -0
  12. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/core/auth_handler.py +0 -0
  13. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/core/browser_controller.py +0 -0
  14. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/core/browser_engine.py +0 -0
  15. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/core/config_validator.py +0 -0
  16. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/core/css_iterator.py +0 -0
  17. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/core/cursor_integration.py +0 -0
  18. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/core/cursorflow.py +0 -0
  19. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/core/error_context_collector.py +0 -0
  20. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/core/error_correlator.py +0 -0
  21. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/core/event_correlator.py +0 -0
  22. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/core/file_change_monitor.py +0 -0
  23. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/core/hmr_detector.py +0 -0
  24. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/core/log_collector.py +0 -0
  25. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/core/log_monitor.py +0 -0
  26. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/core/mockup_comparator.py +0 -0
  27. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/core/persistent_session.py +0 -0
  28. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/core/report_generator.py +0 -0
  29. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/core/trace_manager.py +0 -0
  30. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/install_cursorflow_rules.py +0 -0
  31. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/log_sources/local_file.py +0 -0
  32. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/log_sources/ssh_remote.py +0 -0
  33. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/post_install.py +0 -0
  34. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/rules/__init__.py +0 -0
  35. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/rules/cursorflow-installation.mdc +0 -0
  36. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/rules/cursorflow-usage.mdc +0 -0
  37. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow/updater.py +0 -0
  38. {cursorflow-2.3.0 → cursorflow-2.3.1}/cursorflow.egg-info/SOURCES.txt +0 -0
  39. {cursorflow-2.3.0 → cursorflow-2.3.1}/docs/user/USAGE_GUIDE.md +0 -0
  40. {cursorflow-2.3.0 → cursorflow-2.3.1}/examples/comprehensive_screenshot_example.py +0 -0
  41. {cursorflow-2.3.0 → cursorflow-2.3.1}/examples/enhanced_screenshot_example.py +0 -0
  42. {cursorflow-2.3.0 → cursorflow-2.3.1}/examples/hot_reload_css_iteration.py +0 -0
  43. {cursorflow-2.3.0 → cursorflow-2.3.1}/examples/mockup_comparison_example.py +0 -0
  44. {cursorflow-2.3.0 → cursorflow-2.3.1}/examples/opensas_example.py +0 -0
  45. {cursorflow-2.3.0 → cursorflow-2.3.1}/examples/react_example.py +0 -0
  46. {cursorflow-2.3.0 → cursorflow-2.3.1}/examples/responsive_testing_example.py +0 -0
  47. {cursorflow-2.3.0 → cursorflow-2.3.1}/examples/v2_comprehensive_demo.py +0 -0
  48. {cursorflow-2.3.0 → cursorflow-2.3.1}/setup.cfg +0 -0
  49. {cursorflow-2.3.0 → cursorflow-2.3.1}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cursorflow
3
- Version: 2.3.0
3
+ Version: 2.3.1
4
4
  Summary: 🔥 Complete page intelligence for AI-driven development with Hot Reload Intelligence - captures DOM, network, console, performance, HMR events, and comprehensive page analysis
5
5
  Author-email: GeekWarrior Development <rbush@cooltheory.com>
6
6
  License-Expression: MIT
@@ -823,6 +823,17 @@ def inspect(base_url, path, selector, verbose):
823
823
  if not matching_elements:
824
824
  console.print(f"[yellow]⚠️ No elements found matching: {selector}[/yellow]")
825
825
  console.print(f"💡 Total elements captured: {len(elements)}")
826
+
827
+ # Debug: Show some element IDs/classes to help user
828
+ if elements and verbose:
829
+ console.print(f"\n🔍 Debug - Sample of captured elements:")
830
+ for elem in elements[:10]:
831
+ elem_id = elem.get('id', '')
832
+ elem_classes = elem.get('className', '')
833
+ elem_tag = elem.get('tagName', '')
834
+ if elem_id or elem_classes:
835
+ console.print(f" {elem_tag}#{elem_id or '(no-id)'}.{elem_classes or '(no-classes)'}")
836
+
826
837
  return
827
838
 
828
839
  console.print(f"\n✅ Found [bold]{len(matching_elements)}[/bold] matching element(s)\n")
@@ -937,8 +948,10 @@ def _element_matches_selector(element: Dict, selector: str) -> bool:
937
948
  # Class selector
938
949
  if selector.startswith('.'):
939
950
  target_class = selector[1:]
940
- classes = element.get('className', '')
941
- return target_class in classes.split()
951
+ classes = element.get('className') or '' # Handle None from JSON
952
+ if not isinstance(classes, str):
953
+ return False
954
+ return target_class in classes.split() if classes else False
942
955
 
943
956
  # Tag selector
944
957
  tag = element.get('tagName', '').lower()
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "cursorflow"
7
- version = "2.3.0"
7
+ version = "2.3.1"
8
8
  description = "🔥 Complete page intelligence for AI-driven development with Hot Reload Intelligence - captures DOM, network, console, performance, HMR events, and comprehensive page analysis"
9
9
  authors = [
10
10
  {name = "GeekWarrior Development", email = "rbush@cooltheory.com"}
@@ -72,6 +72,6 @@ line-length = 88
72
72
  target-version = ['py38']
73
73
 
74
74
  [tool.mypy]
75
- python_version = "2.3.0"
75
+ python_version = "2.3.1"
76
76
  warn_return_any = true
77
77
  warn_unused_configs = true
File without changes
File without changes
File without changes
File without changes
File without changes