Skip to content

Commit 135d6e4

Browse files
authored
fix(web): use if (dart.library.html) instead of if (dart.html) (#2736)
* fix * regenerate mocks * update CHANGELOG * update test * update * fix test
1 parent 2b7ea90 commit 135d6e4

File tree

6 files changed

+1840
-2587
lines changed

6 files changed

+1840
-2587
lines changed

flutter/example/integration_test/web_sdk_test.dart

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -111,9 +111,10 @@ void main() {
111111
'sentry.dart.flutter');
112112

113113
final item = (envelope[1] as List<Object?>).first as List<Object?>;
114-
final itemPayload =
115-
json.decode(utf8.decoder.convert((item[1] as List<int>)))
116-
as Map<Object?, Object?>;
114+
final itemPayloadJs = (item[1] as JSArray).toDart;
115+
final itemPayload = json.decode(utf8.decoder.convert(itemPayloadJs
116+
.map((el) => int.parse(el.dartify().toString()))
117+
.toList())) as Map<Object?, Object?>;
117118

118119
final jsEventJson = (itemPayload).map((key, value) {
119120
return MapEntry(key.toString(), value as dynamic);

flutter/lib/src/web/html_sentry_js_binding.dart

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
// Will be removed in v9
2+
// ignore: deprecated_member_use
13
import 'dart:js';
24

35
import 'package:flutter/cupertino.dart';
@@ -56,7 +58,8 @@ class HtmlSentryJsBinding implements SentryJsBinding {
5658
@visibleForTesting
5759
@override
5860
getJsOptions() {
59-
final sentry = context['Sentry'] as JsObject;
60-
return sentry.callMethod('getClient').callMethod('getOptions').dartify();
61+
// newest flutter version removed dartify from JsObject
62+
// we will remove this file in v9 anyway
63+
return null;
6164
}
6265
}

flutter/lib/src/web/sentry_js_binding.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import 'package:flutter/cupertino.dart';
22

33
export 'noop_sentry_js_binding.dart'
4-
if (dart.html) 'html_sentry_js_binding.dart'
4+
if (dart.library.html) 'html_sentry_js_binding.dart'
55
if (dart.library.js_interop) 'web_sentry_js_binding.dart';
66

77
abstract class SentryJsBinding {

0 commit comments

Comments
 (0)