@@ -20,6 +20,7 @@ dart_library.library('dart_sdk', null, /* Imports */[
20
20
const core = Object.create(null);
21
21
const isolate = Object.create(null);
22
22
const js = Object.create(null);
23
+ const js_util = Object.create(null);
23
24
const math = Object.create(null);
24
25
const mirrors = Object.create(null);
25
26
const typed_data = Object.create(null);
@@ -629,6 +630,7 @@ dart_library.library('dart_sdk', null, /* Imports */[
629
630
let dynamicAnddynamicAndFnToObject = () => (dynamicAnddynamicAndFnToObject = dart.constFn(dart.definiteFunctionType(core.Object, [dart.dynamic, dart.dynamic, dynamicTodynamic()])))();
630
631
let FToF = () => (FToF = dart.constFn(dart.definiteFunctionType(F => [F, [F]])))();
631
632
let FunctionToFunction = () => (FunctionToFunction = dart.constFn(dart.definiteFunctionType(core.Function, [core.Function])))();
633
+ let FunctionAndListTodynamic = () => (FunctionAndListTodynamic = dart.constFn(dart.definiteFunctionType(dart.dynamic, [core.Function, core.List])))();
632
634
let TAndTToT = () => (TAndTToT = dart.constFn(dart.definiteFunctionType(T => [T, [T, T]])))();
633
635
let TAndTToT$ = () => (TAndTToT$ = dart.constFn(dart.definiteFunctionType(T => [T, [T, T]])))();
634
636
let numAndnumTodouble = () => (numAndnumTodouble = dart.constFn(dart.definiteFunctionType(core.double, [core.num, core.num])))();
@@ -33773,6 +33775,109 @@ dart_library.library('dart_sdk', null, /* Imports */[
33773
33775
return ret;
33774
33776
};
33775
33777
dart.fn(js.allowInteropCaptureThis, FunctionToFunction());
33778
+ js_util.jsify = function(object) {
33779
+ if (!core.Map.is(object) && !core.Iterable.is(object)) {
33780
+ dart.throw(new core.ArgumentError("object must be a Map or Iterable"));
33781
+ }
33782
+ return js_util._convertDataTree(object);
33783
+ };
33784
+ dart.fn(js_util.jsify, dynamicTodynamic$());
33785
+ js_util._convertDataTree = function(data) {
33786
+ let _convertedObjects = collection.HashMap.identity();
33787
+ function _convert(o) {
33788
+ if (dart.test(_convertedObjects.containsKey(o))) {
33789
+ return _convertedObjects.get(o);
33790
+ }
33791
+ if (core.Map.is(o)) {
33792
+ let convertedMap = {};
33793
+ _convertedObjects.set(o, convertedMap);
33794
+ for (let key of o[dartx.keys]) {
33795
+ convertedMap[key] = _convert(o[dartx.get](key));
33796
+ }
33797
+ return convertedMap;
33798
+ } else if (core.Iterable.is(o)) {
33799
+ let convertedList = [];
33800
+ _convertedObjects.set(o, convertedList);
33801
+ convertedList[dartx.addAll](o[dartx.map](dart.dynamic)(_convert));
33802
+ return convertedList;
33803
+ } else {
33804
+ return o;
33805
+ }
33806
+ }
33807
+ dart.fn(_convert, dynamicTodynamic$());
33808
+ return _convert(data);
33809
+ };
33810
+ dart.fn(js_util._convertDataTree, dynamicTodynamic$());
33811
+ js_util.newObject = function() {
33812
+ return {};
33813
+ };
33814
+ dart.fn(js_util.newObject, VoidTodynamic$());
33815
+ js_util.hasProperty = function(o, name) {
33816
+ return name in o;
33817
+ };
33818
+ dart.fn(js_util.hasProperty, dynamicAnddynamicTodynamic$());
33819
+ js_util.getProperty = function(o, name) {
33820
+ return o[name];
33821
+ };
33822
+ dart.fn(js_util.getProperty, dynamicAnddynamicTodynamic$());
33823
+ js_util.setProperty = function(o, name, value) {
33824
+ return o[name] = value;
33825
+ };
33826
+ dart.fn(js_util.setProperty, dynamicAnddynamicAnddynamicTodynamic());
33827
+ js_util.callMethod = function(o, method, args) {
33828
+ return o[method].apply(o, args);
33829
+ };
33830
+ dart.fn(js_util.callMethod, dynamicAndStringAndListTodynamic());
33831
+ js_util.instanceof = function(o, type) {
33832
+ return o instanceof type;
33833
+ };
33834
+ dart.fn(js_util.instanceof, dynamicAndFunctionTodynamic());
33835
+ js_util.callConstructor = function(constr, arguments$) {
33836
+ if (arguments$ == null) {
33837
+ return new constr();
33838
+ }
33839
+ if (arguments$ instanceof Array) {
33840
+ let argumentCount = arguments$.length;
33841
+ switch (argumentCount) {
33842
+ case 0:
33843
+ {
33844
+ return new constr();
33845
+ }
33846
+ case 1:
33847
+ {
33848
+ let arg0 = arguments$[0];
33849
+ return new constr(arg0);
33850
+ }
33851
+ case 2:
33852
+ {
33853
+ let arg0 = arguments$[0];
33854
+ let arg1 = arguments$[1];
33855
+ return new constr(arg0, arg1);
33856
+ }
33857
+ case 3:
33858
+ {
33859
+ let arg0 = arguments$[0];
33860
+ let arg1 = arguments$[1];
33861
+ let arg2 = arguments$[2];
33862
+ return new constr(arg0, arg1, arg2);
33863
+ }
33864
+ case 4:
33865
+ {
33866
+ let arg0 = arguments$[0];
33867
+ let arg1 = arguments$[1];
33868
+ let arg2 = arguments$[2];
33869
+ let arg3 = arguments$[3];
33870
+ return new constr(arg0, arg1, arg2, arg3);
33871
+ }
33872
+ }
33873
+ }
33874
+ let args = [null];
33875
+ args[dartx.addAll](arguments$);
33876
+ let factoryFunction = constr.bind.apply(constr, args);
33877
+ String(factoryFunction);
33878
+ return new factoryFunction();
33879
+ };
33880
+ dart.fn(js_util.callConstructor, FunctionAndListTodynamic());
33776
33881
math.E = 2.718281828459045;
33777
33882
math.LN10 = 2.302585092994046;
33778
33883
math.LN2 = 0.6931471805599453;
@@ -84098,6 +84203,7 @@ dart_library.library('dart_sdk', null, /* Imports */[
84098
84203
exports.core = core;
84099
84204
exports.isolate = isolate;
84100
84205
exports.js = js;
84206
+ exports.js_util = js_util;
84101
84207
exports.math = math;
84102
84208
exports.mirrors = mirrors;
84103
84209
exports.typed_data = typed_data;
0 commit comments