Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
36 changes: 2 additions & 34 deletions lib/react_dom.dart
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2018 Workiva Inc.
// Copyright 2025 Workiva Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
Expand All @@ -25,36 +25,4 @@
/// import 'package:over_react/over_react.dart';
library over_react.react_dom;

import 'dart:html';

import 'package:over_react/over_react.dart';
import 'package:react/react_dom.dart' as react_dom show render, unmountComponentAtNode;

/// Renders the provided [element] into the DOM mounted in the provided [mountNode]
/// and returns a reference to it based on its type:
///
/// 1. Returns an [Element] if [element] is a DOM component _(e.g. [Dom.div])_.
/// 2. Returns a React `Component` if [element] is a composite component.
///
/// > __Throws__ if [element] or [mountNode] are `null`.
///
/// If the [element] was previously rendered into the [mountNode], this will perform an update on it and only
/// mutate the DOM as necessary to reflect the latest React component.
///
/// Use [unmountComponentAtNode] to unmount the instance.
///
/// > Proxies [react_dom.render].
dynamic render(ReactNode element, Element mountNode) {
return react_dom.render(element, mountNode);
}

/// Removes a React `Component` from the DOM that was mounted via [render]
/// and cleans up its event handlers and state.
///
/// * Returns `false` if a `Component` was not mounted in the [mountNode].
/// * Returns `true` if a `Component` was mounted in the [mountNode].
///
/// > Proxies [react_dom.unmountComponentAtNode].
bool unmountComponentAtNode(Element mountNode) {
return react_dom.unmountComponentAtNode(mountNode) as bool;
}
export 'package:over_react/src/react_dom.dart' show render, unmountComponentAtNode;
7 changes: 5 additions & 2 deletions lib/src/component/_deprecated/abstract_transition.dart
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,11 @@ import 'dart:async';
import 'dart:html';

import 'package:meta/meta.dart';
import 'package:over_react/over_react.dart';
import 'package:over_react/component_base.dart' as component_base;
import 'package:over_react/src/component/_deprecated/abstract_transition.dart';
import 'package:over_react/src/component/_deprecated/abstract_transition_props.dart';
import 'package:over_react/src/component_declaration/builder_helpers.dart';
import 'package:over_react/src/component_declaration/component_base.dart' as component_base;
import 'package:over_react/src/util/validation_util.dart';

export '../abstract_transition.dart' show TransitionPhase;

Expand Down
3 changes: 2 additions & 1 deletion lib/src/component/_deprecated/abstract_transition_props.dart
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,8 @@ library over_react.deprecated.abstract_transition_props;

import 'dart:collection';

import 'package:over_react/over_react.dart';
import 'package:over_react/src/component/callback_typedefs.dart';
import 'package:over_react/src/component_declaration/builder_helpers.dart';

part 'abstract_transition_props.over_react.g.dart';

Expand Down
10 changes: 9 additions & 1 deletion lib/src/component/_deprecated/error_boundary.dart
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,17 @@
// limitations under the License.

import 'package:logging/logging.dart';
import 'package:over_react/over_react.dart';
import 'package:over_react/src/component/_deprecated/error_boundary_mixins.dart';
import 'package:over_react/src/component/_deprecated/error_boundary_recoverable.dart';
import 'package:over_react/src/component/dom_components.dart';
import 'package:over_react/src/component/error_boundary_api.dart';
import 'package:over_react/src/component_declaration/builder_helpers.dart';
import 'package:over_react/src/component_declaration/component_base_2.dart';
import 'package:over_react/src/util/map_util.dart';
import 'package:over_react/src/util/prop_key_util.dart';
import 'package:react/react_client.dart' show ReactComponentFactoryProxy;
import 'package:react/react_client/js_backed_map.dart';
import 'package:react/react_client/react_interop.dart';

part 'error_boundary.over_react.g.dart';

Expand Down
9 changes: 8 additions & 1 deletion lib/src/component/_deprecated/error_boundary_mixins.dart
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,14 @@ import 'dart:async';

import 'package:logging/logging.dart';
import 'package:meta/meta.dart';
import 'package:over_react/over_react.dart';
import 'package:over_react/src/component/dom_components.dart';
import 'package:over_react/src/component/error_boundary_api.dart';
import 'package:over_react/src/component_declaration/builder_helpers.dart';
import 'package:over_react/src/component_declaration/component_base_2.dart';
import 'package:over_react/src/util/react_util.dart';
import 'package:over_react/src/util/react_wrappers.dart';
import 'package:react/react_client.dart' show ReactNode;
import 'package:react/react_client/react_interop.dart' show ReactErrorInfo;

