listSelectedObjects method

Future<List<SeatsioObject>> listSelectedObjects()

Implementation

Future<List<SeatsioObject>> listSelectedObjects() async {
  final String promiseId = DateTime.now().millisecondsSinceEpoch.toString();
  final Completer<List<SeatsioObject>> completer = Completer();

  _pendingPromises[promiseId] = completer;

  await _controller.evaluateJavascript("""
  chart.listSelectedObjects()
    .then(objects => {
      window.listSelectedObjectsJsChannel.postMessage(JSON.stringify({
        \"id\": \"$promiseId\",
        \"status\": \"resolved\",
        \"objects\": objects
      }));
    })
    .catch(error => {
      window.listSelectedObjectsJsChannel.postMessage(JSON.stringify({
        \"id\": \"$promiseId\",
        \"status\": \"error\",
        \"message\": error
      }));
    });
""");

  return completer.future;
}