| Index: lib/runtime/dart/html_common.js
|
| diff --git a/lib/runtime/dart/html_common.js b/lib/runtime/dart/html_common.js
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..30ef8f114df0937b2da67fca9a1512d58c061519
|
| --- /dev/null
|
| +++ b/lib/runtime/dart/html_common.js
|
| @@ -0,0 +1,969 @@
|
| +dart_library.library('dart/html_common', null, /* Imports */[
|
| + "dart/_runtime",
|
| + 'dart/_metadata',
|
| + 'dart/core',
|
| + 'dart/html',
|
| + 'dart/typed_data',
|
| + 'dart/_js_helper',
|
| + 'dart/_native_typed_data',
|
| + 'dart/async',
|
| + 'dart/collection',
|
| + 'dart/_internal'
|
| +], /* Lazy imports */[
|
| +], function(exports, dart, _metadata, core, html, typed_data, _js_helper, _native_typed_data, async, collection, _internal) {
|
| + 'use strict';
|
| + let dartx = dart.dartx;
|
| + dart.export_(exports, _metadata);
|
| + const _validateToken = Symbol('_validateToken');
|
| + class CssClassSetImpl extends core.Object {
|
| + [_validateToken](value) {
|
| + if (dart.notNull(CssClassSetImpl._validTokenRE.hasMatch(value)))
|
| + return value;
|
| + dart.throw(new core.ArgumentError.value(value, 'value', 'Not a valid class token'));
|
| + }
|
| + toString() {
|
| + return this.readClasses().join(' ');
|
| + }
|
| + toggle(value, shouldAdd) {
|
| + if (shouldAdd === void 0)
|
| + shouldAdd = null;
|
| + this[_validateToken](value);
|
| + let s = this.readClasses();
|
| + let result = false;
|
| + if (shouldAdd == null)
|
| + shouldAdd = !dart.notNull(s.contains(value));
|
| + if (dart.notNull(shouldAdd)) {
|
| + s.add(value);
|
| + result = true;
|
| + } else {
|
| + s.remove(value);
|
| + }
|
| + this.writeClasses(s);
|
| + return result;
|
| + }
|
| + get frozen() {
|
| + return false;
|
| + }
|
| + get iterator() {
|
| + return this.readClasses().iterator;
|
| + }
|
| + [Symbol.iterator]() {
|
| + return new dart.JsIterator(this.iterator);
|
| + }
|
| + forEach(f) {
|
| + this.readClasses().forEach(f);
|
| + }
|
| + join(separator) {
|
| + if (separator === void 0)
|
| + separator = "";
|
| + return this.readClasses().join(separator);
|
| + }
|
| + map(f) {
|
| + return this.readClasses().map(f);
|
| + }
|
| + where(f) {
|
| + return this.readClasses().where(f);
|
| + }
|
| + expand(f) {
|
| + return this.readClasses().expand(f);
|
| + }
|
| + every(f) {
|
| + return this.readClasses().every(f);
|
| + }
|
| + any(f) {
|
| + return this.readClasses().any(f);
|
| + }
|
| + get isEmpty() {
|
| + return this.readClasses().isEmpty;
|
| + }
|
| + get isNotEmpty() {
|
| + return this.readClasses().isNotEmpty;
|
| + }
|
| + get length() {
|
| + return this.readClasses().length;
|
| + }
|
| + reduce(combine) {
|
| + return this.readClasses().reduce(combine);
|
| + }
|
| + fold(initialValue, combine) {
|
| + return this.readClasses().fold(initialValue, combine);
|
| + }
|
| + contains(value) {
|
| + if (!(typeof value == 'string'))
|
| + return false;
|
| + this[_validateToken](dart.as(value, core.String));
|
| + return this.readClasses().contains(value);
|
| + }
|
| + lookup(value) {
|
| + return dart.as(dart.notNull(this.contains(value)) ? value : null, core.String);
|
| + }
|
| + add(value) {
|
| + this[_validateToken](value);
|
| + return dart.as(this.modify(dart.fn(s => dart.dsend(s, 'add', value))), core.bool);
|
| + }
|
| + remove(value) {
|
| + this[_validateToken](dart.as(value, core.String));
|
| + if (!(typeof value == 'string'))
|
| + return false;
|
| + let s = this.readClasses();
|
| + let result = s.remove(value);
|
| + this.writeClasses(s);
|
| + return result;
|
| + }
|
| + addAll(iterable) {
|
| + this.modify(dart.fn((s => dart.dsend(s, 'addAll', iterable[dartx.map](dart.bind(this, _validateToken)))).bind(this)));
|
| + }
|
| + removeAll(iterable) {
|
| + this.modify(dart.fn((s => dart.dsend(s, 'removeAll', iterable[dartx.map](dart.as(dart.bind(this, _validateToken), __CastType0)))).bind(this)));
|
| + }
|
| + toggleAll(iterable, shouldAdd) {
|
| + if (shouldAdd === void 0)
|
| + shouldAdd = null;
|
| + iterable[dartx.forEach](dart.fn((e => this.toggle(dart.as(e, core.String), shouldAdd)).bind(this), core.bool, [dart.dynamic]));
|
| + }
|
| + retainAll(iterable) {
|
| + this.modify(dart.fn(s => dart.dsend(s, 'retainAll', iterable)));
|
| + }
|
| + removeWhere(test) {
|
| + this.modify(dart.fn(s => dart.dsend(s, 'removeWhere', test)));
|
| + }
|
| + retainWhere(test) {
|
| + this.modify(dart.fn(s => dart.dsend(s, 'retainWhere', test)));
|
| + }
|
| + containsAll(collection) {
|
| + return this.readClasses().containsAll(collection);
|
| + }
|
| + intersection(other) {
|
| + return this.readClasses().intersection(other);
|
| + }
|
| + union(other) {
|
| + return this.readClasses().union(other);
|
| + }
|
| + difference(other) {
|
| + return this.readClasses().difference(other);
|
| + }
|
| + get first() {
|
| + return this.readClasses().first;
|
| + }
|
| + get last() {
|
| + return this.readClasses().last;
|
| + }
|
| + get single() {
|
| + return this.readClasses().single;
|
| + }
|
| + toList(opts) {
|
| + let growable = opts && 'growable' in opts ? opts.growable : true;
|
| + return this.readClasses().toList({growable: growable});
|
| + }
|
| + toSet() {
|
| + return this.readClasses().toSet();
|
| + }
|
| + take(n) {
|
| + return this.readClasses().take(n);
|
| + }
|
| + takeWhile(test) {
|
| + return this.readClasses().takeWhile(test);
|
| + }
|
| + skip(n) {
|
| + return this.readClasses().skip(n);
|
| + }
|
| + skipWhile(test) {
|
| + return this.readClasses().skipWhile(test);
|
| + }
|
| + firstWhere(test, opts) {
|
| + let orElse = opts && 'orElse' in opts ? opts.orElse : null;
|
| + return this.readClasses().firstWhere(test, {orElse: orElse});
|
| + }
|
| + lastWhere(test, opts) {
|
| + let orElse = opts && 'orElse' in opts ? opts.orElse : null;
|
| + return this.readClasses().lastWhere(test, {orElse: orElse});
|
| + }
|
| + singleWhere(test) {
|
| + return this.readClasses().singleWhere(test);
|
| + }
|
| + elementAt(index) {
|
| + return this.readClasses().elementAt(index);
|
| + }
|
| + clear() {
|
| + this.modify(dart.fn(s => dart.dsend(s, 'clear')));
|
| + }
|
| + modify(f) {
|
| + let s = this.readClasses();
|
| + let ret = f(s);
|
| + this.writeClasses(s);
|
| + return ret;
|
| + }
|
| + }
|
| + CssClassSetImpl[dart.implements] = () => [html.CssClassSet];
|
| + dart.setSignature(CssClassSetImpl, {
|
| + methods: () => ({
|
| + [_validateToken]: [core.String, [core.String]],
|
| + toggle: [core.bool, [core.String], [core.bool]],
|
| + forEach: [dart.void, [dart.functionType(dart.void, [core.String])]],
|
| + join: [core.String, [], [core.String]],
|
| + map: [core.Iterable, [dart.functionType(dart.dynamic, [core.String])]],
|
| + where: [core.Iterable$(core.String), [dart.functionType(core.bool, [core.String])]],
|
| + expand: [core.Iterable, [dart.functionType(core.Iterable, [core.String])]],
|
| + every: [core.bool, [dart.functionType(core.bool, [core.String])]],
|
| + any: [core.bool, [dart.functionType(core.bool, [core.String])]],
|
| + reduce: [core.String, [dart.functionType(core.String, [core.String, core.String])]],
|
| + fold: [dart.dynamic, [dart.dynamic, dart.functionType(dart.dynamic, [dart.dynamic, core.String])]],
|
| + contains: [core.bool, [core.Object]],
|
| + lookup: [core.String, [core.Object]],
|
| + add: [core.bool, [core.String]],
|
| + remove: [core.bool, [core.Object]],
|
| + addAll: [dart.void, [core.Iterable$(core.String)]],
|
| + removeAll: [dart.void, [core.Iterable$(core.Object)]],
|
| + toggleAll: [dart.void, [core.Iterable$(core.String)], [core.bool]],
|
| + retainAll: [dart.void, [core.Iterable$(core.Object)]],
|
| + removeWhere: [dart.void, [dart.functionType(core.bool, [core.String])]],
|
| + retainWhere: [dart.void, [dart.functionType(core.bool, [core.String])]],
|
| + containsAll: [core.bool, [core.Iterable$(core.Object)]],
|
| + intersection: [core.Set$(core.String), [core.Set$(core.Object)]],
|
| + union: [core.Set$(core.String), [core.Set$(core.String)]],
|
| + difference: [core.Set$(core.String), [core.Set$(core.String)]],
|
| + toList: [core.List$(core.String), [], {growable: core.bool}],
|
| + toSet: [core.Set$(core.String), []],
|
| + take: [core.Iterable$(core.String), [core.int]],
|
| + takeWhile: [core.Iterable$(core.String), [dart.functionType(core.bool, [core.String])]],
|
| + skip: [core.Iterable$(core.String), [core.int]],
|
| + skipWhile: [core.Iterable$(core.String), [dart.functionType(core.bool, [core.String])]],
|
| + firstWhere: [core.String, [dart.functionType(core.bool, [core.String])], {orElse: dart.functionType(core.String, [])}],
|
| + lastWhere: [core.String, [dart.functionType(core.bool, [core.String])], {orElse: dart.functionType(core.String, [])}],
|
| + singleWhere: [core.String, [dart.functionType(core.bool, [core.String])]],
|
| + elementAt: [core.String, [core.int]],
|
| + clear: [dart.void, []],
|
| + modify: [dart.dynamic, [dart.functionType(dart.dynamic, [core.Set$(core.String)])]]
|
| + })
|
| + });
|
| + dart.defineExtensionMembers(CssClassSetImpl, [
|
| + 'forEach',
|
| + 'join',
|
| + 'map',
|
| + 'where',
|
| + 'expand',
|
| + 'every',
|
| + 'any',
|
| + 'reduce',
|
| + 'fold',
|
| + 'contains',
|
| + 'toList',
|
| + 'toSet',
|
| + 'take',
|
| + 'takeWhile',
|
| + 'skip',
|
| + 'skipWhile',
|
| + 'firstWhere',
|
| + 'lastWhere',
|
| + 'singleWhere',
|
| + 'elementAt',
|
| + 'iterator',
|
| + 'isEmpty',
|
| + 'isNotEmpty',
|
| + 'length',
|
| + 'first',
|
| + 'last',
|
| + 'single'
|
| + ]);
|
| + dart.defineLazyProperties(CssClassSetImpl, {
|
| + get _validTokenRE() {
|
| + return core.RegExp.new('^\\S+$');
|
| + }
|
| + });
|
| + const __CastType0 = dart.typedef('__CastType0', () => dart.functionType(dart.dynamic, [core.Object]));
|
| + function convertDartToNative_SerializedScriptValue(value) {
|
| + return convertDartToNative_PrepareForStructuredClone(value);
|
| + }
|
| + dart.fn(convertDartToNative_SerializedScriptValue);
|
| + function convertNativeToDart_SerializedScriptValue(object) {
|
| + return convertNativeToDart_AcceptStructuredClone(object, {mustCopy: true});
|
| + }
|
| + dart.fn(convertNativeToDart_SerializedScriptValue);
|
| + class _StructuredClone extends core.Object {
|
| + _StructuredClone() {
|
| + this.values = [];
|
| + this.copies = [];
|
| + }
|
| + findSlot(value) {
|
| + let length = this.values[dartx.length];
|
| + for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull(i) + 1) {
|
| + if (dart.notNull(core.identical(this.values[dartx.get](i), value)))
|
| + return i;
|
| + }
|
| + this.values[dartx.add](value);
|
| + this.copies[dartx.add](null);
|
| + return length;
|
| + }
|
| + readSlot(i) {
|
| + return this.copies[dartx.get](i);
|
| + }
|
| + writeSlot(i, x) {
|
| + this.copies[dartx.set](i, x);
|
| + }
|
| + cleanupSlots() {}
|
| + walk(e) {
|
| + if (e == null)
|
| + return e;
|
| + if (typeof e == 'boolean')
|
| + return e;
|
| + if (typeof e == 'number')
|
| + return e;
|
| + if (typeof e == 'string')
|
| + return e;
|
| + if (dart.is(e, core.DateTime)) {
|
| + return convertDartToNative_DateTime(dart.as(e, core.DateTime));
|
| + }
|
| + if (dart.is(e, core.RegExp)) {
|
| + dart.throw(new core.UnimplementedError('structured clone of RegExp'));
|
| + }
|
| + if (dart.is(e, dart.dynamic))
|
| + return e;
|
| + if (dart.is(e, dart.dynamic))
|
| + return e;
|
| + if (dart.is(e, dart.dynamic))
|
| + return e;
|
| + if (dart.is(e, dart.dynamic))
|
| + return e;
|
| + if (dart.notNull(this.cloneNotRequired(e)))
|
| + return e;
|
| + if (dart.is(e, core.Map)) {
|
| + let slot = this.findSlot(e);
|
| + let copy = this.readSlot(slot);
|
| + if (copy != null)
|
| + return copy;
|
| + copy = this.newJsMap();
|
| + this.writeSlot(slot, copy);
|
| + dart.dsend(e, 'forEach', dart.fn(((key, value) => {
|
| + this.putIntoMap(copy, key, this.walk(value));
|
| + }).bind(this)));
|
| + return copy;
|
| + }
|
| + if (dart.is(e, core.List)) {
|
| + let slot = this.findSlot(e);
|
| + let copy = this.readSlot(slot);
|
| + if (copy != null)
|
| + return copy;
|
| + copy = this.copyList(dart.as(e, core.List), slot);
|
| + return copy;
|
| + }
|
| + dart.throw(new core.UnimplementedError('structured clone of other type'));
|
| + }
|
| + copyList(e, slot) {
|
| + let i = 0;
|
| + let length = e[dartx.length];
|
| + let copy = this.newJsList(length);
|
| + this.writeSlot(slot, copy);
|
| + for (; dart.notNull(i) < dart.notNull(length); i = dart.notNull(i) + 1) {
|
| + dart.dsetindex(copy, i, this.walk(e[dartx.get](i)));
|
| + }
|
| + return copy;
|
| + }
|
| + convertDartToNative_PrepareForStructuredClone(value) {
|
| + let copy = this.walk(value);
|
| + this.cleanupSlots();
|
| + return copy;
|
| + }
|
| + }
|
| + dart.setSignature(_StructuredClone, {
|
| + methods: () => ({
|
| + findSlot: [core.int, [dart.dynamic]],
|
| + readSlot: [dart.dynamic, [core.int]],
|
| + writeSlot: [dart.dynamic, [core.int, dart.dynamic]],
|
| + cleanupSlots: [dart.dynamic, []],
|
| + walk: [dart.dynamic, [dart.dynamic]],
|
| + copyList: [dart.dynamic, [core.List, core.int]],
|
| + convertDartToNative_PrepareForStructuredClone: [dart.dynamic, [dart.dynamic]]
|
| + })
|
| + });
|
| + class _AcceptStructuredClone extends core.Object {
|
| + _AcceptStructuredClone() {
|
| + this.values = [];
|
| + this.copies = [];
|
| + this.mustCopy = false;
|
| + }
|
| + findSlot(value) {
|
| + let length = this.values[dartx.length];
|
| + for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull(i) + 1) {
|
| + if (dart.notNull(this.identicalInJs(this.values[dartx.get](i), value)))
|
| + return i;
|
| + }
|
| + this.values[dartx.add](value);
|
| + this.copies[dartx.add](null);
|
| + return length;
|
| + }
|
| + readSlot(i) {
|
| + return this.copies[dartx.get](i);
|
| + }
|
| + writeSlot(i, x) {
|
| + this.copies[dartx.set](i, x);
|
| + }
|
| + walk(e) {
|
| + if (e == null)
|
| + return e;
|
| + if (typeof e == 'boolean')
|
| + return e;
|
| + if (typeof e == 'number')
|
| + return e;
|
| + if (typeof e == 'string')
|
| + return e;
|
| + if (dart.notNull(isJavaScriptDate(e))) {
|
| + return convertNativeToDart_DateTime(e);
|
| + }
|
| + if (dart.notNull(isJavaScriptRegExp(e))) {
|
| + dart.throw(new core.UnimplementedError('structured clone of RegExp'));
|
| + }
|
| + if (dart.notNull(isJavaScriptPromise(e))) {
|
| + return convertNativePromiseToDartFuture(e);
|
| + }
|
| + if (dart.notNull(isJavaScriptSimpleObject(e))) {
|
| + let slot = this.findSlot(e);
|
| + let copy = this.readSlot(slot);
|
| + if (copy != null)
|
| + return copy;
|
| + copy = dart.map();
|
| + this.writeSlot(slot, copy);
|
| + this.forEachJsField(e, dart.fn(((key, value) => dart.dsetindex(copy, key, this.walk(value))).bind(this)));
|
| + return copy;
|
| + }
|
| + if (dart.notNull(isJavaScriptArray(e))) {
|
| + let slot = this.findSlot(e);
|
| + let copy = this.readSlot(slot);
|
| + if (copy != null)
|
| + return copy;
|
| + let length = dart.as(dart.dload(e, 'length'), core.int);
|
| + copy = dart.notNull(this.mustCopy) ? this.newDartList(length) : e;
|
| + this.writeSlot(slot, copy);
|
| + for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull(i) + 1) {
|
| + dart.dsetindex(copy, i, this.walk(dart.dindex(e, i)));
|
| + }
|
| + return copy;
|
| + }
|
| + return e;
|
| + }
|
| + convertNativeToDart_AcceptStructuredClone(object, opts) {
|
| + let mustCopy = opts && 'mustCopy' in opts ? opts.mustCopy : false;
|
| + this.mustCopy = dart.as(mustCopy, core.bool);
|
| + let copy = this.walk(object);
|
| + return copy;
|
| + }
|
| + }
|
| + dart.setSignature(_AcceptStructuredClone, {
|
| + methods: () => ({
|
| + findSlot: [core.int, [dart.dynamic]],
|
| + readSlot: [dart.dynamic, [core.int]],
|
| + writeSlot: [dart.dynamic, [core.int, dart.dynamic]],
|
| + walk: [dart.dynamic, [dart.dynamic]],
|
| + convertNativeToDart_AcceptStructuredClone: [dart.dynamic, [dart.dynamic], {mustCopy: dart.dynamic}]
|
| + })
|
| + });
|
| + class _TypedContextAttributes extends core.Object {
|
| + _TypedContextAttributes(alpha, antialias, depth, failIfMajorPerformanceCaveat, premultipliedAlpha, preserveDrawingBuffer, stencil) {
|
| + this.alpha = alpha;
|
| + this.antialias = antialias;
|
| + this.depth = depth;
|
| + this.failIfMajorPerformanceCaveat = failIfMajorPerformanceCaveat;
|
| + this.premultipliedAlpha = premultipliedAlpha;
|
| + this.preserveDrawingBuffer = preserveDrawingBuffer;
|
| + this.stencil = stencil;
|
| + }
|
| + }
|
| + dart.setSignature(_TypedContextAttributes, {
|
| + constructors: () => ({_TypedContextAttributes: [_TypedContextAttributes, [core.bool, core.bool, core.bool, core.bool, core.bool, core.bool, core.bool]]})
|
| + });
|
| + function convertNativeToDart_ContextAttributes(nativeContextAttributes) {
|
| + if (dart.is(nativeContextAttributes, dart.dynamic)) {
|
| + return nativeContextAttributes;
|
| + }
|
| + return new _TypedContextAttributes(dart.as(nativeContextAttributes.alpha, core.bool), dart.as(nativeContextAttributes.antialias, core.bool), dart.as(nativeContextAttributes.depth, core.bool), dart.as(nativeContextAttributes.failIfMajorPerformanceCaveat, core.bool), dart.as(nativeContextAttributes.premultipliedAlpha, core.bool), dart.as(nativeContextAttributes.preserveDrawingBuffer, core.bool), dart.as(nativeContextAttributes.stencil, core.bool));
|
| + }
|
| + dart.fn(convertNativeToDart_ContextAttributes);
|
| + class _TypedImageData extends core.Object {
|
| + _TypedImageData(data, height, width) {
|
| + this.data = data;
|
| + this.height = height;
|
| + this.width = width;
|
| + }
|
| + }
|
| + dart.setSignature(_TypedImageData, {
|
| + constructors: () => ({_TypedImageData: [_TypedImageData, [typed_data.Uint8ClampedList, core.int, core.int]]})
|
| + });
|
| + function convertNativeToDart_ImageData(nativeImageData) {
|
| + 0;
|
| + if (dart.is(nativeImageData, dart.dynamic)) {
|
| + let data = dart.dload(nativeImageData, 'data');
|
| + if (data.constructor === Array) {
|
| + if (typeof CanvasPixelArray !== "undefined") {
|
| + data.constructor = CanvasPixelArray;
|
| + data.BYTES_PER_ELEMENT = 1;
|
| + }
|
| + }
|
| + return nativeImageData;
|
| + }
|
| + return new _TypedImageData(dart.as(nativeImageData.data, typed_data.Uint8ClampedList), dart.as(nativeImageData.height, core.int), dart.as(nativeImageData.width, core.int));
|
| + }
|
| + dart.fn(convertNativeToDart_ImageData);
|
| + function convertDartToNative_ImageData(imageData) {
|
| + if (dart.is(imageData, _TypedImageData)) {
|
| + return {data: dart.dload(imageData, 'data'), height: dart.dload(imageData, 'height'), width: dart.dload(imageData, 'width')};
|
| + }
|
| + return imageData;
|
| + }
|
| + dart.fn(convertDartToNative_ImageData);
|
| + const _serializedScriptValue = 'num|String|bool|' + 'JSExtendableArray|=Object|' + 'Blob|File|NativeByteBuffer|NativeTypedData';
|
| + const annotation_Creates_SerializedScriptValue = dart.const(new _js_helper.Creates(_serializedScriptValue));
|
| + const annotation_Returns_SerializedScriptValue = dart.const(new _js_helper.Returns(_serializedScriptValue));
|
| + function convertNativeToDart_Dictionary(object) {
|
| + if (object == null)
|
| + return null;
|
| + let dict = dart.map();
|
| + let keys = Object.getOwnPropertyNames(object);
|
| + for (let key of dart.as(keys, core.Iterable)) {
|
| + dict.set(key, object[key]);
|
| + }
|
| + return dict;
|
| + }
|
| + dart.fn(convertNativeToDart_Dictionary, core.Map, [dart.dynamic]);
|
| + function convertDartToNative_Dictionary(dict, postCreate) {
|
| + if (postCreate === void 0)
|
| + postCreate = null;
|
| + if (dict == null)
|
| + return null;
|
| + let object = {};
|
| + if (postCreate != null) {
|
| + dart.dcall(postCreate, object);
|
| + }
|
| + dict.forEach(dart.fn((key, value) => {
|
| + object[key] = value;
|
| + }, dart.dynamic, [core.String, dart.dynamic]));
|
| + return object;
|
| + }
|
| + dart.fn(convertDartToNative_Dictionary, dart.dynamic, [core.Map], [dart.functionType(dart.void, [dart.dynamic])]);
|
| + function convertDartToNative_StringArray(input) {
|
| + return input;
|
| + }
|
| + dart.fn(convertDartToNative_StringArray, core.List, [core.List$(core.String)]);
|
| + function convertNativeToDart_DateTime(date) {
|
| + let millisSinceEpoch = date.getTime();
|
| + return new core.DateTime.fromMillisecondsSinceEpoch(millisSinceEpoch, {isUtc: true});
|
| + }
|
| + dart.fn(convertNativeToDart_DateTime, core.DateTime, [dart.dynamic]);
|
| + function convertDartToNative_DateTime(date) {
|
| + return new Date(date.millisecondsSinceEpoch);
|
| + }
|
| + dart.fn(convertDartToNative_DateTime, dart.dynamic, [core.DateTime]);
|
| + function convertDartToNative_PrepareForStructuredClone(value) {
|
| + return new _StructuredCloneDart2Js().convertDartToNative_PrepareForStructuredClone(value);
|
| + }
|
| + dart.fn(convertDartToNative_PrepareForStructuredClone);
|
| + function convertNativeToDart_AcceptStructuredClone(object, opts) {
|
| + let mustCopy = opts && 'mustCopy' in opts ? opts.mustCopy : false;
|
| + return new _AcceptStructuredCloneDart2Js().convertNativeToDart_AcceptStructuredClone(object, {mustCopy: mustCopy});
|
| + }
|
| + dart.fn(convertNativeToDart_AcceptStructuredClone, dart.dynamic, [dart.dynamic], {mustCopy: dart.dynamic});
|
| + class _StructuredCloneDart2Js extends _StructuredClone {
|
| + _StructuredCloneDart2Js() {
|
| + super._StructuredClone();
|
| + }
|
| + newJsMap() {
|
| + return {};
|
| + }
|
| + putIntoMap(map, key, value) {
|
| + return map[key] = value;
|
| + }
|
| + newJsList(length) {
|
| + return new Array(length);
|
| + }
|
| + cloneNotRequired(e) {
|
| + return dart.is(e, _native_typed_data.NativeByteBuffer) || dart.is(e, _native_typed_data.NativeTypedData);
|
| + }
|
| + }
|
| + dart.setSignature(_StructuredCloneDart2Js, {
|
| + methods: () => ({
|
| + newJsMap: [dart.dynamic, []],
|
| + putIntoMap: [dart.void, [dart.dynamic, dart.dynamic, dart.dynamic]],
|
| + newJsList: [dart.dynamic, [dart.dynamic]],
|
| + cloneNotRequired: [core.bool, [dart.dynamic]]
|
| + })
|
| + });
|
| + class _AcceptStructuredCloneDart2Js extends _AcceptStructuredClone {
|
| + _AcceptStructuredCloneDart2Js() {
|
| + super._AcceptStructuredClone();
|
| + }
|
| + newJsList(length) {
|
| + return new Array(length);
|
| + }
|
| + newDartList(length) {
|
| + return this.newJsList(length);
|
| + }
|
| + identicalInJs(a, b) {
|
| + return core.identical(a, b);
|
| + }
|
| + forEachJsField(object, action) {
|
| + for (let key of dart.as(Object.keys(object), core.Iterable)) {
|
| + dart.dcall(action, key, object[key]);
|
| + }
|
| + }
|
| + }
|
| + dart.setSignature(_AcceptStructuredCloneDart2Js, {
|
| + methods: () => ({
|
| + newJsList: [dart.dynamic, [dart.dynamic]],
|
| + newDartList: [dart.dynamic, [dart.dynamic]],
|
| + identicalInJs: [core.bool, [dart.dynamic, dart.dynamic]],
|
| + forEachJsField: [dart.void, [dart.dynamic, dart.dynamic]]
|
| + })
|
| + });
|
| + function isJavaScriptDate(value) {
|
| + return value instanceof Date;
|
| + }
|
| + dart.fn(isJavaScriptDate, core.bool, [dart.dynamic]);
|
| + function isJavaScriptRegExp(value) {
|
| + return value instanceof RegExp;
|
| + }
|
| + dart.fn(isJavaScriptRegExp, core.bool, [dart.dynamic]);
|
| + function isJavaScriptArray(value) {
|
| + return value instanceof Array;
|
| + }
|
| + dart.fn(isJavaScriptArray, core.bool, [dart.dynamic]);
|
| + function isJavaScriptSimpleObject(value) {
|
| + let proto = Object.getPrototypeOf(value);
|
| + return proto === Object.prototype || proto === null;
|
| + }
|
| + dart.fn(isJavaScriptSimpleObject, core.bool, [dart.dynamic]);
|
| + function isImmutableJavaScriptArray(value) {
|
| + return !!value.immutable$list;
|
| + }
|
| + dart.fn(isImmutableJavaScriptArray, core.bool, [dart.dynamic]);
|
| + function isJavaScriptPromise(value) {
|
| + return typeof Promise != "undefined" && value instanceof Promise;
|
| + }
|
| + dart.fn(isJavaScriptPromise, core.bool, [dart.dynamic]);
|
| + function convertNativePromiseToDartFuture(promise) {
|
| + let completer = async.Completer.new();
|
| + let then = dart.dcall(/* Unimplemented unknown name */convertDartClosureToJS, dart.fn(result => completer.complete(result), dart.void, [dart.dynamic]), 1);
|
| + let error = dart.dcall(/* Unimplemented unknown name */convertDartClosureToJS, dart.fn(result => completer.completeError(result), dart.void, [dart.dynamic]), 1);
|
| + let newPromise = promise.then(then).catch(error);
|
| + return completer.future;
|
| + }
|
| + dart.fn(convertNativePromiseToDartFuture, async.Future, [dart.dynamic]);
|
| + class Device extends core.Object {
|
| + static get userAgent() {
|
| + return dart.as(html.window.navigator.userAgent, core.String);
|
| + }
|
| + static get isOpera() {
|
| + if (Device._isOpera == null) {
|
| + Device._isOpera = Device.userAgent[dartx.contains]("Opera", 0);
|
| + }
|
| + return Device._isOpera;
|
| + }
|
| + static get isIE() {
|
| + if (Device._isIE == null) {
|
| + Device._isIE = !dart.notNull(Device.isOpera) && dart.notNull(Device.userAgent[dartx.contains]("Trident/", 0));
|
| + }
|
| + return Device._isIE;
|
| + }
|
| + static get isFirefox() {
|
| + if (Device._isFirefox == null) {
|
| + Device._isFirefox = Device.userAgent[dartx.contains]("Firefox", 0);
|
| + }
|
| + return Device._isFirefox;
|
| + }
|
| + static get isWebKit() {
|
| + if (Device._isWebKit == null) {
|
| + Device._isWebKit = !dart.notNull(Device.isOpera) && dart.notNull(Device.userAgent[dartx.contains]("WebKit", 0));
|
| + }
|
| + return Device._isWebKit;
|
| + }
|
| + static get cssPrefix() {
|
| + let prefix = Device._cachedCssPrefix;
|
| + if (prefix != null)
|
| + return prefix;
|
| + if (dart.notNull(Device.isFirefox)) {
|
| + prefix = '-moz-';
|
| + } else if (dart.notNull(Device.isIE)) {
|
| + prefix = '-ms-';
|
| + } else if (dart.notNull(Device.isOpera)) {
|
| + prefix = '-o-';
|
| + } else {
|
| + prefix = '-webkit-';
|
| + }
|
| + return Device._cachedCssPrefix = prefix;
|
| + }
|
| + static get propertyPrefix() {
|
| + let prefix = Device._cachedPropertyPrefix;
|
| + if (prefix != null)
|
| + return prefix;
|
| + if (dart.notNull(Device.isFirefox)) {
|
| + prefix = 'moz';
|
| + } else if (dart.notNull(Device.isIE)) {
|
| + prefix = 'ms';
|
| + } else if (dart.notNull(Device.isOpera)) {
|
| + prefix = 'o';
|
| + } else {
|
| + prefix = 'webkit';
|
| + }
|
| + return Device._cachedPropertyPrefix = prefix;
|
| + }
|
| + static isEventTypeSupported(eventType) {
|
| + try {
|
| + let e = html.Event.eventType(eventType, '');
|
| + return dart.is(e, html.Event);
|
| + } catch (_) {
|
| + }
|
| +
|
| + return false;
|
| + }
|
| + }
|
| + dart.setSignature(Device, {
|
| + statics: () => ({isEventTypeSupported: [core.bool, [core.String]]}),
|
| + names: ['isEventTypeSupported']
|
| + });
|
| + Device._isOpera = null;
|
| + Device._isIE = null;
|
| + Device._isFirefox = null;
|
| + Device._isWebKit = null;
|
| + Device._cachedCssPrefix = null;
|
| + Device._cachedPropertyPrefix = null;
|
| + const _childNodes = Symbol('_childNodes');
|
| + const _node = Symbol('_node');
|
| + const _iterable = Symbol('_iterable');
|
| + const _filtered = Symbol('_filtered');
|
| + class FilteredElementList extends collection.ListBase$(html.Element) {
|
| + FilteredElementList(node) {
|
| + this[_childNodes] = node.nodes;
|
| + this[_node] = node;
|
| + }
|
| + get [_iterable]() {
|
| + return new _internal.WhereIterable(this[_childNodes], dart.fn(n => dart.is(n, html.Element), core.bool, [dart.dynamic]));
|
| + }
|
| + get [_filtered]() {
|
| + return core.List$(html.Element).from(this[_iterable], {growable: false});
|
| + }
|
| + forEach(f) {
|
| + this[_filtered][dartx.forEach](f);
|
| + }
|
| + set(index, value) {
|
| + this.get(index).replaceWith(value);
|
| + return value;
|
| + }
|
| + set length(newLength) {
|
| + let len = this.length;
|
| + if (dart.notNull(newLength) >= dart.notNull(len)) {
|
| + return;
|
| + } else if (dart.notNull(newLength) < 0) {
|
| + dart.throw(new core.ArgumentError("Invalid list length"));
|
| + }
|
| + this.removeRange(newLength, len);
|
| + }
|
| + add(value) {
|
| + this[_childNodes][dartx.add](value);
|
| + }
|
| + addAll(iterable) {
|
| + for (let element of iterable) {
|
| + this.add(element);
|
| + }
|
| + }
|
| + contains(needle) {
|
| + if (!dart.is(needle, html.Element))
|
| + return false;
|
| + let element = dart.as(needle, html.Element);
|
| + return dart.equals(element.parentNode, this[_node]);
|
| + }
|
| + get reversed() {
|
| + return this[_filtered][dartx.reversed];
|
| + }
|
| + sort(compare) {
|
| + if (compare === void 0)
|
| + compare = null;
|
| + dart.throw(new core.UnsupportedError('Cannot sort filtered list'));
|
| + }
|
| + setRange(start, end, iterable, skipCount) {
|
| + if (skipCount === void 0)
|
| + skipCount = 0;
|
| + dart.throw(new core.UnsupportedError('Cannot setRange on filtered list'));
|
| + }
|
| + fillRange(start, end, fillValue) {
|
| + if (fillValue === void 0)
|
| + fillValue = null;
|
| + dart.throw(new core.UnsupportedError('Cannot fillRange on filtered list'));
|
| + }
|
| + replaceRange(start, end, iterable) {
|
| + dart.throw(new core.UnsupportedError('Cannot replaceRange on filtered list'));
|
| + }
|
| + removeRange(start, end) {
|
| + core.List.from(this[_iterable][dartx.skip](start)[dartx.take](dart.notNull(end) - dart.notNull(start)))[dartx.forEach](dart.fn(el => dart.dsend(el, 'remove')));
|
| + }
|
| + clear() {
|
| + this[_childNodes][dartx.clear]();
|
| + }
|
| + removeLast() {
|
| + let result = this[_iterable][dartx.last];
|
| + if (result != null) {
|
| + result.remove();
|
| + }
|
| + return result;
|
| + }
|
| + insert(index, value) {
|
| + if (index == this.length) {
|
| + this.add(value);
|
| + } else {
|
| + let element = this[_iterable][dartx.elementAt](index);
|
| + element.parentNode.insertBefore(value, element);
|
| + }
|
| + }
|
| + insertAll(index, iterable) {
|
| + if (index == this.length) {
|
| + this.addAll(iterable);
|
| + } else {
|
| + let element = this[_iterable][dartx.elementAt](index);
|
| + element.parentNode.insertAllBefore(iterable, element);
|
| + }
|
| + }
|
| + removeAt(index) {
|
| + let result = this.get(index);
|
| + result.remove();
|
| + return result;
|
| + }
|
| + remove(element) {
|
| + if (!dart.is(element, html.Element))
|
| + return false;
|
| + if (dart.notNull(this.contains(element))) {
|
| + dart.as(element, html.Element).remove();
|
| + return true;
|
| + } else {
|
| + return false;
|
| + }
|
| + }
|
| + get length() {
|
| + return this[_iterable][dartx.length];
|
| + }
|
| + get(index) {
|
| + return this[_iterable][dartx.elementAt](index);
|
| + }
|
| + get iterator() {
|
| + return this[_filtered][dartx.iterator];
|
| + }
|
| + get rawList() {
|
| + return this[_node].childNodes;
|
| + }
|
| + }
|
| + FilteredElementList[dart.implements] = () => [NodeListWrapper];
|
| + dart.setSignature(FilteredElementList, {
|
| + constructors: () => ({FilteredElementList: [FilteredElementList, [html.Node]]}),
|
| + methods: () => ({
|
| + forEach: [dart.void, [dart.functionType(dart.void, [html.Element])]],
|
| + set: [dart.void, [core.int, html.Element]],
|
| + add: [dart.void, [html.Element]],
|
| + addAll: [dart.void, [core.Iterable$(html.Element)]],
|
| + sort: [dart.void, [], [dart.functionType(core.int, [html.Element, html.Element])]],
|
| + setRange: [dart.void, [core.int, core.int, core.Iterable$(html.Element)], [core.int]],
|
| + fillRange: [dart.void, [core.int, core.int], [html.Element]],
|
| + replaceRange: [dart.void, [core.int, core.int, core.Iterable$(html.Element)]],
|
| + removeLast: [html.Element, []],
|
| + insert: [dart.void, [core.int, html.Element]],
|
| + insertAll: [dart.void, [core.int, core.Iterable$(html.Element)]],
|
| + removeAt: [html.Element, [core.int]],
|
| + get: [html.Element, [core.int]]
|
| + })
|
| + });
|
| + dart.defineExtensionMembers(FilteredElementList, [
|
| + 'forEach',
|
| + 'set',
|
| + 'add',
|
| + 'addAll',
|
| + 'contains',
|
| + 'sort',
|
| + 'setRange',
|
| + 'fillRange',
|
| + 'replaceRange',
|
| + 'removeRange',
|
| + 'clear',
|
| + 'removeLast',
|
| + 'insert',
|
| + 'insertAll',
|
| + 'removeAt',
|
| + 'remove',
|
| + 'get',
|
| + 'length',
|
| + 'reversed',
|
| + 'length',
|
| + 'iterator'
|
| + ]);
|
| + class Lists extends core.Object {
|
| + static indexOf(a, element, startIndex, endIndex) {
|
| + if (dart.notNull(startIndex) >= dart.notNull(a[dartx.length])) {
|
| + return -1;
|
| + }
|
| + if (dart.notNull(startIndex) < 0) {
|
| + startIndex = 0;
|
| + }
|
| + for (let i = startIndex; dart.notNull(i) < dart.notNull(endIndex); i = dart.notNull(i) + 1) {
|
| + if (dart.equals(a[dartx.get](i), element)) {
|
| + return i;
|
| + }
|
| + }
|
| + return -1;
|
| + }
|
| + static lastIndexOf(a, element, startIndex) {
|
| + if (dart.notNull(startIndex) < 0) {
|
| + return -1;
|
| + }
|
| + if (dart.notNull(startIndex) >= dart.notNull(a[dartx.length])) {
|
| + startIndex = dart.notNull(a[dartx.length]) - 1;
|
| + }
|
| + for (let i = startIndex; dart.notNull(i) >= 0; i = dart.notNull(i) - 1) {
|
| + if (dart.equals(a[dartx.get](i), element)) {
|
| + return i;
|
| + }
|
| + }
|
| + return -1;
|
| + }
|
| + static getRange(a, start, end, accumulator) {
|
| + if (dart.notNull(start) < 0)
|
| + dart.throw(new core.RangeError.value(start));
|
| + if (dart.notNull(end) < dart.notNull(start))
|
| + dart.throw(new core.RangeError.value(end));
|
| + if (dart.notNull(end) > dart.notNull(a[dartx.length]))
|
| + dart.throw(new core.RangeError.value(end));
|
| + for (let i = start; dart.notNull(i) < dart.notNull(end); i = dart.notNull(i) + 1) {
|
| + accumulator[dartx.add](a[dartx.get](i));
|
| + }
|
| + return accumulator;
|
| + }
|
| + }
|
| + dart.setSignature(Lists, {
|
| + statics: () => ({
|
| + indexOf: [core.int, [core.List, core.Object, core.int, core.int]],
|
| + lastIndexOf: [core.int, [core.List, core.Object, core.int]],
|
| + getRange: [core.List, [core.List, core.int, core.int, core.List]]
|
| + }),
|
| + names: ['indexOf', 'lastIndexOf', 'getRange']
|
| + });
|
| + class NodeListWrapper extends core.Object {}
|
| + // Exports:
|
| + exports.CssClassSetImpl = CssClassSetImpl;
|
| + exports.convertDartToNative_SerializedScriptValue = convertDartToNative_SerializedScriptValue;
|
| + exports.convertNativeToDart_SerializedScriptValue = convertNativeToDart_SerializedScriptValue;
|
| + exports.convertNativeToDart_ContextAttributes = convertNativeToDart_ContextAttributes;
|
| + exports.convertNativeToDart_ImageData = convertNativeToDart_ImageData;
|
| + exports.convertDartToNative_ImageData = convertDartToNative_ImageData;
|
| + exports.annotation_Creates_SerializedScriptValue = annotation_Creates_SerializedScriptValue;
|
| + exports.annotation_Returns_SerializedScriptValue = annotation_Returns_SerializedScriptValue;
|
| + exports.convertNativeToDart_Dictionary = convertNativeToDart_Dictionary;
|
| + exports.convertDartToNative_Dictionary = convertDartToNative_Dictionary;
|
| + exports.convertDartToNative_StringArray = convertDartToNative_StringArray;
|
| + exports.convertNativeToDart_DateTime = convertNativeToDart_DateTime;
|
| + exports.convertDartToNative_DateTime = convertDartToNative_DateTime;
|
| + exports.convertDartToNative_PrepareForStructuredClone = convertDartToNative_PrepareForStructuredClone;
|
| + exports.convertNativeToDart_AcceptStructuredClone = convertNativeToDart_AcceptStructuredClone;
|
| + exports.isJavaScriptDate = isJavaScriptDate;
|
| + exports.isJavaScriptRegExp = isJavaScriptRegExp;
|
| + exports.isJavaScriptArray = isJavaScriptArray;
|
| + exports.isJavaScriptSimpleObject = isJavaScriptSimpleObject;
|
| + exports.isImmutableJavaScriptArray = isImmutableJavaScriptArray;
|
| + exports.isJavaScriptPromise = isJavaScriptPromise;
|
| + exports.convertNativePromiseToDartFuture = convertNativePromiseToDartFuture;
|
| + exports.Device = Device;
|
| + exports.FilteredElementList = FilteredElementList;
|
| + exports.Lists = Lists;
|
| + exports.NodeListWrapper = NodeListWrapper;
|
| +});
|
|
|