part 'error_boundary_mixins.over_react.g.dart';

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,13 @@
// See the License for the specific language governing permissions and
// limitations under the License.

import 'package:over_react/over_react.dart';
import 'package:over_react/src/component/_deprecated/error_boundary_mixins.dart';
import 'package:over_react/src/component_declaration/builder_helpers.dart';
import 'package:over_react/src/component_declaration/component_base_2.dart';
import 'package:over_react/src/util/map_util.dart';
import 'package:over_react/src/util/prop_key_util.dart';
import 'package:react/react_client.dart' show ReactComponentFactoryProxy;
import 'package:react/react_client/js_backed_map.dart';

part 'error_boundary_recoverable.over_react.g.dart';

Expand Down
13 changes: 12 additions & 1 deletion lib/src/component/_deprecated/resize_sensor.dart
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,20 @@ import 'dart:collection';
import 'dart:html';

import 'package:meta/meta.dart';
import 'package:over_react/over_react.dart';
import 'package:over_react/src/util/map_util.dart';
import 'package:over_react/src/util/prop_key_util.dart';
import 'package:over_react/src/util/react_wrappers.dart';
import 'package:over_react/src/util/string_util.dart';
import 'package:react/react.dart' show ReactComponentFactoryProxy, SyntheticEvent;
import 'package:over_react/src/component/callback_typedefs.dart';
import 'package:over_react/src/component/dom_components.dart';
import 'package:over_react/src/component/ref_util.dart';
import 'package:over_react/src/component/resize_sensor.dart' show ResizeSensorEvent, SafeAnimationFrameMixin;
import 'package:over_react/src/component/resize_sensor_constants.dart';
import 'package:over_react/src/component_declaration/builder_helpers.dart';
import 'package:over_react/src/component_declaration/component_base_2.dart';
import 'package:over_react/src/util/validation_util.dart';
import 'package:react/react_client/js_backed_map.dart';

export 'package:over_react/src/component/resize_sensor.dart' show ResizeSensorEvent;

Expand Down
8 changes: 5 additions & 3 deletions lib/src/component/abstract_transition.dart
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,11 @@ import 'dart:async';
import 'dart:html';

import 'package:meta/meta.dart';
import 'package:over_react/over_react.dart' hide TransitionPropsMixin;
import 'package:over_react/components.dart' show TransitionPropsMixin;
import 'package:over_react/component_base.dart' as component_base;
import 'package:over_react/src/component/abstract_transition_props.dart';
import 'package:over_react/src/component_declaration/builder_helpers.dart';
import 'package:over_react/src/component_declaration/component_base.dart' as component_base;
import 'package:over_react/src/component_declaration/component_base_2.dart';
import 'package:over_react/src/util/validation_util.dart';

part 'abstract_transition.over_react.g.dart';

Expand Down
8 changes: 6 additions & 2 deletions lib/src/component/abstract_transition_props.dart
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,12 @@

library over_react.abstract_transition_props;

import 'package:over_react/over_react.dart' hide AbstractTransitionComponent, AbstractTransitionProps;
import 'package:over_react/components.dart' show AbstractTransitionComponent, AbstractTransitionProps;
import 'package:over_react/src/component/callback_typedefs.dart';
import 'package:over_react/src/component_declaration/builder_helpers.dart';
import 'package:over_react/src/component/abstract_transition.dart';
import 'package:over_react/src/util/cast_ui_factory.dart';
import 'package:over_react/src/util/prop_key_util.dart';
import 'package:react/react_client/js_backed_map.dart';

part 'abstract_transition_props.over_react.g.dart';

Expand Down
5 changes: 2 additions & 3 deletions lib/src/component/aria_mixin.dart
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,10 @@ library over_react.aria_mixin;

import 'dart:collection';

import 'package:over_react/src/component_declaration/annotations.dart';
// Must import these consts because they are used in the transformed code.
// ignore: unused_shown_name
import 'package:over_react/over_react.dart'
show PropDescriptor, PropsMeta;
import 'package:over_react/src/component_declaration/annotations.dart';
import 'package:over_react/src/component_declaration/component_base.dart' show PropDescriptor, PropsMeta;

part 'aria_mixin.over_react.g.dart';

Expand Down
2 changes: 1 addition & 1 deletion lib/src/component/callback_typedefs.dart
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ library over_react.callback_typedefs;

import 'dart:html';

import 'package:over_react/over_react.dart' show ResizeSensorEvent;
import 'package:over_react/src/component/_deprecated/resize_sensor.dart' show ResizeSensorEvent;
import 'package:react/react.dart' as react;

// Callbacks for React's DOM event system
Expand Down
7 changes: 6 additions & 1 deletion lib/src/component/dummy_component2.dart
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.

