Repository: flame-engine/flame

Issue:
`ComponentRenderContext` is not exported while the document suggesting it is public.
### What happened?

In the document of `Component`, it is suggested that user should be able to subclass and provide their own `ComponentRenderContext`, however this class is not exported, and users would need to directly import from `'src/components/core/component_render_context.dart'` to used it.

```
/// Override this method if you want your component to provide a custom
/// render context to all its children (recursively).
ComponentRenderContext? get renderContext => null;

T? findRenderContext<T extends ComponentRenderContext>() {
  return _renderContexts.whereType<T>().lastOrNull;
}

```

### What do you expect?

If this class is considered internal, the document shouldn't suggest user to provide their own render context. Otherwise `ComponentRenderContext` should be exported somewhere outside `src/`

### How can we reproduce this?

_No response_

### What steps should take to fix this?

_No response_

### Do have an example of where the bug occurs?

_No response_

### Relevant log output

```shell

```

### Execute in a terminal and put output into the code block below

Output of: flutter doctor -v

### Affected platforms

All

### Other information

_No response_

### Are you interested in working on a PR for this?

- [ ] I want to work on this



Fix patch:
diff --git a/packages/flame/lib/components.dart b/packages/flame/lib/components.dart
index ae8b23a6607..97db0a50c44 100644
--- a/packages/flame/lib/components.dart
+++ b/packages/flame/lib/components.dart
@@ -10,6 +10,7 @@ export 'src/components/clip_component.dart';
 export 'src/components/components_notifier.dart';
 export 'src/components/core/component.dart';
 export 'src/components/core/component_key.dart';
+export 'src/components/core/component_render_context.dart';
 export 'src/components/custom_painter_component.dart';
 export 'src/components/fps_component.dart';
 export 'src/components/fps_text_component.dart';
diff --git a/packages/flame/lib/src/camera/camera_component.dart b/packages/flame/lib/src/camera/camera_component.dart
index 1e70a0ba019..8e6eec2e42d 100644
--- a/packages/flame/lib/src/camera/camera_component.dart
+++ b/packages/flame/lib/src/camera/camera_component.dart
@@ -10,7 +10,6 @@ import 'package:flame/src/camera/viewfinder.dart';
 import 'package:flame/src/camera/viewport.dart';
 import 'package:flame/src/camera/viewports/fixed_resolution_viewport.dart';
 import 'package:flame/src/camera/viewports/max_viewport.dart';
-import 'package:flame/src/components/core/component_render_context.dart';
 import 'package:flame/src/components/core/component_tree_root.dart';
 import 'package:flame/src/effects/controllers/effect_controller.dart';
 import 'package:flame/src/effects/move_by_effect.dart';
diff --git a/packages/flame/lib/src/components/core/component.dart b/packages/flame/lib/src/components/core/component.dart
index f961384232d..9bdb3f4aac0 100644
--- a/packages/flame/lib/src/components/core/component.dart
+++ b/packages/flame/lib/src/components/core/component.dart
@@ -6,7 +6,6 @@ import 'package:flame/components.dart';
 import 'package:flame/game.dart';
 import 'package:flame/src/cache/value_cache.dart';
 import 'package:flame/src/camera/viewport.dart';
-import 'package:flame/src/components/core/component_render_context.dart';
 import 'package:flame/src/components/core/component_tree_root.dart';
 import 'package:flame/src/effects/provider_interfaces.dart';
 import 'package:flutter/painting.dart';
diff --git a/packages/flame/lib/src/post_process/post_process_component.dart b/packages/flame/lib/src/post_process/post_process_component.dart
index 2e2be9463bd..2987a3eaf8d 100644
--- a/packages/flame/lib/src/post_process/post_process_component.dart
+++ b/packages/flame/lib/src/post_process/post_process_component.dart
@@ -2,7 +2,6 @@ import 'package:flame/components.dart';
 import 'package:flame/extensions.dart';
 import 'package:flame/post_process.dart';
 import 'package:flame/src/camera/camera_component.dart';
-import 'package:flame/src/components/core/component_render_context.dart';
 import 'package:flame/src/game/notifying_vector2.dart';
 import 'package:meta/meta.dart';
 


Test patch:
diff --git a/packages/flame/test/components/component_render_context_test.dart b/packages/flame/test/components/component_render_context_test.dart
index 6ecec28a314..7d43a70f305 100644
--- a/packages/flame/test/components/component_render_context_test.dart
+++ b/packages/flame/test/components/component_render_context_test.dart
@@ -2,7 +2,6 @@ import 'dart:ui';
 
 import 'package:canvas_test/canvas_test.dart';
 import 'package:flame/components.dart';
-import 'package:flame/src/components/core/component_render_context.dart';
 import 'package:flame_test/flame_test.dart';
 import 'package:flutter_test/flutter_test.dart';