ember-source 2.12.0.beta.3 → 2.12.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -6,7 +6,7 @@
6
6
  * Portions Copyright 2008-2011 Apple Inc. All rights reserved.
7
7
  * @license Licensed under MIT license
8
8
  * See https://raw.github.com/emberjs/ember.js/master/LICENSE
9
- * @version 2.12.0-beta.3
9
+ * @version 2.12.0
10
10
  */
11
11
 
12
12
  var enifed, requireModule, Ember;
@@ -6,7 +6,7 @@
6
6
  * Portions Copyright 2008-2011 Apple Inc. All rights reserved.
7
7
  * @license Licensed under MIT license
8
8
  * See https://raw.github.com/emberjs/ember.js/master/LICENSE
9
- * @version 2.12.0-beta.3
9
+ * @version 2.12.0
10
10
  */
11
11
 
12
12
  var enifed, requireModule, Ember;
@@ -911,11 +911,11 @@ enifed('container/tests/container_test', ['exports', 'ember-utils', 'ember-envir
911
911
  var Component = _internalTestHelpers.factory();
912
912
  registry.register('component:foo-bar', Component);
913
913
 
914
- var factoryCreator = container[_container.FACTORY_FOR]('component:foo-bar');
914
+ var factoryManager = container[_container.FACTORY_FOR]('component:foo-bar');
915
915
  if (false) {
916
- assert.deepEqual(factoryCreator.class, Component, 'No double extend');
916
+ assert.deepEqual(factoryManager.class, Component, 'No double extend');
917
917
  } else {
918
- assert.deepEqual(factoryCreator.class, lookupFactory('component:foo-bar', container), 'Double extended class');
918
+ assert.deepEqual(factoryManager.class, lookupFactory('component:foo-bar', container), 'Double extended class');
919
919
  }
920
920
  });
921
921
 
@@ -928,16 +928,32 @@ enifed('container/tests/container_test', ['exports', 'ember-utils', 'ember-envir
928
928
  }, /Invalid Fullname, expected: 'type:name' got: chad-bar/);
929
929
  });
930
930
 