import 'package:over_react/over_react.dart';
import 'package:over_react/src/component_declaration/builder_helpers.dart';
import 'package:over_react/src/component_declaration/component_base_2.dart';
import 'package:over_react/src/util/map_util.dart';
import 'package:over_react/src/util/prop_key_util.dart';
import 'package:react/react_client.dart' show ReactComponentFactoryProxy;
import 'package:react/react_client/js_backed_map.dart';

part 'dummy_component2.over_react.g.dart';

Expand Down
10 changes: 9 additions & 1 deletion lib/src/component/error_boundary.dart
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,17 @@
// limitations under the License.

import 'package:logging/logging.dart';
import 'package:over_react/over_react.dart' hide ErrorBoundary, ErrorBoundaryProps, ErrorBoundaryState;
import 'package:over_react/src/component/dom_components.dart';
import 'package:over_react/src/component/error_boundary_api.dart';
import 'package:over_react/src/component/error_boundary_recoverable.dart';
import 'package:over_react/src/component_declaration/builder_helpers.dart';
import 'package:over_react/src/component_declaration/component_base_2.dart';
import 'package:over_react/src/util/cast_ui_factory.dart';
import 'package:over_react/src/util/map_util.dart';
import 'package:over_react/src/util/prop_key_util.dart';
import 'package:react/react_client.dart' show ReactComponentFactoryProxy, ReactNode;
import 'package:react/react_client/js_backed_map.dart';
import 'package:react/react_client/react_interop.dart' show ReactErrorInfo;

part 'error_boundary.over_react.g.dart';

Expand Down
4 changes: 2 additions & 2 deletions lib/src/component/error_boundary_api.dart
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@
// limitations under the License.

import 'package:meta/meta.dart';
import 'package:over_react/over_react.dart';
import 'package:over_react/components.dart' as v2;
import 'package:over_react/src/component/error_boundary.dart' as v2;
import 'package:over_react/src/component_declaration/component_base_2.dart';

@visibleForTesting
const String defaultErrorBoundaryLoggerName = 'over_react.ErrorBoundary';
Expand Down
11 changes: 10 additions & 1 deletion lib/src/component/error_boundary_recoverable.dart
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,18 @@ import 'dart:async';

import 'package:logging/logging.dart';
import 'package:meta/meta.dart';
import 'package:over_react/over_react.dart';
import 'package:over_react/src/component/dom_components.dart';
import 'package:over_react/src/component/error_boundary.dart' as v2;
import 'package:over_react/src/component/error_boundary_api.dart';
import 'package:over_react/src/component_declaration/builder_helpers.dart';
import 'package:over_react/src/component_declaration/component_base_2.dart';
import 'package:over_react/src/util/cast_ui_factory.dart';
import 'package:over_react/src/util/map_util.dart';
import 'package:over_react/src/util/prop_key_util.dart';
import 'package:over_react/src/util/react_wrappers.dart';
import 'package:react/react_client.dart' show ReactComponentFactoryProxy, ReactNode;
import 'package:react/react_client/js_backed_map.dart';
import 'package:react/react_client/react_interop.dart';

part 'error_boundary_recoverable.over_react.g.dart';

Expand Down
4 changes: 3 additions & 1 deletion lib/src/component/hooks.dart
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,10 @@
// See the License for the specific language governing permissions and
// limitations under the License.

import 'package:over_react/over_react.dart';
import 'package:over_react/src/util/context.dart';
import 'package:react/hooks.dart' show StateHook, ReducerHook;
import 'package:react/hooks.dart' as react_hooks;
import 'package:react/react_client/react_interop.dart' show Ref;

/// Adds local state to a [uiFunction] component
/// by returning a [StateHook] with [StateHook.value] initialized to [initialValue].
Expand Down
5 changes: 3 additions & 2 deletions lib/src/component/prop_mixins.dart
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,11 @@
/// Various prop related mixins to be used with `UiComponent` descendants.
library over_react.prop_mixins;

import 'package:over_react/over_react.dart' show AriaPropsMapView, AriaPropsMixin, DomProps, PropsMeta;
import 'package:over_react/src/component/aria_mixin.dart' show AriaPropsMapView, AriaPropsMixin;
import 'package:over_react/src/component/dom_components.dart' show DomProps;
// Must import these consts because they are used in the transformed code.
// ignore: deprecated_member_use, unused_shown_name
import 'package:over_react/over_react.dart' show PropDescriptor, ConsumedProps, PropsMeta;
import 'package:over_react/src/component_declaration/component_base.dart' show PropDescriptor, ConsumedProps, PropsMeta;
import 'package:over_react/src/component/callback_typedefs.dart';
import 'package:over_react/src/component_declaration/annotations.dart';
import 'package:react/react_client/js_backed_map.dart';
Expand Down
3 changes: 2 additions & 1 deletion lib/src/component/prop_typedefs.dart
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,9 @@
// ignore_for_file: prefer_generic_function_type_aliases
library over_react.prop_typedefs;

