@@ -16,6 +16,7 @@ class _HelloComponent extends react.Component2 {
1616 },
1717 };
1818
19+ @override
1920 render () {
2021 return react.span ({}, ["Hello ${props ['name' ]}!" ]);
2122 }
@@ -25,6 +26,7 @@ var helloComponent = react.registerComponent(() => _HelloComponent());
2526
2627class _HelloGreeter extends react.Component {
2728 var myInput;
29+ @override
2830 getInitialState () => {'name' : 'World' };
2931
3032 onInputChange (e) {
@@ -33,6 +35,7 @@ class _HelloGreeter extends react.Component {
3335 setState ({'name' : e.target.value});
3436 }
3537
38+ @override
3639 render () {
3740 return react.div ({}, [
3841 react.input ({
@@ -50,12 +53,14 @@ class _HelloGreeter extends react.Component {
5053var helloGreeter = react.registerComponent (() => _HelloGreeter ());
5154
5255class _CheckBoxComponent extends react.Component {
56+ @override
5357 getInitialState () => {'checked' : false };
5458
5559 _handleChange (e) {
5660 this .setState ({'checked' : e.target.checked});
5761 }
5862
63+ @override
5964 render () {
6065 return react.div ({
6166 'className' : 'form-check'
@@ -82,29 +87,36 @@ var checkBoxComponent = react.registerComponent(() => _CheckBoxComponent());
8287class _ClockComponent extends react.Component {
8388 Timer timer;
8489
90+ @override
8591 getInitialState () => {'secondsElapsed' : 0 };
8692
93+ @override
8794 Map getDefaultProps () => {'refreshRate' : 1000 };
8895
96+ @override
8997 void componentWillMount () {
9098 timer = Timer .periodic (Duration (milliseconds: this .props['refreshRate' ]), this .tick);
9199 }
92100
101+ @override
93102 void componentWillUnmount () {
94103 timer.cancel ();
95104 }
96105
106+ @override
97107 void componentDidMount () {
98108 var rootNode = react_dom.findDOMNode (this );
99109 rootNode.style.backgroundColor = '#FFAAAA' ;
100110 }
101111
112+ @override
102113 bool shouldComponentUpdate (nextProps, nextState) {
103114 //print("Next state: $nextState, props: $nextProps");
104115 //print("Old state: $state, props: $props");
105116 return nextState['secondsElapsed' ] % 2 == 1 ;
106117 }
107118
119+ @override
108120 void componentWillReceiveProps (nextProps) {
109121 print ('Received props: $nextProps ' );
110122 }
@@ -113,6 +125,7 @@ class _ClockComponent extends react.Component {
113125 setState ({'secondsElapsed' : state['secondsElapsed' ] + 1 });
114126 }
115127
128+ @override
116129 render () {
117130 return react.span ({'onClick' : (event) => print ('Hello World!' )},
118131// { 'onClick': (event, [domid = null]) => print("Hello World!") },
@@ -123,18 +136,21 @@ class _ClockComponent extends react.Component {
123136var clockComponent = react.registerComponent (() => _ClockComponent ());
124137
125138class _ListComponent extends react.Component {
139+ @override
126140 Map getInitialState () {
127141 return {
128142 'items' : List .from ([0 , 1 , 2 , 3 ])
129143 };
130144 }
131145
146+ @override
132147 void componentWillUpdate (nextProps, nextState) {
133148 if (nextState['items' ].length > state['items' ].length) {
134149 print ('Adding ' + nextState['items' ].last.toString ());
135150 }
136151 }
137152
153+ @override
138154 void componentDidUpdate (prevProps, prevState) {
139155 if (prevState['items' ].length > state['items' ].length) {
140156 print ('Removed ' + prevState['items' ].first.toString ());
@@ -149,6 +165,7 @@ class _ListComponent extends react.Component {
149165 setState ({'items' : items});
150166 }
151167
168+ @override
152169 dynamic render () {
153170 List <dynamic > items = [];
154171 for (var item in state['items' ]) {
@@ -170,6 +187,7 @@ class _ListComponent extends react.Component {
170187var listComponent = react.registerComponent (() => _ListComponent ());
171188
172189class _MainComponent extends react.Component {
190+ @override
173191 render () {
174192 return react.div ({}, props['children' ]);
175193 }
@@ -191,6 +209,7 @@ class _LegacyContextComponent extends react.Component {
191209 'renderCount' : this .state['renderCount' ]
192210 };
193211
212+ @override
194213 render () {
195214 return react.ul ({
196215 'key' : 'ul'
@@ -216,6 +235,7 @@ class _LegacyContextConsumerComponent extends react.Component {
216235 @override
217236 Iterable <String > get contextKeys => const ['foo' ];
218237
238+ @override
219239 render () {
220240 return react.ul ({
221241 'key' : 'ul'
@@ -235,6 +255,7 @@ class _GrandchildLegacyContextConsumerComponent extends react.Component {
235255 @override
236256 Iterable <String > get contextKeys => const ['renderCount' ];
237257
258+ @override
238259 render () {
239260 return react.ul ({
240261 'key' : 'ul'
@@ -252,6 +273,7 @@ var grandchildLegacyContextConsumerComponent =
252273// REACT NEW CONTEXT COMPONENTS
253274////
254275class _NewContextRefComponent extends react.Component2 {
276+ @override
255277 render () {
256278 return react.div ({}, props['children' ]);
257279 }
@@ -276,12 +298,14 @@ var TestNewContext = react.createContext<Map>({'renderCount': 0}, calculateChang
276298class _NewContextProviderComponent extends react.Component2 {
277299 _NewContextRefComponent componentRef;
278300
301+ @override
279302 get initialState => {'renderCount' : 0 , 'complexMap' : false };
280303
281304 printMe () {
282305 print ('printMe!' );
283306 }
284307
308+ @override
285309 render () {
286310 final provideMap = {'renderCount' : this .state['renderCount' ]};
287311
@@ -345,6 +369,7 @@ class _NewContextProviderComponent extends react.Component2 {
345369var newContextProviderComponent = react.registerComponent (() => _NewContextProviderComponent ());
346370
347371class _NewContextConsumerComponent extends react.Component2 {
372+ @override
348373 render () {
349374 return TestNewContext .Consumer ({'unstable_observedBits' : props['unstable_observedBits' ]}, (value) {
350375 return react.ul ({
@@ -362,6 +387,7 @@ class _NewContextConsumerComponent extends react.Component2 {
362387var newContextConsumerComponent = react.registerComponent (() => _NewContextConsumerComponent ());
363388
364389class _NewContextConsumerObservedBitsComponent extends react.Component2 {
390+ @override
365391 render () {
366392 return TestNewContext .Consumer ({'unstable_observedBits' : props['unstable_observedBits' ]}, (value) {
367393 return react.ul ({
@@ -383,6 +409,7 @@ class _NewContextTypeConsumerComponent extends react.Component2 {
383409 @override
384410 final contextType = TestNewContext ;
385411
412+ @override
386413 render () {
387414 this .context['componentRef' ]? .test ();
388415 return react.ul ({
@@ -394,10 +421,13 @@ class _NewContextTypeConsumerComponent extends react.Component2 {
394421}
395422
396423class _Component2TestComponent extends react.Component2 with react.TypedSnapshot <String > {
424+ @override
397425 get defaultProps => {'defaultProp' : true };
398426
427+ @override
399428 get initialState => {'defaultState' : true , 'items' : []};
400429
430+ @override
401431 Map getDerivedStateFromProps (nextProps, prevState) {
402432 final prevItems = prevState['items' ];
403433 if (prevItems.isEmpty || prevItems[0 ] != 3 ) {
@@ -408,6 +438,7 @@ class _Component2TestComponent extends react.Component2 with react.TypedSnapshot
408438 return null ;
409439 }
410440
441+ @override
411442 String getSnapshotBeforeUpdate (nextProps, prevState) {
412443 if (prevState['items' ].length > state['items' ].length) {
413444 return 'removed ' + prevState['items' ].last.toString ();
@@ -416,6 +447,7 @@ class _Component2TestComponent extends react.Component2 with react.TypedSnapshot
416447 }
417448 }
418449
450+ @override
419451 void componentDidUpdate (prevProps, prevState, [String snapshot]) {
420452 if (snapshot != null ) {
421453 print ('Updated DOM and ' + snapshot);
@@ -436,6 +468,7 @@ class _Component2TestComponent extends react.Component2 with react.TypedSnapshot
436468 setState ({'items' : items});
437469 }
438470
471+ @override
439472 dynamic render () {
440473 // Used to generate unique keys even when the list contains duplicate items
441474 final itemCounts = < dynamic , int > {};
@@ -467,12 +500,14 @@ var newContextTypeConsumerComponentComponent = react.registerComponent(() => _Ne
467500var component2TestComponent = react.registerComponent (() => _Component2TestComponent ());
468501
469502class _ErrorComponent extends react.Component2 {
503+ @override
470504 void componentDidMount () {
471505 if (! props['errored' ]) {
472506 throw _CustomException ('It broke!' , 2 );
473507 }
474508 }
475509
510+ @override
476511 dynamic render () {
477512 return react.div (
478513 {'key' : 'eb-d1-e' },
@@ -503,12 +538,14 @@ class _CustomException implements Exception {
503538}
504539
505540class _Component2ErrorTestComponent extends react.Component2 {
541+ @override
506542 Map get initialState => {
507543 'clicked' : false ,
508544 'errored' : false ,
509545 'error' : null ,
510546 };
511547
548+ @override
512549 void componentDidCatch (error, info) {
513550 if (error is _CustomException ) {
514551 print (info.dartStackTrace);
@@ -521,6 +558,7 @@ class _Component2ErrorTestComponent extends react.Component2 {
521558 }
522559 }
523560
561+ @override
524562 Map getDerivedStateFromError (error) {
525563 return {'errored' : true };
526564 }
@@ -533,6 +571,7 @@ class _Component2ErrorTestComponent extends react.Component2 {
533571 setState ({'clicked' : false , 'error' : null , 'errored' : false });
534572 }
535573
574+ @override
536575 dynamic render () {
537576 dynamic errorMessage = state['error' ] ?? 'No error yet' ;
538577
0 commit comments