Flutterfire: 🐛 [cloud_firestore_web] FieldValue.arrayUnion fails jsify DocumentReference (in write batch)

Created on 25 Nov 2020  ·  3Comments  ·  Source: FirebaseExtended/flutterfire

Bug report

Using FieldValue.arrayUnion with a DocumentReference fails in the latest cloud_firestore_web dependencies:

I looked into jsify in firebase_core_web and cloud_firestore_web again, however, I could not ifnd out why it would not do it.
@Ehesp Do you have an idea why jsify would fail in this particular case?

I can reproduce this using cloud_firestore_web: 0.2.1+1 and firebase_core_web: 0.2.1+1.
When I downgrade to firebase_core_web: 0.2.0 and cloud_firestore_web: 0.2.0+4, the array union works again.

Reproducible code example

final batch = FirebaseFirestore.instance.batch();
batch.update(documentReference, {
  'fooBarList': FieldValue.arrayUnion([
    {
      'id': stringId,
      'foo': fooDocumentReference,
      'bar': barDocumentReference,
    },
  ]),
  'barList': FieldValue.arrayUnion([barDocumentReference]),
  'fooList': FieldValue.arrayUnion([fooDocumentReference]),
});
await batch.commit();

Error

Error: Invalid argument (dartObject): Could not convert: Instance of 'DocumentReference'
    at Object.throw_ [as throw] (http://localhost:4200/dart_sdk.js:4348:11)
    at Object.jsify (http://localhost:4200/packages/firebase_core_web/src/interop/utils/utils.dart.lib.js:75:17)
    at http://localhost:4200/packages/firebase_core_web/src/interop/utils/utils.dart.lib.js:66:47
    at LinkedMap.new.forEach (http://localhost:4200/dart_sdk.js:25081:11)
    at Object.jsify (http://localhost:4200/packages/firebase_core_web/src/interop/utils/utils.dart.lib.js:65:27)
    at MappedListIterable.new.<anonymous> (http://localhost:4200/packages/firebase_core_web/src/interop/utils/utils.dart.lib.js:53:82)
    at MappedListIterable.new.elementAt (http://localhost:4200/dart_sdk.js:21874:25)
    at ListIterator.new.moveNext (http://localhost:4200/dart_sdk.js:21668:55)
    at JsIterator.next (http://localhost:4200/dart_sdk.js:6046:21)
    at Function.of (http://localhost:4200/dart_sdk.js:43917:18)
    at MappedListIterable.new.toList (http://localhost:4200/dart_sdk.js:21474:26)
    at Object.jsifyList (http://localhost:4200/packages/firebase_core_web/src/interop/utils/utils.dart.lib.js:53:137)
    at firestore._FieldValueArrayUnion.new.[_jsify] (http://localhost:4200/packages/cloud_firestore_web/src/interop/utils/utils.dart.lib.js:889:143)
    at Object.jsifyFieldValue (http://localhost:4200/packages/cloud_firestore_web/src/interop/utils/utils.dart.lib.js:1000:30)
    at http://localhost:4200/packages/cloud_firestore_web/src/interop/utils/utils.dart.lib.js:114:26
    at Object.jsify (http://localhost:4200/packages/firebase_core_web/src/interop/utils/utils.dart.lib.js:73:56)
    at http://localhost:4200/packages/firebase_core_web/src/interop/utils/utils.dart.lib.js:66:47
    at LinkedMap.new.forEach (http://localhost:4200/dart_sdk.js:25081:11)
    at Object.jsify (http://localhost:4200/packages/firebase_core_web/src/interop/utils/utils.dart.lib.js:65:27)
    at Object.jsify (http://localhost:4200/packages/cloud_firestore_web/src/interop/utils/utils.dart.lib.js:106:18)
    at firestore.WriteBatch._fromJsObject.[_wrapUpdateFunctionCall] (http://localhost:4200/packages/cloud_firestore_web/src/interop/utils/utils.dart.lib.js:245:41)
    at firestore.WriteBatch._fromJsObject.update (http://localhost:4200/packages/cloud_firestore_web/src/interop/utils/utils.dart.lib.js:291:76)
    at write_batch_web.WriteBatchWeb.new.update (http://localhost:4200/packages/cloud_firestore_web/src/write_batch_web.dart.lib.js:151:36)
    at cloud_firestore.WriteBatch.__.update (http://localhost:4200/packages/cloud_firestore/cloud_firestore.dart.lib.js:1204:31)
cloud_firestore bug

Most helpful comment

Reproducible on the latest master 1.24.0-8.0.pre.374 with cloud_firestore_web: ^0.2.1+1.


flutter doctor -v

[√] Flutter (Channel master, 1.24.0-8.0.pre.374, on Microsoft Windows [Version 10.0.19041.630], locale et-EE)
    • Flutter version 1.24.0-8.0.pre.374 at C:\Development\flutter_master
    • Framework revision 183f0e797a (14 hours ago), 2020-11-26 19:12:28 +0100
    • Engine revision 20caf54969
    • Dart version 2.12.0 (build 2.12.0-76.0.dev)

[√] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at C:\Users\marku\AppData\Local\Android\sdk
    • Platform android-30, build-tools 30.0.2
    • Java binary at: C:\Users\marku\AppData\Local\JetBrains\Toolbox\apps\AndroidStudio\ch-0\201.6953283\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe

[√] Visual Studio - develop for Windows (Visual Studio Community 2019 16.7.7)
    • Visual Studio at C:\Program Files (x86)\Microsoft Visual Studio\2019\Community
    • Visual Studio Community 2019 version 16.7.30621.155
    • Windows 10 SDK version 10.0.18362.0

[√] Android Studio (version 4.1.0)
    • Android Studio at C:\Users\marku\AppData\Local\JetBrains\Toolbox\apps\AndroidStudio\ch-0\201.6953283
    • Flutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
       https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)

[√] Connected device (6 available)
    • SM G950F (mobile)           • ce12171c51cc001c03 • android-arm64  • Android 9 (API 28)
    • sdk gphone x86 arm (mobile) • emulator-5554      • android-x86    • Android 11 (API 30) (emulator)
    • Windows (desktop)           • windows            • windows-x64    • Microsoft Windows [Version 10.0.19041.630]
    • Web Server (web)            • web-server         • web-javascript • Flutter Tools
    • Chrome (web)                • chrome             • web-javascript • Google Chrome 87.0.4280.66
    • Edge (web)                  • edge               • web-javascript • Microsoft Edge 86.0.622.68

• No issues found!



Minimal reproducible code sample

import 'package:cloud_firestore/cloud_firestore.dart';
import 'package:firebase_core/firebase_core.dart';
import 'package:flutter/material.dart';

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  FirebaseApp app = await Firebase.initializeApp();
  assert(app != null);
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      debugShowCheckedModeBanner: false,
      title: 'Material App',
      theme: ThemeData.dark(),
      home: Home(),
    );
  }
}

class Home extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Firestore Example'),
      ),
      body: Center(
        child: Column(
          children: [
            RaisedButton(
              child: const Text("Commit batch"),
              onPressed: () async {
                var documentReference = FirebaseFirestore.instance.collection('test').doc('testDoc');
                var fooDocumentReference = FirebaseFirestore.instance.collection('test').doc('testA');
                var barDocumentReference = FirebaseFirestore.instance.collection('test').doc('testB');
                final batch = FirebaseFirestore.instance.batch();
                batch.update(documentReference, {
                  'fooBarList': FieldValue.arrayUnion([
                    {
                      'id': 1,
                      'foo': fooDocumentReference,
                      'bar': barDocumentReference,
                    },
                  ]),
                  'barList': FieldValue.arrayUnion([barDocumentReference]),
                  'fooList': FieldValue.arrayUnion([fooDocumentReference]),
                });
                await batch.commit().catchError((e, s) => print('$e\n$s'));
                print("Commited");
              },
            ),
            RaisedButton(
              child: const Text("Get doc"),
              onPressed: () async {
                var doc = await FirebaseFirestore.instance.collection('test').doc('testDoc').get().catchError((e, s) => print('$e\n$s'));
                print(doc.data());
              },
            ),
          ],
        ),
      ),
    );
  }
}



Logs

Error: Invalid argument (dartObject): Could not convert: Instance of 'DocumentReference'
    at Object.throw_ [as throw] (http://localhost:59783/dart_sdk.js:4351:11)
    at Object.jsify (http://localhost:59783/packages/firebase_core_web/src/interop/utils/utils.dart.lib.js:75:17)
    at http://localhost:59783/packages/firebase_core_web/src/interop/utils/utils.dart.lib.js:66:47
    at LinkedMap.new.forEach (http://localhost:59783/dart_sdk.js:25093:11)
    at Object.jsify (http://localhost:59783/packages/firebase_core_web/src/interop/utils/utils.dart.lib.js:65:27)
    at MappedListIterable.new.<anonymous> (http://localhost:59783/packages/firebase_core_web/src/interop/utils/utils.dart.lib.js:53:82)
    at MappedListIterable.new.elementAt (http://localhost:59783/dart_sdk.js:21888:25)
    at ListIterator.new.moveNext (http://localhost:59783/dart_sdk.js:21683:55)
    at JsIterator.next (http://localhost:59783/dart_sdk.js:6063:21)
    at Function.of (http://localhost:59783/dart_sdk.js:43925:18)
    at MappedListIterable.new.toList (http://localhost:59783/dart_sdk.js:21490:26)
    at Object.jsifyList (http://localhost:59783/packages/firebase_core_web/src/interop/utils/utils.dart.lib.js:53:137)
    at firestore._FieldValueArrayUnion.new.[_jsify] (http://localhost:59783/packages/cloud_firestore_web/src/interop/utils/utils.dart.lib.js:889:156)
    at Object.jsifyFieldValue (http://localhost:59783/packages/cloud_firestore_web/src/interop/utils/utils.dart.lib.js:1000:30)
    at http://localhost:59783/packages/cloud_firestore_web/src/interop/utils/utils.dart.lib.js:114:26
    at Object.jsify (http://localhost:59783/packages/firebase_core_web/src/interop/utils/utils.dart.lib.js:73:56)
    at http://localhost:59783/packages/firebase_core_web/src/interop/utils/utils.dart.lib.js:66:47
    at LinkedMap.new.forEach (http://localhost:59783/dart_sdk.js:25093:11)
    at Object.jsify (http://localhost:59783/packages/firebase_core_web/src/interop/utils/utils.dart.lib.js:65:27)
    at Object.jsify (http://localhost:59783/packages/cloud_firestore_web/src/interop/utils/utils.dart.lib.js:106:18)
    at firestore.WriteBatch._fromJsObject.[_wrapUpdateFunctionCall] (http://localhost:59783/packages/cloud_firestore_web/src/interop/utils/utils.dart.lib.js:245:41)
    at firestore.WriteBatch._fromJsObject.update (http://localhost:59783/packages/cloud_firestore_web/src/interop/utils/utils.dart.lib.js:291:76)
    at write_batch_web.WriteBatchWeb.new.update (http://localhost:59783/packages/cloud_firestore_web/src/write_batch_web.dart.lib.js:151:36)
    at cloud_firestore.WriteBatch.__.update (http://localhost:59783/packages/cloud_firestore/cloud_firestore.dart.lib.js:1204:31)
    at http://localhost:59783/packages/triage/main.dart.lib.js:478:25
    at Generator.next (<anonymous>)
    at runBody (http://localhost:59783/dart_sdk.js:37988:34)
    at Object._async [as async] (http://localhost:59783/dart_sdk.js:38019:7)
    at http://localhost:59783/packages/triage/main.dart.lib.js:473:411
    at ink_well._InkResponseState.new.[_handleTap] (http://localhost:59783/packages/flutter/src/material/icon_button.dart.lib.js:51084:42)
    at tap.TapGestureRecognizer.new.invokeCallback (http://localhost:59783/packages/flutter/src/gestures/recognizer.dart.lib.js:189:18)
    at tap.TapGestureRecognizer.new.handleTapUp (http://localhost:59783/packages/flutter/src/gestures/tap.dart.lib.js:395:40)
    at tap.TapGestureRecognizer.new.[_checkUp] (http://localhost:59783/packages/flutter/src/gestures/tap.dart.lib.js:201:12)
    at tap.TapGestureRecognizer.new.handlePrimaryPointer (http://localhost:59783/packages/flutter/src/gestures/tap.dart.lib.js:148:23)
    at tap.TapGestureRecognizer.new.handleEvent (http://localhost:59783/packages/flutter/src/gestures/recognizer.dart.lib.js:448:16)
    at pointer_router.PointerRouter.new.[_dispatch] (http://localhost:59783/packages/flutter/src/gestures/pointer_router.dart.lib.js:74:9)
    at http://localhost:59783/packages/flutter/src/gestures/pointer_router.dart.lib.js:109:26
    at LinkedMap.new.forEach (http://localhost:59783/dart_sdk.js:25093:11)
    at pointer_router.PointerRouter.new.[_dispatchEventToRoutes] (http://localhost:59783/packages/flutter/src/gestures/pointer_router.dart.lib.js:106:29)
    at pointer_router.PointerRouter.new.route (http://localhost:59783/packages/flutter/src/gestures/pointer_router.dart.lib.js:98:37)
    at binding$5.WidgetsFlutterBinding.new.handleEvent (http://localhost:59783/packages/flutter/src/gestures/binding.dart.lib.js:314:26)
    at binding$5.WidgetsFlutterBinding.new.dispatchEvent (http://localhost:59783/packages/flutter/src/gestures/binding.dart.lib.js:297:24)
    at binding$5.WidgetsFlutterBinding.new.dispatchEvent (http://localhost:59783/packages/flutter/src/rendering/layer.dart.lib.js:6093:13)
    at binding$5.WidgetsFlutterBinding.new.[_handlePointerEventImmediately] (http://localhost:59783/packages/flutter/src/gestures/binding.dart.lib.js:268:14)
    at binding$5.WidgetsFlutterBinding.new.handlePointerEvent (http://localhost:59783/packages/flutter/src/gestures/binding.dart.lib.js:241:43)
    at binding$5.WidgetsFlutterBinding.new.[_flushPointerEventQueue] (http://localhost:59783/packages/flutter/src/gestures/binding.dart.lib.js:230:14)
    at binding$5.WidgetsFlutterBinding.new.[_handlePointerDataPacket] (http://localhost:59783/packages/flutter/src/gestures/binding.dart.lib.js:220:65)
    at Object.invoke1 (http://localhost:59783/dart_sdk.js:178716:7)
    at _engine.EnginePlatformDispatcher.__.invokeOnPointerDataPacket (http://localhost:59783/dart_sdk.js:161367:15)
    at _engine.PointerBinding.__.[_onPointerData] (http://localhost:59783/dart_sdk.js:162002:49)
    at http://localhost:59783/dart_sdk.js:162435:26
    at http://localhost:59783/dart_sdk.js:162394:16
    at http://localhost:59783/dart_sdk.js:162102:11

All 3 comments

Hi @creativecreatorormaybenot
Was this not fixed by https://github.com/FirebaseExtended/flutterfire/pull/4212?
Could you provide a minimal complete reproducible code sample?
Thank you

@markusaksli-nc No - the fix only addressed reading docs. This is about writing.

I added sample code in the issue. You can use any DocumentReference, where it says ..DocumentReference.

Reproducible on the latest master 1.24.0-8.0.pre.374 with cloud_firestore_web: ^0.2.1+1.


flutter doctor -v

[√] Flutter (Channel master, 1.24.0-8.0.pre.374, on Microsoft Windows [Version 10.0.19041.630], locale et-EE)
    • Flutter version 1.24.0-8.0.pre.374 at C:\Development\flutter_master
    • Framework revision 183f0e797a (14 hours ago), 2020-11-26 19:12:28 +0100
    • Engine revision 20caf54969
    • Dart version 2.12.0 (build 2.12.0-76.0.dev)

[√] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at C:\Users\marku\AppData\Local\Android\sdk
    • Platform android-30, build-tools 30.0.2
    • Java binary at: C:\Users\marku\AppData\Local\JetBrains\Toolbox\apps\AndroidStudio\ch-0\201.6953283\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe

[√] Visual Studio - develop for Windows (Visual Studio Community 2019 16.7.7)
    • Visual Studio at C:\Program Files (x86)\Microsoft Visual Studio\2019\Community
    • Visual Studio Community 2019 version 16.7.30621.155
    • Windows 10 SDK version 10.0.18362.0

[√] Android Studio (version 4.1.0)
    • Android Studio at C:\Users\marku\AppData\Local\JetBrains\Toolbox\apps\AndroidStudio\ch-0\201.6953283
    • Flutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
       https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)

[√] Connected device (6 available)
    • SM G950F (mobile)           • ce12171c51cc001c03 • android-arm64  • Android 9 (API 28)
    • sdk gphone x86 arm (mobile) • emulator-5554      • android-x86    • Android 11 (API 30) (emulator)
    • Windows (desktop)           • windows            • windows-x64    • Microsoft Windows [Version 10.0.19041.630]
    • Web Server (web)            • web-server         • web-javascript • Flutter Tools
    • Chrome (web)                • chrome             • web-javascript • Google Chrome 87.0.4280.66
    • Edge (web)                  • edge               • web-javascript • Microsoft Edge 86.0.622.68

• No issues found!



Minimal reproducible code sample

import 'package:cloud_firestore/cloud_firestore.dart';
import 'package:firebase_core/firebase_core.dart';
import 'package:flutter/material.dart';

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  FirebaseApp app = await Firebase.initializeApp();
  assert(app != null);
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      debugShowCheckedModeBanner: false,
      title: 'Material App',
      theme: ThemeData.dark(),
      home: Home(),
    );
  }
}

class Home extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Firestore Example'),
      ),
      body: Center(
        child: Column(
          children: [
            RaisedButton(
              child: const Text("Commit batch"),
              onPressed: () async {
                var documentReference = FirebaseFirestore.instance.collection('test').doc('testDoc');
                var fooDocumentReference = FirebaseFirestore.instance.collection('test').doc('testA');
                var barDocumentReference = FirebaseFirestore.instance.collection('test').doc('testB');
                final batch = FirebaseFirestore.instance.batch();
                batch.update(documentReference, {
                  'fooBarList': FieldValue.arrayUnion([
                    {
                      'id': 1,
                      'foo': fooDocumentReference,
                      'bar': barDocumentReference,
                    },
                  ]),
                  'barList': FieldValue.arrayUnion([barDocumentReference]),
                  'fooList': FieldValue.arrayUnion([fooDocumentReference]),
                });
                await batch.commit().catchError((e, s) => print('$e\n$s'));
                print("Commited");
              },
            ),
            RaisedButton(
              child: const Text("Get doc"),
              onPressed: () async {
                var doc = await FirebaseFirestore.instance.collection('test').doc('testDoc').get().catchError((e, s) => print('$e\n$s'));
                print(doc.data());
              },
            ),
          ],
        ),
      ),
    );
  }
}



Logs

Error: Invalid argument (dartObject): Could not convert: Instance of 'DocumentReference'
    at Object.throw_ [as throw] (http://localhost:59783/dart_sdk.js:4351:11)
    at Object.jsify (http://localhost:59783/packages/firebase_core_web/src/interop/utils/utils.dart.lib.js:75:17)
    at http://localhost:59783/packages/firebase_core_web/src/interop/utils/utils.dart.lib.js:66:47
    at LinkedMap.new.forEach (http://localhost:59783/dart_sdk.js:25093:11)
    at Object.jsify (http://localhost:59783/packages/firebase_core_web/src/interop/utils/utils.dart.lib.js:65:27)
    at MappedListIterable.new.<anonymous> (http://localhost:59783/packages/firebase_core_web/src/interop/utils/utils.dart.lib.js:53:82)
    at MappedListIterable.new.elementAt (http://localhost:59783/dart_sdk.js:21888:25)
    at ListIterator.new.moveNext (http://localhost:59783/dart_sdk.js:21683:55)
    at JsIterator.next (http://localhost:59783/dart_sdk.js:6063:21)
    at Function.of (http://localhost:59783/dart_sdk.js:43925:18)
    at MappedListIterable.new.toList (http://localhost:59783/dart_sdk.js:21490:26)
    at Object.jsifyList (http://localhost:59783/packages/firebase_core_web/src/interop/utils/utils.dart.lib.js:53:137)
    at firestore._FieldValueArrayUnion.new.[_jsify] (http://localhost:59783/packages/cloud_firestore_web/src/interop/utils/utils.dart.lib.js:889:156)
    at Object.jsifyFieldValue (http://localhost:59783/packages/cloud_firestore_web/src/interop/utils/utils.dart.lib.js:1000:30)
    at http://localhost:59783/packages/cloud_firestore_web/src/interop/utils/utils.dart.lib.js:114:26
    at Object.jsify (http://localhost:59783/packages/firebase_core_web/src/interop/utils/utils.dart.lib.js:73:56)
    at http://localhost:59783/packages/firebase_core_web/src/interop/utils/utils.dart.lib.js:66:47
    at LinkedMap.new.forEach (http://localhost:59783/dart_sdk.js:25093:11)
    at Object.jsify (http://localhost:59783/packages/firebase_core_web/src/interop/utils/utils.dart.lib.js:65:27)
    at Object.jsify (http://localhost:59783/packages/cloud_firestore_web/src/interop/utils/utils.dart.lib.js:106:18)
    at firestore.WriteBatch._fromJsObject.[_wrapUpdateFunctionCall] (http://localhost:59783/packages/cloud_firestore_web/src/interop/utils/utils.dart.lib.js:245:41)
    at firestore.WriteBatch._fromJsObject.update (http://localhost:59783/packages/cloud_firestore_web/src/interop/utils/utils.dart.lib.js:291:76)
    at write_batch_web.WriteBatchWeb.new.update (http://localhost:59783/packages/cloud_firestore_web/src/write_batch_web.dart.lib.js:151:36)
    at cloud_firestore.WriteBatch.__.update (http://localhost:59783/packages/cloud_firestore/cloud_firestore.dart.lib.js:1204:31)
    at http://localhost:59783/packages/triage/main.dart.lib.js:478:25
    at Generator.next (<anonymous>)
    at runBody (http://localhost:59783/dart_sdk.js:37988:34)
    at Object._async [as async] (http://localhost:59783/dart_sdk.js:38019:7)
    at http://localhost:59783/packages/triage/main.dart.lib.js:473:411
    at ink_well._InkResponseState.new.[_handleTap] (http://localhost:59783/packages/flutter/src/material/icon_button.dart.lib.js:51084:42)
    at tap.TapGestureRecognizer.new.invokeCallback (http://localhost:59783/packages/flutter/src/gestures/recognizer.dart.lib.js:189:18)
    at tap.TapGestureRecognizer.new.handleTapUp (http://localhost:59783/packages/flutter/src/gestures/tap.dart.lib.js:395:40)
    at tap.TapGestureRecognizer.new.[_checkUp] (http://localhost:59783/packages/flutter/src/gestures/tap.dart.lib.js:201:12)
    at tap.TapGestureRecognizer.new.handlePrimaryPointer (http://localhost:59783/packages/flutter/src/gestures/tap.dart.lib.js:148:23)
    at tap.TapGestureRecognizer.new.handleEvent (http://localhost:59783/packages/flutter/src/gestures/recognizer.dart.lib.js:448:16)
    at pointer_router.PointerRouter.new.[_dispatch] (http://localhost:59783/packages/flutter/src/gestures/pointer_router.dart.lib.js:74:9)
    at http://localhost:59783/packages/flutter/src/gestures/pointer_router.dart.lib.js:109:26
    at LinkedMap.new.forEach (http://localhost:59783/dart_sdk.js:25093:11)
    at pointer_router.PointerRouter.new.[_dispatchEventToRoutes] (http://localhost:59783/packages/flutter/src/gestures/pointer_router.dart.lib.js:106:29)
    at pointer_router.PointerRouter.new.route (http://localhost:59783/packages/flutter/src/gestures/pointer_router.dart.lib.js:98:37)
    at binding$5.WidgetsFlutterBinding.new.handleEvent (http://localhost:59783/packages/flutter/src/gestures/binding.dart.lib.js:314:26)
    at binding$5.WidgetsFlutterBinding.new.dispatchEvent (http://localhost:59783/packages/flutter/src/gestures/binding.dart.lib.js:297:24)
    at binding$5.WidgetsFlutterBinding.new.dispatchEvent (http://localhost:59783/packages/flutter/src/rendering/layer.dart.lib.js:6093:13)
    at binding$5.WidgetsFlutterBinding.new.[_handlePointerEventImmediately] (http://localhost:59783/packages/flutter/src/gestures/binding.dart.lib.js:268:14)
    at binding$5.WidgetsFlutterBinding.new.handlePointerEvent (http://localhost:59783/packages/flutter/src/gestures/binding.dart.lib.js:241:43)
    at binding$5.WidgetsFlutterBinding.new.[_flushPointerEventQueue] (http://localhost:59783/packages/flutter/src/gestures/binding.dart.lib.js:230:14)
    at binding$5.WidgetsFlutterBinding.new.[_handlePointerDataPacket] (http://localhost:59783/packages/flutter/src/gestures/binding.dart.lib.js:220:65)
    at Object.invoke1 (http://localhost:59783/dart_sdk.js:178716:7)
    at _engine.EnginePlatformDispatcher.__.invokeOnPointerDataPacket (http://localhost:59783/dart_sdk.js:161367:15)
    at _engine.PointerBinding.__.[_onPointerData] (http://localhost:59783/dart_sdk.js:162002:49)
    at http://localhost:59783/dart_sdk.js:162435:26
    at http://localhost:59783/dart_sdk.js:162394:16
    at http://localhost:59783/dart_sdk.js:162102:11

Was this page helpful?
0 / 5 - 0 ratings