82f2b76e25
We now use webpack instead of SystemJS, effectively bundling modules into one file (plus commons chunks) for every entry point. This results in a much smaller extension size (almost half). Furthermore we use yarn/npm even for extension run-time dependencies. This relieves us from manually vendoring and building dependencies. It's also easier to understand for new developers familiar with node.
26 lines
735 B
JavaScript
26 lines
735 B
JavaScript
'use strict';
|
|
// 26.1.5 Reflect.enumerate(target)
|
|
var $export = require('./$.export')
|
|
, anObject = require('./$.an-object');
|
|
var Enumerate = function(iterated){
|
|
this._t = anObject(iterated); // target
|
|
this._i = 0; // next index
|
|
var keys = this._k = [] // keys
|
|
, key;
|
|
for(key in iterated)keys.push(key);
|
|
};
|
|
require('./$.iter-create')(Enumerate, 'Object', function(){
|
|
var that = this
|
|
, keys = that._k
|
|
, key;
|
|
do {
|
|
if(that._i >= keys.length)return {value: undefined, done: true};
|
|
} while(!((key = keys[that._i++]) in that._t));
|
|
return {value: key, done: false};
|
|
});
|
|
|
|
$export($export.S, 'Reflect', {
|
|
enumerate: function enumerate(target){
|
|
return new Enumerate(target);
|
|
}
|
|
}); |