931
- QUnit.test('#factoryFor returns a factory creator', function (assert) {
931
+ QUnit.test('#factoryFor returns a factory manager', function (assert) {
932
932
  var registry = new _containerIndex.Registry();
933
933
  var container = registry.container();
934
934
 
935
935
  var Component = _internalTestHelpers.factory();
936
936
  registry.register('component:foo-bar', Component);
937
937
 
938
- var factoryCreator = container.factoryFor('component:foo-bar');
939
- assert.ok(factoryCreator.create);
940
- assert.ok(factoryCreator.class);
938
+ var factoryManager = container.factoryFor('component:foo-bar');
939
+ assert.ok(factoryManager.create);
940
+ assert.ok(factoryManager.class);
941
+ });
942
+
943
+ QUnit.test('#factoryFor returns a cached factory manager for the same type', function (assert) {
944
+ var registry = new _containerIndex.Registry();
945
+ var container = registry.container();
946
+
947
+ var Component = _internalTestHelpers.factory();
948
+ registry.register('component:foo-bar', Component);
949
+ registry.register('component:baz-bar', Component);
950
+
951
+ var factoryManager1 = container.factoryFor('component:foo-bar');
952
+ var factoryManager2 = container.factoryFor('component:foo-bar');
953
+ var factoryManager3 = container.factoryFor('component:baz-bar');
954
+
955
+ assert.equal(factoryManager1, factoryManager2, 'cache hit');
956
+ assert.notEqual(factoryManager1, factoryManager3, 'cache miss');
941
957
  });
942
958
 
943
959
  QUnit.test('#factoryFor class returns the factory function', function (assert) {
@@ -947,8 +963,8 @@ enifed('container/tests/container_test', ['exports', 'ember-utils', 'ember-envir
947
963
  var Component = _internalTestHelpers.factory();
948
964
  registry.register('component:foo-bar', Component);
949
965
 
950
- var factoryCreator = container.factoryFor('component:foo-bar');
951
- assert.deepEqual(factoryCreator.class, Component, 'No double extend');
966
+ var factoryManager = container.factoryFor('component:foo-bar');
967
+ assert.deepEqual(factoryManager.class, Component, 'No double extend');
952
968
  });
953
969
 
954
970
  QUnit.test('#factoryFor instance have a common parent', function (assert) {
@@ -958,10 +974,10 @@ enifed('container/tests/container_test', ['exports', 'ember-utils', 'ember-envir
958
974
  var Component = _internalTestHelpers.factory();
959
975
  registry.register('component:foo-bar', Component);
960
976
 
961
- var factoryCreator1 = container.factoryFor('component:foo-bar');
962
- var factoryCreator2 = container.factoryFor('component:foo-bar');
963
- var instance1 = factoryCreator1.create({ foo: 'foo' });
964
- var instance2 = factoryCreator2.create({ bar: 'bar' });
977
+ var factoryManager1 = container.factoryFor('component:foo-bar');
978
+ var factoryManager2 = container.factoryFor('component:foo-bar');
979
+ var instance1 = factoryManager1.create({ foo: 'foo' });
980
+ var instance2 = factoryManager2.create({ bar: 'bar' });
965
981
 
966
982
  assert.deepEqual(instance1.constructor, instance2.constructor);
967
983
  });
@@ -16721,7 +16737,7 @@ enifed('ember-glimmer/tests/integration/components/destroy-test', ['exports', 'e
16721
16737
 
16722
16738
  this.assertText('');
16723
16739
 
16724
- assert.equal(this.env.destroyedComponents.length, 0, 'enviroment.destroyedComponents should be empty');
16740
+ assert.equal(this.env.destroyedComponents.length, 0, 'environment.destroyedComponents should be empty');
16725
16741
  };
16726
16742
 
16727
16743
  return _class;
@@ -35802,7 +35818,7 @@ enifed('ember-glimmer/tests/integration/syntax/with-test.lint-test', ['exports']
35802
35818
  assert.ok(true, 'ember-glimmer/tests/integration/syntax/with-test.js should pass ESLint\n\n');
35803
35819
  });
35804
35820
  });
35805
- enifed('ember-glimmer/tests/unit/layout-cache-test', ['exports', 'ember-utils', 'ember-glimmer/tests/utils/test-case', 'glimmer-runtime'], function (exports, _emberUtils, _emberGlimmerTestsUtilsTestCase, _glimmerRuntime) {
35821
+ enifed('ember-glimmer/tests/unit/layout-cache-test', ['exports', 'ember-glimmer/tests/utils/test-case', 'glimmer-runtime', 'ember-utils'], function (exports, _emberGlimmerTestsUtilsTestCase, _glimmerRuntime, _emberUtils) {
35806
35822
  'use strict';
35807
35823
 
35808
35824
  var Counter = (function () {
@@ -35823,7 +35839,7 @@ enifed('ember-glimmer/tests/unit/layout-cache-test', ['exports', 'ember-utils',
35823
35839
 
35824
35840
  Counter.prototype.reset = function reset() {
35825
35841
  this.total = 0;
35826
- this.counts = new _emberUtils.EmptyObject();
35842
+ this.counts = Object.create(null);
35827
35843
  };
35828
35844
 
35829
35845
  return Counter;
@@ -67030,15 +67046,6 @@ enifed('ember-utils/dictionary.lint-test', ['exports'], function (exports) {
67030
67046
  assert.ok(true, 'ember-utils/dictionary.js should pass ESLint\n\n');
67031
67047
  });
67032
67048
  });
67033
- enifed('ember-utils/empty-object.lint-test', ['exports'], function (exports) {
67034
- 'use strict';
67035
-
67036
- QUnit.module('ESLint | ember-utils/empty-object.js');
67037
- QUnit.test('should pass ESLint', function (assert) {
67038
- assert.expect(1);
67039
- assert.ok(true, 'ember-utils/empty-object.js should pass ESLint\n\n');
67040
- });
67041
- });
67042
67049
  enifed('ember-utils/guid.lint-test', ['exports'], function (exports) {
67043
67050
  'use strict';
67044
67051
 
@@ -6,7 +6,7 @@
6
6
  * Portions Copyright 2008-2011 Apple Inc. All rights reserved.
7
7
  * @license Licensed under MIT license
8
8
  * See https://raw.github.com/emberjs/ember.js/master/LICENSE
9
- * @version 2.12.0-beta.3
9
+ * @version 2.12.0
10
10
  */
11
11
 
12
12
  var enifed, requireModule, Ember;
@@ -900,11 +900,11 @@ enifed('container/tests/container_test', ['exports', 'ember-utils', 'ember-envir
900
900
  var Component = _internalTestHelpers.factory();
901
901
  registry.register('component:foo-bar', Component);
902
902
 
903
- var factoryCreator = container[_container.FACTORY_FOR]('component:foo-bar');
903
+ var factoryManager = container[_container.FACTORY_FOR]('component:foo-bar');
904
904
  if (false) {
905
- assert.deepEqual(factoryCreator.class, Component, 'No double extend');
905
+ assert.deepEqual(factoryManager.class, Component, 'No double extend');
906
906
  } else {
907
- assert.deepEqual(factoryCreator.class, lookupFactory('component:foo-bar', container), 'Double extended class');
907
+ assert.deepEqual(factoryManager.class, lookupFactory('component:foo-bar', container), 'Double extended class');
908
908
  }
909
909
  });
910
910
 
@@ -917,16 +917,32 @@ enifed('container/tests/container_test', ['exports', 'ember-utils', 'ember-envir
917
917
  }, /Invalid Fullname, expected: 'type:name' got: chad-bar/);
918
918
  });
919
919
 
920
- QUnit.test('#factoryFor returns a factory creator', function (assert) {
920
+ QUnit.test('#factoryFor returns a factory manager', function (assert) {
921
921
  var registry = new _containerIndex.Registry();
922
922
  var container = registry.container();
923
923
 
924
924
  var Component = _internalTestHelpers.factory();
925
925
  registry.register('component:foo-bar', Component);
926
926
 
927
- var factoryCreator = container.factoryFor('component:foo-bar');
928
- assert.ok(factoryCreator.create);
929
- assert.ok(factoryCreator.class);
927
+ var factoryManager = container.factoryFor('component:foo-bar');
928
+ assert.ok(factoryManager.create);
929
+ assert.ok(factoryManager.class);
930
+ });
931
+
932
+ QUnit.test('#factoryFor returns a cached factory manager for the same type', function (assert) {
933
+ var registry = new _containerIndex.Registry();
934
+ var container = registry.container();
935
+
936
+ var Component = _internalTestHelpers.factory();
937
+ registry.register('component:foo-bar', Component);
938
+ registry.register('component:baz-bar', Component);
939
+
940
+ var factoryManager1 = container.factoryFor('component:foo-bar');
941
+ var factoryManager2 = container.factoryFor('component:foo-bar');
942
+ var factoryManager3 = container.factoryFor('component:baz-bar');
943
+
944
+ assert.equal(factoryManager1, factoryManager2, 'cache hit');
945
+ assert.notEqual(factoryManager1, factoryManager3, 'cache miss');
930
946
  });
931
947
 
932
948
  QUnit.test('#factoryFor class returns the factory function', function (assert) {
@@ -936,8 +952,8 @@ enifed('container/tests/container_test', ['exports', 'ember-utils', 'ember-envir
936
952
  var Component = _internalTestHelpers.factory();
937
953
  registry.register('component:foo-bar', Component);
938
954
 
939
- var factoryCreator = container.factoryFor('component:foo-bar');
940
- assert.deepEqual(factoryCreator.class, Component, 'No double extend');
955
+ var factoryManager = container.factoryFor('component:foo-bar');
956
+ assert.deepEqual(factoryManager.class, Component, 'No double extend');
941
957
  });
942
958
 
943
959
  QUnit.test('#factoryFor instance have a common parent', function (assert) {
@@ -947,10 +963,10 @@ enifed('container/tests/container_test', ['exports', 'ember-utils', 'ember-envir
947
963
  var Component = _internalTestHelpers.factory();
948
964
  registry.register('component:foo-bar', Component);
949
965
 
950
- var factoryCreator1 = container.factoryFor('component:foo-bar');
951
- var factoryCreator2 = container.factoryFor('component:foo-bar');
952
- var instance1 = factoryCreator1.create({ foo: 'foo' });
953
- var instance2 = factoryCreator2.create({ bar: 'bar' });
966
+ var factoryManager1 = container.factoryFor('component:foo-bar');
967
+ var factoryManager2 = container.factoryFor('component:foo-bar');
968
+ var instance1 = factoryManager1.create({ foo: 'foo' });
969
+ var instance2 = factoryManager2.create({ bar: 'bar' });
954
970
 
955
971
  assert.deepEqual(instance1.constructor, instance2.constructor);
956
972
  });
@@ -16597,7 +16613,7 @@ enifed('ember-glimmer/tests/integration/components/destroy-test', ['exports', 'e
16597
16613
 
16598
16614
  this.assertText('');
16599
16615
 
16600
- assert.equal(this.env.destroyedComponents.length, 0, 'enviroment.destroyedComponents should be empty');
16616
+ assert.equal(this.env.destroyedComponents.length, 0, 'environment.destroyedComponents should be empty');
16601
16617
  };
16602
16618
 
16603
16619
  return _class;
@@ -35437,7 +35453,7 @@ enifed('ember-glimmer/tests/integration/syntax/with-test.lint-test', ['exports']
35437
35453
  assert.ok(true, 'ember-glimmer/tests/integration/syntax/with-test.js should pass ESLint\n\n');
35438
35454
  });
35439
35455
  });
35440
- enifed('ember-glimmer/tests/unit/layout-cache-test', ['exports', 'ember-utils', 'ember-glimmer/tests/utils/test-case', 'glimmer-runtime'], function (exports, _emberUtils, _emberGlimmerTestsUtilsTestCase, _glimmerRuntime) {
35456
+ enifed('ember-glimmer/tests/unit/layout-cache-test', ['exports', 'ember-glimmer/tests/utils/test-case', 'glimmer-runtime', 'ember-utils'], function (exports, _emberGlimmerTestsUtilsTestCase, _glimmerRuntime, _emberUtils) {
35441
35457
  'use strict';
35442
35458
 
35443
35459
  var Counter = (function () {
@@ -35456,7 +35472,7 @@ enifed('ember-glimmer/tests/unit/layout-cache-test', ['exports', 'ember-utils',
35456
35472
 
35457
35473
  Counter.prototype.reset = function reset() {
35458
35474
  this.total = 0;
35459
- this.counts = new _emberUtils.EmptyObject();
35475
+ this.counts = Object.create(null);
35460
35476
  };
35461
35477
 
35462
35478
  return Counter;
@@ -66565,15 +66581,6 @@ enifed('ember-utils/dictionary.lint-test', ['exports'], function (exports) {
66565
66581
  assert.ok(true, 'ember-utils/dictionary.js should pass ESLint\n\n');
66566
66582
  });
66567
66583
  });
66568
- enifed('ember-utils/empty-object.lint-test', ['exports'], function (exports) {
66569
- 'use strict';
66570
-
66571
- QUnit.module('ESLint | ember-utils/empty-object.js');
66572
- QUnit.test('should pass ESLint', function (assert) {
66573
- assert.expect(1);
66574
- assert.ok(true, 'ember-utils/empty-object.js should pass ESLint\n\n');
66575
- });
66576
- });
66577
66584
  enifed('ember-utils/guid.lint-test', ['exports'], function (exports) {
66578
66585
  'use strict';
66579
66586
 
@@ -6,7 +6,7 @@
6
6
  * Portions Copyright 2008-2011 Apple Inc. All rights reserved.
7
7
  * @license Licensed under MIT license
8
8
  * See https://raw.github.com/emberjs/ember.js/master/LICENSE
9
- * @version 2.12.0-beta.3
9
+ * @version 2.12.0
10
10
  */
11
11
 
12
12
  var enifed, requireModule, Ember;
@@ -1232,6 +1232,7 @@ enifed('container/container', ['exports', 'ember-utils', 'ember-environment', 'e
1232
1232
  this.owner = options && options.owner ? options.owner : null;
1233
1233
  this.cache = _emberUtils.dictionary(options && options.cache ? options.cache : null);
1234
1234
  this.factoryCache = _emberUtils.dictionary(options && options.factoryCache ? options.factoryCache : null);
1235
+ this.factoryManagerCache = _emberUtils.dictionary(options && options.factoryManagerCache ? options.factoryManagerCache : null);
1235
1236
  this.validationCache = _emberUtils.dictionary(options && options.validationCache ? options.validationCache : null);
1236
1237
  this._fakeContainerToInject = buildFakeContainerWithDeprecations(this);
1237
1238
  this[CONTAINER_OVERRIDE] = undefined;
@@ -1433,6 +1434,7 @@ enifed('container/container', ['exports', 'ember-utils', 'ember-environment', 'e
1433
1434
  var options = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1];
1434
1435
 
1435
1436
  var normalizedName = this.registry.normalize(fullName);
1437
+
1436
1438
  _emberMetal.assert('fullName must be a proper full name', this.registry.validateFullName(normalizedName));
1437
1439
 
1438
1440
  if (options.source) {
@@ -1443,6 +1445,12 @@ enifed('container/container', ['exports', 'ember-utils', 'ember-environment', 'e
1443
1445
  }
1444
1446
  }
1445
1447
 
1448
+ var cached = this.factoryManagerCache[normalizedName];
1449
+
1450
+ if (cached) {
1451
+ return cached;
1452
+ }
1453
+
1446
1454
  var factory = this.registry.resolve(normalizedName);
1447
1455
 
1448
1456
  if (factory === undefined) {
@@ -1455,6 +1463,7 @@ enifed('container/container', ['exports', 'ember-utils', 'ember-environment', 'e
1455
1463
  manager = wrapManagerInDeprecationProxy(manager);
1456
1464
  });
1457
1465
 
1466
+ this.factoryManagerCache[normalizedName] = manager;
1458
1467
  return manager;
1459
1468
  };
1460
1469
  }
@@ -1709,7 +1718,7 @@ enifed('container/container', ['exports', 'ember-utils', 'ember-environment', 'e
1709
1718
  obj = factory.create(_emberUtils.assign({}, injections, props));
1710
1719
 
1711
1720
  // TODO - remove when Ember reaches v3.0.0
1712
- if (!Object.isFrozen(obj) && 'container' in obj) {
1721
+ if (!Object.isFrozen(obj)) {
1713
1722
  injectDeprecatedContainer(obj, container);
1714
1723
  }
1715
1724
  }
@@ -1731,6 +1740,9 @@ enifed('container/container', ['exports', 'ember-utils', 'ember-environment', 'e
1731
1740
 
1732
1741
  // TODO - remove when Ember reaches v3.0.0
1733
1742
  function injectDeprecatedContainer(object, container) {
1743
+ if ('container' in object) {
1744
+ return;
1745
+ }
1734
1746
  Object.defineProperty(object, 'container', {
1735
1747
  configurable: true,
1736
1748
  enumerable: false,
@@ -1838,6 +1850,7 @@ enifed('container/container', ['exports', 'ember-utils', 'ember-environment', 'e
1838
1850
  this.class = factory;
1839
1851
  this.fullName = fullName;
1840
1852
  this.normalizedName = normalizedName;
1853
+ this.madeToString = undefined;
1841
1854
  }
1842
1855
 
1843
1856
  FactoryManager.prototype.create = function create() {
@@ -1848,7 +1861,7 @@ enifed('container/container', ['exports', 'ember-utils', 'ember-environment', 'e
1848
1861
  var injections = injectionsFor(this.container, this.normalizedName);
1849
1862
  var props = _emberUtils.assign({}, injections, options);
1850
1863
 
1851
- props[_emberUtils.NAME_KEY] = this.container.registry.makeToString(this.class, this.fullName);
1864
+ props[_emberUtils.NAME_KEY] = this.madeToString || (this.madeToString = this.container.registry.makeToString(this.class, this.fullName));
1852
1865
 
1853
1866
  _emberMetal.runInDebug(function () {
1854
1867
  var lazyInjections = undefined;
@@ -1868,8 +1881,9 @@ enifed('container/container', ['exports', 'ember-utils', 'ember-environment', 'e
1868
1881
  throw new Error('Failed to create an instance of \'' + this.normalizedName + '\'. Most likely an improperly defined class or' + ' an invalid module export.');
1869
1882
  }
1870
1883
 
1871
- if (this.class.prototype) {
1872
- injectDeprecatedContainer(this.class.prototype, this.container);
1884
+ var prototype = this.class.prototype;
1885
+ if (prototype) {
1886
+ injectDeprecatedContainer(prototype, this.container);
1873
1887
  }
1874
1888
 
1875
1889
  return this.class.create(props);
@@ -1964,7 +1978,7 @@ enifed('container/registry', ['exports', 'ember-utils', 'ember-metal', 'containe
1964
1978
  this._factoryTypeInjections = _emberUtils.dictionary(null);
1965
1979
  this._factoryInjections = _emberUtils.dictionary(null);
1966
1980
 
1967
- this._localLookupCache = new _emberUtils.EmptyObject();
1981
+ this._localLookupCache = Object.create(null);
1968
1982
  this._normalizeCache = _emberUtils.dictionary(null);
1969
1983
  this._resolveCache = _emberUtils.dictionary(null);
1970
1984
  this._failCache = _emberUtils.dictionary(null);
@@ -2117,7 +2131,7 @@ enifed('container/registry', ['exports', 'ember-utils', 'ember-metal', 'containe
2117
2131
 
2118
2132
  var normalizedName = this.normalize(fullName);
2119
2133
 
2120
- this._localLookupCache = new _emberUtils.EmptyObject();
2134
+ this._localLookupCache = Object.create(null);
2121
2135
 
2122
2136
  delete this.registrations[normalizedName];
2123
2137
  delete this._resolveCache[normalizedName];
@@ -2659,7 +2673,7 @@ enifed('container/registry', ['exports', 'ember-utils', 'ember-metal', 'containe
2659
2673
  var normalizedNameCache = cache[normalizedName];
2660
2674
 
2661
2675
  if (!normalizedNameCache) {
2662
- normalizedNameCache = cache[normalizedName] = new _emberUtils.EmptyObject();
2676
+ normalizedNameCache = cache[normalizedName] = Object.create(null);
2663
2677
  }
2664
2678
 
2665
2679
  var cached = normalizedNameCache[normalizedSource];
@@ -4847,8 +4861,8 @@ enifed('ember-application/system/engine', ['exports', 'ember-utils', 'ember-runt
4847
4861
  });
4848
4862
 
4849
4863
  Engine.reopenClass({
4850
- initializers: new _emberUtils.EmptyObject(),
4851
- instanceInitializers: new _emberUtils.EmptyObject(),
4864
+ initializers: Object.create(null),
4865
+ instanceInitializers: Object.create(null),
4852
4866
 
4853
4867
  /**
4854
4868
  The goal of initializers should be to register dependencies and injections.
@@ -6491,7 +6505,7 @@ enifed('ember-extension-support/container_debug_adapter', ['exports', 'ember-met
6491
6505
  /**
6492
6506
  The `ContainerDebugAdapter` helps the container and resolver interface
6493
6507
  with tools that debug Ember such as the
6494
- [Ember Extension](https://github.com/tildeio/ember-extension)
6508
+ [Ember Inspector](https://github.com/emberjs/ember-inspector)
6495
6509
  for Chrome and Firefox.
6496
6510
 
6497
6511
  This class can be extended by a custom resolver implementer
@@ -9023,7 +9037,7 @@ enifed('ember-glimmer/components/text_area', ['exports', 'ember-glimmer/componen
9023
9037
  cols: null
9024
9038
  });
9025
9039
  });
9026
- enifed('ember-glimmer/components/text_field', ['exports', 'ember-utils', 'ember-metal', 'ember-environment', 'ember-glimmer/component', 'ember-glimmer/templates/empty', 'ember-views'], function (exports, _emberUtils, _emberMetal, _emberEnvironment, _emberGlimmerComponent, _emberGlimmerTemplatesEmpty, _emberViews) {
9040
+ enifed('ember-glimmer/components/text_field', ['exports', 'ember-metal', 'ember-environment', 'ember-glimmer/component', 'ember-glimmer/templates/empty', 'ember-views'], function (exports, _emberMetal, _emberEnvironment, _emberGlimmerComponent, _emberGlimmerTemplatesEmpty, _emberViews) {
9027
9041
  /**
9028
9042
  @module ember
9029
9043
  @submodule ember-views
@@ -9031,7 +9045,7 @@ enifed('ember-glimmer/components/text_field', ['exports', 'ember-utils', 'ember-
9031
9045
  'use strict';
9032
9046
 
9033
9047
  var inputTypeTestElement = undefined;
9034
- var inputTypes = new _emberUtils.EmptyObject();
9048
+ var inputTypes = Object.create(null);
9035
9049
  function canSetTypeOfInput(type) {
9036
9050
  if (type in inputTypes) {
9037
9051
  return inputTypes[type];
@@ -14750,7 +14764,7 @@ enifed('ember-glimmer/utils/iterable', ['exports', 'ember-utils', 'ember-metal',
14750
14764
  this.length = array.length;
14751
14765
  this.keyFor = keyFor;
14752
14766
  this.position = 0;
14753
- this.seen = new _emberUtils.EmptyObject();
14767
+ this.seen = Object.create(null);
14754
14768
  }
14755
14769
 
14756
14770
  ArrayIterator.prototype.isEmpty = function isEmpty() {
@@ -14788,7 +14802,7 @@ enifed('ember-glimmer/utils/iterable', ['exports', 'ember-utils', 'ember-metal',
14788
14802
  this.length = _emberMetal.get(array, 'length');
14789
14803
  this.keyFor = keyFor;
14790
14804
  this.position = 0;
14791
- this.seen = new _emberUtils.EmptyObject();
14805
+ this.seen = Object.create(null);
14792
14806
  }
14793
14807
 
14794
14808
  EmberArrayIterator.prototype.isEmpty = function isEmpty() {
@@ -14826,7 +14840,7 @@ enifed('ember-glimmer/utils/iterable', ['exports', 'ember-utils', 'ember-metal',
14826
14840
  this.values = values;
14827
14841
  this.keyFor = keyFor;
14828
14842
  this.position = 0;
14829
- this.seen = new _emberUtils.EmptyObject();
14843
+ this.seen = Object.create(null);
14830
14844
  }
14831
14845
 
14832
14846
  ObjectKeysIterator.prototype.isEmpty = function isEmpty() {
@@ -15083,8 +15097,8 @@ enifed('ember-glimmer/utils/process-args', ['exports', 'ember-utils', 'glimmer-r
15083
15097
 
15084
15098
  var keys = namedArgs.keys;
15085
15099
  var attrs = namedArgs.value();
15086
- var props = new _emberUtils.EmptyObject();
15087
- var args = new _emberUtils.EmptyObject();
15100
+ var props = Object.create(null);
15101
+ var args = Object.create(null);
15088
15102
 
15089
15103
  props[_emberGlimmerComponent.ARGS] = args;
15090
15104
 
@@ -15215,7 +15229,7 @@ enifed('ember-glimmer/utils/references', ['exports', 'ember-utils', 'ember-metal
15215
15229
  babelHelpers.classCallCheck(this, RootReference);
15216
15230
 
15217
15231
  _ConstReference.call(this, value);
15218
- this.children = new _emberUtils.EmptyObject();
15232
+ this.children = Object.create(null);
15219
15233
  }
15220
15234
 
15221
15235
  RootReference.prototype.get = function get(propertyKey) {
@@ -15887,7 +15901,7 @@ enifed('ember-glimmer/views/outlet', ['exports', 'ember-utils', 'glimmer-referen
15887
15901
  return null;
15888
15902
  }
15889
15903
 
15890
- var state = new _emberUtils.EmptyObject();
15904
+ var state = Object.create(null);
15891
15905
  state[matched.render.outlet] = matched;
15892
15906
  matched.wasUsed = true;
15893
15907
  return { outlets: state };
@@ -16590,7 +16604,7 @@ enifed('ember-metal/binding', ['exports', 'ember-utils', 'ember-console', 'ember
16590
16604
 
16591
16605
  exports.Binding = Binding;
16592
16606
  });
16593
- enifed('ember-metal/cache', ['exports', 'ember-utils', 'ember-metal/meta'], function (exports, _emberUtils, _emberMetalMeta) {
16607
+ enifed('ember-metal/cache', ['exports', 'ember-metal/meta'], function (exports, _emberMetalMeta) {
16594
16608
  'use strict';
16595
16609
 
16596
16610
  var Cache = (function () {
@@ -16657,7 +16671,7 @@ enifed('ember-metal/cache', ['exports', 'ember-utils', 'ember-metal/meta'], func
16657
16671
  function DefaultStore() {
16658
16672
  babelHelpers.classCallCheck(this, DefaultStore);
16659
16673
 
16660
- this.data = new _emberUtils.EmptyObject();
16674
+ this.data = Object.create(null);
16661
16675
  }
16662
16676
 
16663
16677
  DefaultStore.prototype.get = function get(key) {
@@ -16669,13 +16683,13 @@ enifed('ember-metal/cache', ['exports', 'ember-utils', 'ember-metal/meta'], func
16669
16683
  };
16670
16684
 
16671
16685
  DefaultStore.prototype.clear = function clear() {
16672
- this.data = new _emberUtils.EmptyObject();
16686
+ this.data = Object.create(null);
16673
16687
  };
16674
16688
 
16675
16689
  return DefaultStore;
16676
16690
  })();
16677
16691
  });
16678
- enifed('ember-metal/chains', ['exports', 'ember-utils', 'ember-metal/property_get', 'ember-metal/meta', 'ember-metal/watch_key', 'ember-metal/computed', 'ember-metal/watch_path'], function (exports, _emberUtils, _emberMetalProperty_get, _emberMetalMeta, _emberMetalWatch_key, _emberMetalComputed, _emberMetalWatch_path) {
16692
+ enifed('ember-metal/chains', ['exports', 'ember-metal/property_get', 'ember-metal/meta', 'ember-metal/watch_key', 'ember-metal/computed', 'ember-metal/watch_path'], function (exports, _emberMetalProperty_get, _emberMetalMeta, _emberMetalWatch_key, _emberMetalComputed, _emberMetalWatch_path) {
16679
16693
  'use strict';
16680
16694
 
16681
16695
  exports.finishChains = finishChains;
@@ -16701,7 +16715,7 @@ enifed('ember-metal/chains', ['exports', 'ember-utils', 'ember-metal/property_ge
16701
16715
  // chain nodes that reference a key in this obj by key
16702
16716
  // we only create ChainWatchers when we are going to add them
16703
16717
  // so create this upfront
16704
- this.chains = new _emberUtils.EmptyObject();
16718
+ this.chains = Object.create(null);
16705
16719
  }
16706
16720
 
16707
16721
  ChainWatchers.prototype.add = function add(key, node) {
@@ -16918,7 +16932,7 @@ enifed('ember-metal/chains', ['exports', 'ember-utils', 'ember-metal/property_ge
16918
16932
  var chains = this._chains;
16919
16933
  var node = undefined;
16920
16934
  if (chains === undefined) {
16921
- chains = this._chains = new _emberUtils.EmptyObject();
16935
+ chains = this._chains = Object.create(null);
16922
16936
  } else {
16923
16937
  node = chains[key];
16924
16938
  }
@@ -19281,10 +19295,10 @@ enifed('ember-metal/map', ['exports', 'ember-utils'], function (exports, _emberU
19281
19295
  }
19282
19296
 
19283
19297
  function copyNull(obj) {
19284
- var output = new _emberUtils.EmptyObject();
19298
+ var output = Object.create(null);
19285
19299
 
19286
19300
  for (var prop in obj) {
19287
- // hasOwnPropery is not needed because obj is new EmptyObject();
19301
+ // hasOwnPropery is not needed because obj is Object.create(null);
19288
19302
  output[prop] = obj[prop];
19289
19303
  }
19290
19304
 
@@ -19340,7 +19354,7 @@ enifed('ember-metal/map', ['exports', 'ember-utils'], function (exports, _emberU
19340
19354
  @private
19341
19355
  */
19342
19356
  clear: function () {
19343
- this.presenceSet = new _emberUtils.EmptyObject();
19357
+ this.presenceSet = Object.create(null);
19344
19358
  this.list = [];
19345
19359
  this.size = 0;
19346
19360
  },
@@ -19496,7 +19510,7 @@ enifed('ember-metal/map', ['exports', 'ember-utils'], function (exports, _emberU
19496
19510
  if (this instanceof Map) {
19497
19511
  this._keys = OrderedSet.create();
19498
19512
  this._keys._silenceRemoveDeprecation = true;
19499
- this._values = new _emberUtils.EmptyObject();
19513
+ this._values = Object.create(null);
19500
19514
  this.size = 0;
19501
19515
  } else {
19502
19516
  missingNew('Map');
@@ -19652,7 +19666,7 @@ enifed('ember-metal/map', ['exports', 'ember-utils'], function (exports, _emberU
19652
19666
  */
19653
19667
  clear: function () {
19654
19668
  this._keys.clear();
19655
- this._values = new _emberUtils.EmptyObject();
19669
+ this._values = Object.create(null);
19656
19670
  this.size = 0;
19657
19671
  },
19658
19672
 
@@ -19984,14 +19998,15 @@ enifed('ember-metal/meta', ['exports', 'ember-utils', 'ember-metal/features', 'e
19984
19998
  };
19985
19999
 
19986
20000
  Meta.prototype._getOrCreateOwnMap = function _getOrCreateOwnMap(key) {
19987
- return this[key] || (this[key] = new _emberUtils.EmptyObject());
20001
+ return this[key] || (this[key] = Object.create(null));
19988
20002
  };
19989
20003
 
19990
20004
  Meta.prototype._getInherited = function _getInherited(key) {
19991
20005
  var pointer = this;
19992
20006
  while (pointer !== undefined) {
19993
- if (pointer[key]) {
19994
- return pointer[key];
20007
+ var map = pointer[key];
20008
+ if (map) {
20009
+ return map;
19995
20010
  }
19996
20011
  pointer = pointer.parent;
19997
20012
  }
@@ -20020,7 +20035,7 @@ enifed('ember-metal/meta', ['exports', 'ember-utils', 'ember-metal/features', 'e
20020
20035
  var outerMap = this._getOrCreateOwnMap('_deps');
20021
20036
  var innerMap = outerMap[subkey];
20022
20037
  if (!innerMap) {
20023
- innerMap = outerMap[subkey] = new _emberUtils.EmptyObject();
20038
+ innerMap = outerMap[subkey] = Object.create(null);
20024
20039
  }
20025
20040
  innerMap[itemkey] = value;
20026
20041
  };
@@ -20032,8 +20047,9 @@ enifed('ember-metal/meta', ['exports', 'ember-utils', 'ember-metal/features', 'e
20032
20047
  if (map) {
20033
20048
  var value = map[subkey];
20034
20049
  if (value) {
20035
- if (value[itemkey] !== undefined) {
20036
- return value[itemkey];
20050
+ var itemvalue = value[itemkey];
20051
+ if (itemvalue !== undefined) {
20052
+ return itemvalue;
20037
20053
  }
20038
20054
  }
20039
20055
  }
@@ -20058,16 +20074,18 @@ enifed('ember-metal/meta', ['exports', 'ember-utils', 'ember-metal/features', 'e
20058
20074
 
20059
20075
  Meta.prototype._forEachIn = function _forEachIn(key, subkey, fn) {
20060
20076
  var pointer = this;
20061
- var seen = new _emberUtils.EmptyObject();
20062
- var calls = [];
20077
+ var seen = undefined;
20078
+ var calls = undefined;
20063
20079
  while (pointer !== undefined) {
20064
20080
  var map = pointer[key];
20065
20081
  if (map) {
20066
20082
  var innerMap = map[subkey];
20067
20083
  if (innerMap) {
20068
20084
  for (var innerKey in innerMap) {
20085
+ seen = seen || Object.create(null);
20069
20086
  if (!seen[innerKey]) {
20070
20087
  seen[innerKey] = true;
20088
+ calls = calls || [];
20071
20089
  calls.push([innerKey, innerMap[innerKey]]);
20072
20090
  }
20073
20091
  }
@@ -20075,12 +20093,14 @@ enifed('ember-metal/meta', ['exports', 'ember-utils', 'ember-metal/features', 'e
20075
20093
  }
20076
20094
  pointer = pointer.parent;
20077
20095
  }
20078
- for (var i = 0; i < calls.length; i++) {
20079
- var _calls$i = calls[i];
20080
- var innerKey = _calls$i[0];
20081
- var value = _calls$i[1];
20096
+ if (calls) {
20097
+ for (var i = 0; i < calls.length; i++) {
20098
+ var _calls$i = calls[i];
20099
+ var innerKey = _calls$i[0];
20100
+ var value = _calls$i[1];
20082
20101
 
20083
- fn(innerKey, value);
20102
+ fn(innerKey, value);
20103
+ }
20084
20104
  }
20085
20105
  };
20086
20106
 
@@ -20094,7 +20114,7 @@ enifed('ember-metal/meta', ['exports', 'ember-utils', 'ember-metal/features', 'e
20094
20114
  if (map) {
20095
20115
  var value = map[subkey];
20096
20116
  if (value !== undefined || subkey in map) {
20097
- return map[subkey];
20117
+ return value;
20098
20118
  }
20099
20119
  }
20100
20120
  pointer = pointer.parent;
@@ -20160,11 +20180,12 @@ enifed('ember-metal/meta', ['exports', 'ember-utils', 'ember-metal/features', 'e
20160
20180
 
20161
20181
  Meta.prototype['forEach' + capitalized] = function (fn) {
20162
20182
  var pointer = this;
20163
- var seen = new _emberUtils.EmptyObject();
20183
+ var seen = undefined;
20164
20184
  while (pointer !== undefined) {
20165
20185
  var map = pointer[key];
20166
20186
  if (map) {
20167
20187
  for (var _key in map) {
20188
+ seen = seen || Object.create(null);
20168
20189
  if (!seen[_key]) {
20169
20190
  seen[_key] = true;
20170
20191
  fn(_key, map[_key]);
@@ -20272,7 +20293,7 @@ enifed('ember-metal/meta', ['exports', 'ember-utils', 'ember-metal/features', 'e
20272
20293
  if (map) {
20273
20294
  var value = map[subkey];
20274
20295
  if (value !== undefined || subkey in map) {
20275
- return map[subkey];
20296
+ return value;
20276
20297
  }
20277
20298
  }
20278
20299
  pointer = pointer.parent;
@@ -25350,7 +25371,7 @@ enifed('ember-routing/services/routing', ['exports', 'ember-utils', 'ember-runti
25350
25371
  return req;
25351
25372
  }
25352
25373
  });
25353
- enifed('ember-routing/system/cache', ['exports', 'ember-utils', 'ember-runtime'], function (exports, _emberUtils, _emberRuntime) {
25374
+ enifed('ember-routing/system/cache', ['exports', 'ember-runtime'], function (exports, _emberRuntime) {
25354
25375
  'use strict';
25355
25376
 
25356
25377
  /**
@@ -25362,7 +25383,7 @@ enifed('ember-routing/system/cache', ['exports', 'ember-utils', 'ember-runtime']
25362
25383
  */
25363
25384
  exports.default = _emberRuntime.Object.extend({
25364
25385
  init: function () {
25365
- this.cache = new _emberUtils.EmptyObject();
25386
+ this.cache = Object.create(null);
25366
25387
  },
25367
25388
 
25368
25389
  has: function (bucketKey) {
@@ -25373,7 +25394,7 @@ enifed('ember-routing/system/cache', ['exports', 'ember-utils', 'ember-runtime']
25373
25394
  var bucket = this.cache[bucketKey];
25374
25395
 
25375
25396
  if (!bucket) {
25376
- bucket = this.cache[bucketKey] = new _emberUtils.EmptyObject();
25397
+ bucket = this.cache[bucketKey] = Object.create(null);
25377
25398
  }
25378
25399
 
25379
25400
  bucket[key] = value;
@@ -27224,7 +27245,7 @@ enifed('ember-routing/system/route', ['exports', 'ember-utils', 'ember-metal', '
27224
27245
  when implementing your `setupController` function, make sure to call
27225
27246
  `_super`:
27226
27247
  ```app/routes/photos.js
27227
- import Ember from 'ebmer';
27248
+ import Ember from 'ember';
27228
27249
  export default Ember.Route.extend({
27229
27250
  model() {
27230
27251
  return this.store.findAll('photo');
@@ -27965,15 +27986,15 @@ enifed('ember-routing/system/router', ['exports', 'ember-utils', 'ember-console'
27965
27986
  init: function () {
27966
27987
  this._super.apply(this, arguments);
27967
27988
 
27968
- this._qpCache = new _emberUtils.EmptyObject();
27989
+ this._qpCache = Object.create(null);
27969
27990
  this._resetQueuedQueryParameterChanges();
27970
27991
  this._handledErrors = _emberUtils.dictionary(null);
27971
- this._engineInstances = new _emberUtils.EmptyObject();
27972
- this._engineInfoByRoute = new _emberUtils.EmptyObject();
27992
+ this._engineInstances = Object.create(null);
27993
+ this._engineInfoByRoute = Object.create(null);
27973
27994
  },
27974
27995
 
27975
27996
  /*
27976
- Resets all pending query paramter changes.
27997
+ Resets all pending query parameter changes.
27977
27998
  Called after transitioning to a new route
27978
27999
  based on query parameter changes.
27979
28000
  */
@@ -28388,7 +28409,7 @@ enifed('ember-routing/system/router', ['exports', 'ember-utils', 'ember-console'
28388
28409
  _getHandlerFunction: function () {
28389
28410
  var _this2 = this;
28390
28411
 
28391
- var seen = new _emberUtils.EmptyObject();
28412
+ var seen = Object.create(null);
28392
28413
  var owner = _emberUtils.getOwner(this);
28393
28414
 
28394
28415
  return function (name) {
@@ -28841,7 +28862,7 @@ enifed('ember-routing/system/router', ['exports', 'ember-utils', 'ember-console'
28841
28862
  var engineInstances = this._engineInstances;
28842
28863
 
28843
28864
  if (!engineInstances[name]) {
28844
- engineInstances[name] = new _emberUtils.EmptyObject();
28865
+ engineInstances[name] = Object.create(null);
28845
28866
  }
28846
28867
 
28847
28868
  var engineInstance = engineInstances[name][instanceId];
@@ -29303,7 +29324,7 @@ enifed('ember-routing/system/router', ['exports', 'ember-utils', 'ember-console'
29303
29324
  var target = undefined;
29304
29325
  var myState = {
29305
29326
  render: renderOptions,
29306
- outlets: new _emberUtils.EmptyObject(),
29327
+ outlets: Object.create(null),
29307
29328
  wasUsed: false
29308
29329
  };
29309
29330
  if (renderOptions.into) {
@@ -29344,7 +29365,7 @@ enifed('ember-routing/system/router', ['exports', 'ember-utils', 'ember-console'
29344
29365
  render: {
29345
29366
  name: '__ember_orphans__'
29346
29367
  },
29347
- outlets: new _emberUtils.EmptyObject()
29368
+ outlets: Object.create(null)
29348
29369
  };
29349
29370
  }
29350
29371
  liveRoutes.outlets.__ember_orphans__.outlets[into] = myState;
@@ -30913,7 +30934,7 @@ enifed('ember-runtime/computed/reduce_computed_macros', ['exports', 'ember-utils
30913
30934
  function uniqBy(dependentKey, propertyKey) {
30914
30935
  return _emberMetal.computed(dependentKey + '.[]', function () {
30915
30936
  var uniq = _emberRuntimeSystemNative_array.A();
30916
- var seen = new _emberUtils.EmptyObject();
30937
+ var seen = Object.create(null);
30917
30938
  var list = _emberMetal.get(this, dependentKey);
30918
30939
  if (_emberRuntimeUtils.isArray(list)) {
30919
30940
  list.forEach(function (item) {
@@ -33022,6 +33043,36 @@ enifed('ember-runtime/mixins/container_proxy', ['exports', 'ember-metal', 'conta
33022
33043
  }, _containerProxyMixin);
33023
33044
 
33024
33045
  if (true) {
33046
+ /**
33047
+ Given a fullName return a factory manager.
33048
+ This method returns a manager which can be used for introspection of the
33049
+ factory's class or for the creation of factory instances with initial
33050
+ properties. The manager is an object with the following properties:
33051
+ * `class` - The registered or resolved class.
33052
+ * `create` - A function that will create an instance of the class with
33053
+ any dependencies injected.
33054
+ For example:
33055
+ ```javascript
33056
+ let owner = Ember.getOwner(otherInstance);
33057
+ // the owner is commonly the `applicationInstance`, and can be accessed via
33058
+ // an instance initializer.
33059
+ let factory = owner.factoryFor('service:bespoke');
33060
+ factory.class;
33061
+ // The registered or resolved class. For example when used with an Ember-CLI
33062
+ // app, this would be the default export from `app/services/bespoke.js`.
33063
+ let instance = factory.create({
33064
+ someProperty: 'an initial property value'
33065
+ });
33066
+ // Create an instance with any injections and the passed options as
33067
+ // initial properties.
33068
+ ```
33069
+ @public
33070
+ @class ContainerProxyMixin
33071
+ @method factoryFor
33072
+ @param {String} fullName
33073
+ @param {Object} options
33074
+ @return {FactoryManager}
33075
+ */
33025
33076
  containerProxyMixin.factoryFor = function ContainerProxyMixin_factoryFor(fullName) {
33026
33077
  var options = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1];
33027
33078
 
@@ -34189,7 +34240,7 @@ enifed('ember-runtime/mixins/enumerable', ['exports', 'ember-utils', 'ember-meta
34189
34240
 
34190
34241
  uniqBy: function (key) {
34191
34242
  var ret = emberA();
34192
- var seen = new _emberUtils.EmptyObject();
34243
+ var seen = Object.create(null);
34193
34244
 
34194
34245
  this.forEach(function (item) {
34195
34246
  var guid = _emberUtils.guidFor(_emberMetal.get(item, key));
@@ -37239,7 +37290,7 @@ babelHelpers.classCallCheck(this, Class);
37239
37290
  @param {Object} binding
37240
37291
  @private
37241
37292
  */
37242
- enifed('ember-runtime/system/each_proxy', ['exports', 'ember-utils', 'ember-metal', 'ember-runtime/mixins/array'], function (exports, _emberUtils, _emberMetal, _emberRuntimeMixinsArray) {
37293
+ enifed('ember-runtime/system/each_proxy', ['exports', 'ember-metal', 'ember-runtime/mixins/array'], function (exports, _emberMetal, _emberRuntimeMixinsArray) {
37243
37294
  'use strict';
37244
37295
 
37245
37296
  exports.default = EachProxy;
@@ -37308,7 +37359,7 @@ enifed('ember-runtime/system/each_proxy', ['exports', 'ember-utils', 'ember-meta
37308
37359
  beginObservingContentKey: function (keyName) {
37309
37360
  var keys = this._keys;
37310
37361
  if (!keys) {
37311
- keys = this._keys = new _emberUtils.EmptyObject();
37362
+ keys = this._keys = Object.create(null);
37312
37363
  }
37313
37364
 
37314
37365
  if (!keys[keyName]) {
@@ -40179,52 +40230,23 @@ enifed("ember-utils/assign", ["exports"], function (exports) {
40179
40230
  return original;
40180
40231
  }
40181
40232
  });
40182
- enifed('ember-utils/dictionary', ['exports', 'ember-utils/empty-object'], function (exports, _emberUtilsEmptyObject) {
40183
- 'use strict';
40184
-
40185
- exports.default = makeDictionary;
40186
-
40233
+ enifed('ember-utils/dictionary', ['exports'], function (exports) {
40187
40234
  // the delete is meant to hint at runtimes that this object should remain in
40188
40235
  // dictionary mode. This is clearly a runtime specific hack, but currently it
40189
40236
  // appears worthwhile in some usecases. Please note, these deletes do increase
40190
40237
  // the cost of creation dramatically over a plain Object.create. And as this
40191
40238
  // only makes sense for long-lived dictionaries that aren't instantiated often.
40239
+ 'use strict';
40240
+
40241
+ exports.default = makeDictionary;
40192
40242
 
40193
40243
  function makeDictionary(parent) {
40194
- var dict = undefined;
40195
- if (parent === null) {
40196
- dict = new _emberUtilsEmptyObject.default();
40197
- } else {
40198
- dict = Object.create(parent);
40199
- }
40244
+ var dict = Object.create(parent);
40200
40245
  dict['_dict'] = null;
40201
40246
  delete dict['_dict'];
40202
40247
  return dict;
40203
40248
  }
40204
40249
  });
40205
- enifed("ember-utils/empty-object", ["exports"], function (exports) {
40206
- // This exists because `Object.create(null)` is absurdly slow compared
40207
- // to `new EmptyObject()`. In either case, you want a null prototype
40208
- // when you're treating the object instances as arbitrary dictionaries
40209
- // and don't want your keys colliding with build-in methods on the
40210
- // default object prototype.
40211
-
40212
- "use strict";
40213
-
40214
- var proto = Object.create(null, {
40215
- // without this, we will always still end up with (new
40216
- // EmptyObject()).constructor === Object
40217
- constructor: {
40218
- value: undefined,
40219
- enumerable: false,
40220
- writable: true
40221
- }
40222
- });
40223
-
40224
- function EmptyObject() {}
40225
- EmptyObject.prototype = proto;
40226
- exports.default = EmptyObject;
40227
- });
40228
40250
  enifed('ember-utils/guid', ['exports', 'ember-utils/intern'], function (exports, _emberUtilsIntern) {
40229
40251
  'use strict';
40230
40252
 
@@ -40429,7 +40451,7 @@ enifed('ember-utils/guid', ['exports', 'ember-utils/intern'], function (exports,
40429
40451
  }
40430
40452
  }
40431
40453
  });
40432
- enifed('ember-utils/index', ['exports', 'ember-utils/symbol', 'ember-utils/owner', 'ember-utils/assign', 'ember-utils/empty-object', 'ember-utils/dictionary', 'ember-utils/guid', 'ember-utils/intern', 'ember-utils/super', 'ember-utils/inspect', 'ember-utils/lookup-descriptor', 'ember-utils/invoke', 'ember-utils/make-array', 'ember-utils/apply-str', 'ember-utils/name', 'ember-utils/to-string', 'ember-utils/weak-map-utils', 'ember-utils/proxy-utils'], function (exports, _emberUtilsSymbol, _emberUtilsOwner, _emberUtilsAssign, _emberUtilsEmptyObject, _emberUtilsDictionary, _emberUtilsGuid, _emberUtilsIntern, _emberUtilsSuper, _emberUtilsInspect, _emberUtilsLookupDescriptor, _emberUtilsInvoke, _emberUtilsMakeArray, _emberUtilsApplyStr, _emberUtilsName, _emberUtilsToString, _emberUtilsWeakMapUtils, _emberUtilsProxyUtils) {
40454
+ enifed('ember-utils/index', ['exports', 'ember-utils/symbol', 'ember-utils/owner', 'ember-utils/assign', 'ember-utils/dictionary', 'ember-utils/guid', 'ember-utils/intern', 'ember-utils/super', 'ember-utils/inspect', 'ember-utils/lookup-descriptor', 'ember-utils/invoke', 'ember-utils/make-array', 'ember-utils/apply-str', 'ember-utils/name', 'ember-utils/to-string', 'ember-utils/weak-map-utils', 'ember-utils/proxy-utils'], function (exports, _emberUtilsSymbol, _emberUtilsOwner, _emberUtilsAssign, _emberUtilsDictionary, _emberUtilsGuid, _emberUtilsIntern, _emberUtilsSuper, _emberUtilsInspect, _emberUtilsLookupDescriptor, _emberUtilsInvoke, _emberUtilsMakeArray, _emberUtilsApplyStr, _emberUtilsName, _emberUtilsToString, _emberUtilsWeakMapUtils, _emberUtilsProxyUtils) {
40433
40455
  /*
40434
40456
  This package will be eagerly parsed and should have no dependencies on external
40435
40457
  packages.
@@ -40447,7 +40469,6 @@ enifed('ember-utils/index', ['exports', 'ember-utils/symbol', 'ember-utils/owner
40447
40469
  exports.setOwner = _emberUtilsOwner.setOwner;
40448
40470
  exports.OWNER = _emberUtilsOwner.OWNER;
40449
40471
  exports.assign = _emberUtilsAssign.default;
40450
- exports.EmptyObject = _emberUtilsEmptyObject.default;
40451
40472
  exports.dictionary = _emberUtilsDictionary.default;
40452
40473
  exports.uuid = _emberUtilsGuid.uuid;
40453
40474
  exports.GUID_KEY = _emberUtilsGuid.GUID_KEY;
@@ -43539,7 +43560,7 @@ enifed('ember/index', ['exports', 'require', 'ember-environment', 'ember-utils',
43539
43560
  enifed("ember/version", ["exports"], function (exports) {
43540
43561
  "use strict";
43541
43562
 
43542
- exports.default = "2.12.0-beta.3";
43563
+ exports.default = "2.12.0";
43543
43564
  });
43544
43565
  enifed('internal-test-helpers/apply-mixins', ['exports', 'ember-utils'], function (exports, _emberUtils) {
43545
43566
  'use strict';