import 'package:over_react/over_react.dart';
import 'package:over_react/src/component_declaration/builder_helpers.dart';
import 'package:over_react/src/component_declaration/component_base.dart' as component_base;
import 'package:react/react_client.dart' show ReactElement;

/// A custom rendering prop typedef that allows a custom rendering function to be provided
/// with the current [props] and [state] of the [component].
Expand Down
4 changes: 3 additions & 1 deletion lib/src/component/pure_component_mixin.dart
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,9 @@
// See the License for the specific language governing permissions and
// limitations under the License.

import 'package:over_react/over_react.dart';
import 'package:over_react/src/component_declaration/builder_helpers.dart';
import 'package:over_react/src/component_declaration/component_base_2.dart';
import 'package:over_react/src/util/equality.dart';

/// A mixin to make a `Component2` instance behave
/// like a [ReactJS `PureComponent`](https://reactjs.org/docs/react-api.html#reactpurecomponent).
Expand Down
2 changes: 1 addition & 1 deletion lib/src/component/ref_util.dart
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,13 @@
// See the License for the specific language governing permissions and
// limitations under the License.

import 'package:over_react/src/component_declaration/component_base.dart';
import 'package:over_react/src/component_declaration/component_type_checking.dart';
import 'package:over_react/src/component_declaration/function_component.dart';
import 'package:over_react/src/component_declaration/builder_helpers.dart' as bh;
import 'package:react/react_client/js_backed_map.dart';
import 'package:react/react_client/react_interop.dart' as react_interop;
import 'package:react/react_client.dart';
import 'package:over_react/component_base.dart';

/// Creates a [Ref] object that can be attached to a [ReactElement] via the ref prop.
///
Expand Down
14 changes: 13 additions & 1 deletion lib/src/component/resize_sensor.dart
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,20 @@ library over_react.resize_sensor;
import 'dart:html';

import 'package:meta/meta.dart';
import 'package:over_react/over_react.dart' hide ResizeSensor, ResizeSensorComponent, ResizeSensorProps;
import 'package:over_react/src/component/callback_typedefs.dart';
import 'package:over_react/src/component/dom_components.dart';
import 'package:over_react/src/component/ref_util.dart';
import 'package:over_react/src/component/resize_sensor_constants.dart';
import 'package:over_react/src/component_declaration/builder_helpers.dart';
import 'package:over_react/src/component_declaration/component_base_2.dart';
import 'package:over_react/src/util/cast_ui_factory.dart';
import 'package:over_react/src/util/map_util.dart';
import 'package:over_react/src/util/prop_key_util.dart';
import 'package:over_react/src/util/react_wrappers.dart';
import 'package:over_react/src/util/string_util.dart';
import 'package:over_react/src/util/validation_util.dart';
import 'package:react/react.dart' show ReactComponentFactoryProxy, SyntheticEvent;
import 'package:react/react_client/js_backed_map.dart';

part 'resize_sensor.over_react.g.dart';

Expand Down
2 changes: 1 addition & 1 deletion lib/src/component/strictmode_component.dart
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.

import 'package:over_react/js_component.dart';
import 'package:over_react/src/component_declaration/function_component.dart';
import 'package:over_react/src/util/js_component.dart';
import 'package:react/react.dart' as react;
import 'package:react/react_client/js_backed_map.dart';

Expand Down
6 changes: 5 additions & 1 deletion lib/src/component/suspense_component.dart
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,13 @@
library over_react.component.suspense_component;

import 'package:js/js.dart';
import 'package:over_react/over_react.dart';
import 'package:over_react/src/component_declaration/function_component.dart';
import 'package:over_react/src/util/prop_key_util.dart';
import 'package:react/react.dart' as react;
import 'package:over_react/src/component_declaration/builder_helpers.dart';
import 'package:over_react/src/util/js_component.dart';
import 'package:react/react_client.dart' show ReactNode;
import 'package:react/react_client/js_backed_map.dart';

part 'suspense_component.over_react.g.dart';

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
import 'dart:async';

import 'package:meta/meta.dart';
import 'package:over_react/over_react.dart';
import 'package:over_react/src/component_declaration/builder_helpers.dart';
import 'package:over_react/src/component_declaration/component_base_2.dart';

mixin RedrawCounterMixin<T extends UiProps> on UiComponent2<T> {
int _desiredRedrawCount = 1;
Expand Down
Loading