blob: 0315f8a9fdd2c88bbb5f4fbe3ee2c4a2d0ac1343 [file] [log] [blame]
import 'dart:js_interop';
@JS()
external JSAny? eval(String script);
@JS()
external JSPromise createPromise();
@JS()
external void rejectPromise();
@JS()
external bool rejectCalled;
void injectJS() {
eval('''
self.rejectCalled = false;
self.rejectFunction = null;
self.createPromise = function(s) {
let { promise, resolve, reject } = Promise.withResolvers();
self.rejectFunction = function() {
self.rejectCalled = true;
reject();
};
return promise;
};
self.rejectPromise = function() {
self.rejectFunction();
};
''');
}