ember-source 1.12.0.beta.1 → 1.12.0.beta.3

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of ember-source might be problematic. Click here for more details.

checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 65ca212d72c93f8109a49b1d25c278c7f5c8be26
4
- data.tar.gz: fec64aed4cce47e7a485d158a108a2be76580584
3
+ metadata.gz: 3c129ac94fd3fd1ea4d5b317bc87c99fb3309193
4
+ data.tar.gz: d299b65f3406a868714bc7a14192c6b1faf4e656
5
5
  SHA512:
6
- metadata.gz: 8571a9ea2b3b754caba834bd751e0bc73eb82fc8082824a977ef82edb6b44e083cc9f80fc920f6893e3e50809acacdddf1dc57dd66e90451218d0eed6e2a4c1b
7
- data.tar.gz: b6e9426ccb57f09fc4e7ba17feb9c416d85b89fcb0d5e631eb34b9baa4b213948e6850a3f5fe073ef6423ae8f82375f146f0f8a48006f760826fee19808a09c6
6
+ metadata.gz: 3ae84fd6f5500428e596976c11dccd0b049cb49c8071af2ea1995e9581a8f4cd15a713f99516d0b830bbe71b96bfb04a0dda43a080ba39f379c2e23745ee9982
7
+ data.tar.gz: 49a24a228936582780138022996df6ebae0ce62bbe295599728b50f50fb870794b2c4c1f3d75049223b74f330ffafa8df969a03042ca843f7f1599e56535f55e
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.12.0-beta.1
1
+ 1.12.0-beta.3
@@ -5,7 +5,7 @@
5
5
  * Portions Copyright 2008-2011 Apple Inc. All rights reserved.
6
6
  * @license Licensed under MIT license
7
7
  * See https://raw.github.com/emberjs/ember.js/master/LICENSE
8
- * @version 1.12.0-beta.1
8
+ * @version 1.12.0-beta.3
9
9
  */
10
10
 
11
11
  (function() {
@@ -110,7 +110,7 @@ var mainContext = this;
110
110
  }
111
111
  })();
112
112
 
113
- enifed('ember-debug', ['exports', 'ember-metal/core', 'ember-metal/error', 'ember-metal/logger', 'ember-metal/environment'], function (exports, Ember, EmberError, Logger, environment) {
113
+ enifed('ember-debug', ['exports', 'ember-metal/core', 'ember-metal/utils', 'ember-metal/error', 'ember-metal/logger', 'ember-metal/environment'], function (exports, Ember, utils, EmberError, Logger, environment) {
114
114
 
115
115
  'use strict';
116
116
 
@@ -129,7 +129,7 @@ enifed('ember-debug', ['exports', 'ember-metal/core', 'ember-metal/error', 'embe
129
129
  Ember['default'].assert = function (desc, test) {
130
130
  var throwAssertion;
131
131
 
132
- if (Ember['default'].typeOf(test) === "function") {
132
+ if (utils.typeOf(test) === "function") {
133
133
  throwAssertion = !test();
134
134
  } else {
135
135
  throwAssertion = !test;
@@ -180,8 +180,9 @@ enifed('ember-debug', ['exports', 'ember-metal/core', 'ember-metal/error', 'embe
180
180
 
181
181
  @method deprecate
182
182
  @param {String} message A description of the deprecation.
183
- @param {Boolean} test An optional boolean. If falsy, the deprecation
184
- will be displayed.
183
+ @param {Boolean|Function} test An optional boolean. If falsy, the deprecation
184
+ will be displayed. If this is a function, it will be executed and its return
185
+ value will be used as condition.
185
186
  @param {Object} options An optional object that can be used to pass
186
187
  in a `url` to the transition guide on the emberjs.com website.
187
188
  */
@@ -375,8 +376,9 @@ enifed('ember-metal', ['exports', 'ember-metal/core', 'ember-metal/merge', 'embe
375
376
  computed.computed.and = computed_macros.and;
376
377
  computed.computed.or = computed_macros.or;
377
378
  computed.computed.any = computed_macros.any;
378
- computed.computed.collect = computed_macros.collect;
379
+ computed.computed.collect = computed_macros.collect; // END IMPORTS
379
380
 
381
+ // BEGIN EXPORTS
380
382
  var EmberInstrumentation = Ember['default'].Instrumentation = {};
381
383
  EmberInstrumentation.instrument = instrumentation.instrument;
382
384
  EmberInstrumentation.subscribe = instrumentation.subscribe;
@@ -1797,7 +1799,7 @@ enifed('ember-metal/computed', ['exports', 'ember-metal/property_set', 'ember-me
1797
1799
  this._getter = config;
1798
1800
  if (config.__ember_arity > 1) {
1799
1801
  Ember.deprecate("Using the same function as getter and setter is deprecated.", false, {
1800
- url: "http://emberjs.com/deprecations/v1.x/#toc_deprecate-using-the-same-function-as-getter-and-setter-in-computed-properties"
1802
+ url: "http://emberjs.com/deprecations/v1.x/#toc_computed-properties-with-a-shared-getter-and-setter"
1801
1803
  });
1802
1804
  this._setter = config;
1803
1805
  }
@@ -1890,6 +1892,8 @@ enifed('ember-metal/computed', ['exports', 'ember-metal/property_set', 'ember-me
1890
1892
  ComputedPropertyPrototype.readOnly = function (readOnly) {
1891
1893
  Ember.deprecate("Passing arguments to ComputedProperty.readOnly() is deprecated.", arguments.length === 0);
1892
1894
  this._readOnly = readOnly === undefined || !!readOnly; // Force to true once this deprecation is gone
1895
+ Ember.assert("Computed properties that define a setter using the new syntax cannot be read-only", !(this._readOnly && this._setter && this._setter !== this._getter));
1896
+
1893
1897
  return this;
1894
1898
  };
1895
1899
 
@@ -2588,10 +2592,10 @@ enifed('ember-metal/core', ['exports'], function (exports) {
2588
2592
 
2589
2593
  @class Ember
2590
2594
  @static
2591
- @version 1.12.0-beta.1
2595
+ @version 1.12.0-beta.3
2592
2596
  */
2593
2597
 
2594
- if ("undefined" === typeof Ember) {
2598
+ if ('undefined' === typeof Ember) {
2595
2599
  // Create core object. Make it act like an instance of Ember.Namespace so that
2596
2600
  // objects assigned to it are given a sane string representation.
2597
2601
  Ember = {};
@@ -2611,16 +2615,16 @@ enifed('ember-metal/core', ['exports'], function (exports) {
2611
2615
  Ember.isNamespace = true;
2612
2616
 
2613
2617
  Ember.toString = function () {
2614
- return "Ember";
2618
+ return 'Ember';
2615
2619
  };
2616
2620
 
2617
2621
  /**
2618
2622
  @property VERSION
2619
2623
  @type String
2620
- @default '1.12.0-beta.1'
2624
+ @default '1.12.0-beta.3'
2621
2625
  @static
2622
2626
  */
2623
- Ember.VERSION = "1.12.0-beta.1";
2627
+ Ember.VERSION = '1.12.0-beta.3';
2624
2628
 
2625
2629
  /**
2626
2630
  Standard environmental variables. You can define these in a global `EmberENV`
@@ -2635,10 +2639,10 @@ enifed('ember-metal/core', ['exports'], function (exports) {
2635
2639
 
2636
2640
  if (Ember.ENV) {
2637
2641
  // do nothing if Ember.ENV is already setup
2638
- Ember.assert("Ember.ENV should be an object.", "object" !== typeof Ember.ENV);
2639
- } else if ("undefined" !== typeof EmberENV) {
2642
+ Ember.assert('Ember.ENV should be an object.', 'object' !== typeof Ember.ENV);
2643
+ } else if ('undefined' !== typeof EmberENV) {
2640
2644
  Ember.ENV = EmberENV;
2641
- } else if ("undefined" !== typeof ENV) {
2645
+ } else if ('undefined' !== typeof ENV) {
2642
2646
  Ember.ENV = ENV;
2643
2647
  } else {
2644
2648
  Ember.ENV = {};
@@ -2647,7 +2651,7 @@ enifed('ember-metal/core', ['exports'], function (exports) {
2647
2651
  Ember.config = Ember.config || {};
2648
2652
 
2649
2653
  // We disable the RANGE API by default for performance reasons
2650
- if ("undefined" === typeof Ember.ENV.DISABLE_RANGE_API) {
2654
+ if ('undefined' === typeof Ember.ENV.DISABLE_RANGE_API) {
2651
2655
  Ember.ENV.DISABLE_RANGE_API = true;
2652
2656
  }
2653
2657
 
@@ -2661,11 +2665,14 @@ enifed('ember-metal/core', ['exports'], function (exports) {
2661
2665
  @static
2662
2666
  @since 1.1.0
2663
2667
  */
2668
+ Ember.FEATURES = { 'features-stripped-test': false, 'ember-routing-named-substates': true, 'mandatory-setter': true, 'ember-htmlbars-component-generation': false, 'ember-htmlbars-component-helper': true, 'ember-htmlbars-inline-if-helper': true, 'ember-htmlbars-attribute-syntax': true, 'ember-routing-transitioning-classes': true, 'new-computed-syntax': true, 'ember-testing-checkbox-helpers': false, 'ember-metal-stream': false, 'ember-application-instance-initializers': true, 'ember-application-initializer-context': true, 'ember-router-willtransition': true, 'ember-application-visit': false, 'ember-views-component-block-info': false, 'ember-routing-core-outlet': false, 'ember-libraries-isregistered': false }; //jshint ignore:line
2664
2669
 
2665
- Ember.FEATURES = Ember.ENV.FEATURES;
2666
-
2667
- if (!Ember.FEATURES) {
2668
- Ember.FEATURES = { "features-stripped-test": false, "ember-routing-named-substates": true, "mandatory-setter": true, "ember-htmlbars-component-generation": false, "ember-htmlbars-component-helper": true, "ember-htmlbars-inline-if-helper": true, "ember-htmlbars-attribute-syntax": true, "ember-routing-transitioning-classes": true, "new-computed-syntax": true, "ember-testing-checkbox-helpers": false, "ember-metal-stream": false, "ember-htmlbars-each-with-index": true, "ember-application-instance-initializers": true, "ember-application-initializer-context": true, "ember-router-willtransition": true, "ember-application-visit": false, "ember-views-component-block-info": false, "ember-routing-core-outlet": false, "ember-libraries-isregistered": false }; //jshint ignore:line
2670
+ if (Ember.ENV.FEATURES) {
2671
+ for (var feature in Ember.ENV.FEATURES) {
2672
+ if (Ember.ENV.FEATURES.hasOwnProperty(feature)) {
2673
+ Ember.FEATURES[feature] = Ember.ENV.FEATURES[feature];
2674
+ }
2675
+ }
2669
2676
  }
2670
2677
 
2671
2678
  /**
@@ -2720,7 +2727,7 @@ enifed('ember-metal/core', ['exports'], function (exports) {
2720
2727
  */
2721
2728
  Ember.EXTEND_PROTOTYPES = Ember.ENV.EXTEND_PROTOTYPES;
2722
2729
 
2723
- if (typeof Ember.EXTEND_PROTOTYPES === "undefined") {
2730
+ if (typeof Ember.EXTEND_PROTOTYPES === 'undefined') {
2724
2731
  Ember.EXTEND_PROTOTYPES = true;
2725
2732
  }
2726
2733
 
@@ -2766,22 +2773,22 @@ enifed('ember-metal/core', ['exports'], function (exports) {
2766
2773
 
2767
2774
  // Stub out the methods defined by the ember-debug package in case it's not loaded
2768
2775
 
2769
- if ("undefined" === typeof Ember.assert) {
2776
+ if ('undefined' === typeof Ember.assert) {
2770
2777
  Ember.assert = K;
2771
2778
  }
2772
- if ("undefined" === typeof Ember.warn) {
2779
+ if ('undefined' === typeof Ember.warn) {
2773
2780
  Ember.warn = K;
2774
2781
  }
2775
- if ("undefined" === typeof Ember.debug) {
2782
+ if ('undefined' === typeof Ember.debug) {
2776
2783
  Ember.debug = K;
2777
2784
  }
2778
- if ("undefined" === typeof Ember.runInDebug) {
2785
+ if ('undefined' === typeof Ember.runInDebug) {
2779
2786
  Ember.runInDebug = K;
2780
2787
  }
2781
- if ("undefined" === typeof Ember.deprecate) {
2788
+ if ('undefined' === typeof Ember.deprecate) {
2782
2789
  Ember.deprecate = K;
2783
2790
  }
2784
- if ("undefined" === typeof Ember.deprecateFunc) {
2791
+ if ('undefined' === typeof Ember.deprecateFunc) {
2785
2792
  Ember.deprecateFunc = function (_, func) {
2786
2793
  return func;
2787
2794
  };
@@ -2917,13 +2924,13 @@ enifed('ember-metal/dictionary', ['exports', 'ember-metal/platform/create'], fun
2917
2924
  exports['default'] = makeDictionary;
2918
2925
  function makeDictionary(parent) {
2919
2926
  var dict = create['default'](parent);
2920
- dict["_dict"] = null;
2921
- delete dict["_dict"];
2927
+ dict['_dict'] = null;
2928
+ delete dict['_dict'];
2922
2929
  return dict;
2923
2930
  }
2924
2931
 
2925
2932
  });
2926
- enifed('ember-metal/enumerable_utils', ['exports', 'ember-metal/array'], function (exports, array) {
2933
+ enifed('ember-metal/enumerable_utils', ['exports', 'ember-metal/array'], function (exports, ember_metal__array) {
2927
2934
 
2928
2935
  'use strict';
2929
2936
 
@@ -2960,19 +2967,19 @@ enifed('ember-metal/enumerable_utils', ['exports', 'ember-metal/array'], functio
2960
2967
  */
2961
2968
  var splice = Array.prototype.splice;
2962
2969
  function map(obj, callback, thisArg) {
2963
- return obj.map ? obj.map(callback, thisArg) : array.map.call(obj, callback, thisArg);
2970
+ return obj.map ? obj.map(callback, thisArg) : ember_metal__array.map.call(obj, callback, thisArg);
2964
2971
  }
2965
2972
 
2966
2973
  function forEach(obj, callback, thisArg) {
2967
- return obj.forEach ? obj.forEach(callback, thisArg) : array.forEach.call(obj, callback, thisArg);
2974
+ return obj.forEach ? obj.forEach(callback, thisArg) : ember_metal__array.forEach.call(obj, callback, thisArg);
2968
2975
  }
2969
2976
 
2970
2977
  function filter(obj, callback, thisArg) {
2971
- return obj.filter ? obj.filter(callback, thisArg) : array.filter.call(obj, callback, thisArg);
2978
+ return obj.filter ? obj.filter(callback, thisArg) : ember_metal__array.filter.call(obj, callback, thisArg);
2972
2979
  }
2973
2980
 
2974
2981
  function indexOf(obj, element, index) {
2975
- return obj.indexOf ? obj.indexOf(element, index) : array.indexOf.call(obj, element, index);
2982
+ return obj.indexOf ? obj.indexOf(element, index) : ember_metal__array.indexOf.call(obj, element, index);
2976
2983
  }
2977
2984
 
2978
2985
  function indexesOf(obj, elements) {
@@ -3066,7 +3073,7 @@ enifed('ember-metal/environment', ['exports', 'ember-metal/core'], function (exp
3066
3073
  // by searching for window and document.createElement. An environment
3067
3074
  // with DOM may disable the DOM functionality of Ember explicitly by
3068
3075
  // defining a `disableBrowserEnvironment` ENV.
3069
- var hasDOM = typeof window !== "undefined" && typeof document !== "undefined" && typeof document.createElement !== "undefined" && !Ember['default'].ENV.disableBrowserEnvironment;
3076
+ var hasDOM = typeof window !== 'undefined' && typeof document !== 'undefined' && typeof document.createElement !== 'undefined' && !Ember['default'].ENV.disableBrowserEnvironment;
3070
3077
 
3071
3078
  if (hasDOM) {
3072
3079
  environment = {
@@ -3083,7 +3090,7 @@ enifed('ember-metal/environment', ['exports', 'ember-metal/core'], function (exp
3083
3090
  isChrome: false,
3084
3091
  location: null,
3085
3092
  history: null,
3086
- userAgent: "Lynx (textmode)",
3093
+ userAgent: 'Lynx (textmode)',
3087
3094
  global: null
3088
3095
  };
3089
3096
  }
@@ -3095,7 +3102,7 @@ enifed('ember-metal/error', ['exports', 'ember-metal/platform/create'], function
3095
3102
 
3096
3103
  'use strict';
3097
3104
 
3098
- var errorProps = ["description", "fileName", "lineNumber", "message", "name", "number", "stack"];
3105
+ var errorProps = ['description', 'fileName', 'lineNumber', 'message', 'name', 'number', 'stack'];
3099
3106
 
3100
3107
  /**
3101
3108
  A subclass of the JavaScript Error object for use in Ember.
@@ -3494,7 +3501,7 @@ enifed('ember-metal/expand_properties', ['exports', 'ember-metal/error', 'ember-
3494
3501
  Ember.expandProperties('foo.bar', echo); //=> 'foo.bar'
3495
3502
  Ember.expandProperties('{foo,bar}', echo); //=> 'foo', 'bar'
3496
3503
  Ember.expandProperties('foo.{bar,baz}', echo); //=> 'foo.bar', 'foo.baz'
3497
- Ember.expandProperties('{foo,bar}.baz', echo); //=> '{foo,bar}.baz'
3504
+ Ember.expandProperties('{foo,bar}.baz', echo); //=> 'foo.baz', 'bar.baz'
3498
3505
  Ember.expandProperties('foo.{bar,baz}.@each', echo) //=> 'foo.bar.@each', 'foo.baz.@each'
3499
3506
  Ember.expandProperties('{foo,bar}.{spam,eggs}', echo) //=> 'foo.spam', 'foo.eggs', 'bar.spam', 'bar.eggs'
3500
3507
  Ember.expandProperties('{foo}.bar.{baz}') //=> 'foo.bar.baz'
@@ -3510,22 +3517,22 @@ enifed('ember-metal/expand_properties', ['exports', 'ember-metal/error', 'ember-
3510
3517
 
3511
3518
  var SPLIT_REGEX = /\{|\}/;
3512
3519
  function expandProperties(pattern, callback) {
3513
- if (pattern.indexOf(" ") > -1) {
3514
- throw new EmberError['default']("Brace expanded properties cannot contain spaces, e.g. 'user.{firstName, lastName}' should be 'user.{firstName,lastName}'");
3520
+ if (pattern.indexOf(' ') > -1) {
3521
+ throw new EmberError['default']('Brace expanded properties cannot contain spaces, e.g. \'user.{firstName, lastName}\' should be \'user.{firstName,lastName}\'');
3515
3522
  }
3516
3523
 
3517
- if ("string" === utils.typeOf(pattern)) {
3524
+ if ('string' === utils.typeOf(pattern)) {
3518
3525
  var parts = pattern.split(SPLIT_REGEX);
3519
3526
  var properties = [parts];
3520
3527
 
3521
3528
  enumerable_utils.forEach(parts, function (part, index) {
3522
- if (part.indexOf(",") >= 0) {
3523
- properties = duplicateAndReplace(properties, part.split(","), index);
3529
+ if (part.indexOf(',') >= 0) {
3530
+ properties = duplicateAndReplace(properties, part.split(','), index);
3524
3531
  }
3525
3532
  });
3526
3533
 
3527
3534
  enumerable_utils.forEach(properties, function (property) {
3528
- callback(property.join(""));
3535
+ callback(property.join(''));
3529
3536
  });
3530
3537
  } else {
3531
3538
  callback(pattern);
@@ -3826,7 +3833,7 @@ enifed('ember-metal/is_blank', ['exports', 'ember-metal/is_empty'], function (ex
3826
3833
  */
3827
3834
  exports['default'] = isBlank;
3828
3835
  function isBlank(obj) {
3829
- return isEmpty['default'](obj) || typeof obj === "string" && obj.match(/\S/) === null;
3836
+ return isEmpty['default'](obj) || typeof obj === 'string' && obj.match(/\S/) === null;
3830
3837
  }
3831
3838
 
3832
3839
  });
@@ -3840,26 +3847,26 @@ enifed('ember-metal/is_empty', ['exports', 'ember-metal/property_get', 'ember-me
3840
3847
  return none;
3841
3848
  }
3842
3849
 
3843
- if (typeof obj.size === "number") {
3850
+ if (typeof obj.size === 'number') {
3844
3851
  return !obj.size;
3845
3852
  }
3846
3853
 
3847
3854
  var objectType = typeof obj;
3848
3855
 
3849
- if (objectType === "object") {
3850
- var size = property_get.get(obj, "size");
3851
- if (typeof size === "number") {
3856
+ if (objectType === 'object') {
3857
+ var size = property_get.get(obj, 'size');
3858
+ if (typeof size === 'number') {
3852
3859
  return !size;
3853
3860
  }
3854
3861
  }
3855
3862
 
3856
- if (typeof obj.length === "number" && objectType !== "function") {
3863
+ if (typeof obj.length === 'number' && objectType !== 'function') {
3857
3864
  return !obj.length;
3858
3865
  }
3859
3866
 
3860
- if (objectType === "object") {
3861
- var length = property_get.get(obj, "length");
3862
- if (typeof length === "number") {
3867
+ if (objectType === 'object') {
3868
+ var length = property_get.get(obj, 'length');
3869
+ if (typeof length === 'number') {
3863
3870
  return !length;
3864
3871
  }
3865
3872
  }
@@ -3946,20 +3953,20 @@ enifed('ember-metal/keys', ['exports', 'ember-metal/platform/define_property'],
3946
3953
  // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/keys
3947
3954
  keys = (function () {
3948
3955
  var hasOwnProperty = Object.prototype.hasOwnProperty;
3949
- var hasDontEnumBug = !({ toString: null }).propertyIsEnumerable("toString");
3950
- var dontEnums = ["toString", "toLocaleString", "valueOf", "hasOwnProperty", "isPrototypeOf", "propertyIsEnumerable", "constructor"];
3956
+ var hasDontEnumBug = !({ toString: null }).propertyIsEnumerable('toString');
3957
+ var dontEnums = ['toString', 'toLocaleString', 'valueOf', 'hasOwnProperty', 'isPrototypeOf', 'propertyIsEnumerable', 'constructor'];
3951
3958
  var dontEnumsLength = dontEnums.length;
3952
3959
 
3953
3960
  return function keys(obj) {
3954
- if (typeof obj !== "object" && (typeof obj !== "function" || obj === null)) {
3955
- throw new TypeError("Object.keys called on non-object");
3961
+ if (typeof obj !== 'object' && (typeof obj !== 'function' || obj === null)) {
3962
+ throw new TypeError('Object.keys called on non-object');
3956
3963
  }
3957
3964
 
3958
3965
  var result = [];
3959
3966
  var prop, i;
3960
3967
 
3961
3968
  for (prop in obj) {
3962
- if (prop !== "_super" && prop.lastIndexOf("__", 0) !== 0 && hasOwnProperty.call(obj, prop)) {
3969
+ if (prop !== '_super' && prop.lastIndexOf('__', 0) !== 0 && hasOwnProperty.call(obj, prop)) {
3963
3970
  result.push(prop);
3964
3971
  }
3965
3972
  }
@@ -4716,7 +4723,7 @@ enifed('ember-metal/merge', ['exports', 'ember-metal/keys'], function (exports,
4716
4723
  */
4717
4724
  exports['default'] = merge;
4718
4725
  function merge(original, updates) {
4719
- if (!updates || typeof updates !== "object") {
4726
+ if (!updates || typeof updates !== 'object') {
4720
4727
  return original;
4721
4728
  }
4722
4729
 
@@ -4733,7 +4740,7 @@ enifed('ember-metal/merge', ['exports', 'ember-metal/keys'], function (exports,
4733
4740
  }
4734
4741
 
4735
4742
  });
4736
- enifed('ember-metal/mixin', ['exports', 'ember-metal/core', 'ember-metal/merge', 'ember-metal/array', 'ember-metal/platform/create', 'ember-metal/property_get', 'ember-metal/property_set', 'ember-metal/utils', 'ember-metal/expand_properties', 'ember-metal/properties', 'ember-metal/computed', 'ember-metal/binding', 'ember-metal/observer', 'ember-metal/events', 'ember-metal/streams/utils'], function (exports, Ember, merge, array, o_create, property_get, property_set, utils, expandProperties, properties, computed, ember_metal__binding, ember_metal__observer, events, streams__utils) {
4743
+ enifed('ember-metal/mixin', ['exports', 'ember-metal/core', 'ember-metal/merge', 'ember-metal/array', 'ember-metal/platform/create', 'ember-metal/property_get', 'ember-metal/property_set', 'ember-metal/utils', 'ember-metal/expand_properties', 'ember-metal/properties', 'ember-metal/computed', 'ember-metal/binding', 'ember-metal/observer', 'ember-metal/events', 'ember-metal/streams/utils'], function (exports, Ember, merge, array, o_create, property_get, property_set, utils, expandProperties, ember_metal__properties, computed, ember_metal__binding, ember_metal__observer, events, streams__utils) {
4737
4744
 
4738
4745
 
4739
4746
  exports.mixin = mixin;
@@ -4965,7 +4972,7 @@ enifed('ember-metal/mixin', ['exports', 'ember-metal/core', 'ember-metal/merge',
4965
4972
  }
4966
4973
 
4967
4974
  function addNormalizedProperty(base, key, value, meta, descs, values, concats, mergings) {
4968
- if (value instanceof properties.Descriptor) {
4975
+ if (value instanceof ember_metal__properties.Descriptor) {
4969
4976
  if (value === REQUIRED && descs[key]) {
4970
4977
  return CONTINUE;
4971
4978
  }
@@ -5197,7 +5204,7 @@ enifed('ember-metal/mixin', ['exports', 'ember-metal/core', 'ember-metal/merge',
5197
5204
 
5198
5205
  replaceObserversAndListeners(obj, key, value);
5199
5206
  detectBinding(obj, key, value, m);
5200
- properties.defineProperty(obj, key, desc, value, m);
5207
+ ember_metal__properties.defineProperty(obj, key, desc, value, m);
5201
5208
  }
5202
5209
 
5203
5210
  if (!partial) {
@@ -5313,8 +5320,8 @@ enifed('ember-metal/mixin', ['exports', 'ember-metal/core', 'ember-metal/merge',
5313
5320
  @param arguments*
5314
5321
  */
5315
5322
  Mixin.create = function () {
5316
- for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
5317
- args[_key] = arguments[_key];
5323
+ for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
5324
+ args[_key2] = arguments[_key2];
5318
5325
  }
5319
5326
 
5320
5327
  // ES6TODO: this relies on a global state?
@@ -5413,8 +5420,8 @@ enifed('ember-metal/mixin', ['exports', 'ember-metal/core', 'ember-metal/merge',
5413
5420
  };
5414
5421
 
5415
5422
  MixinPrototype.without = function () {
5416
- for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
5417
- args[_key] = arguments[_key];
5423
+ for (var _len3 = arguments.length, args = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
5424
+ args[_key3] = arguments[_key3];
5418
5425
  }
5419
5426
 
5420
5427
  var ret = new Mixin([this]);
@@ -5478,7 +5485,7 @@ enifed('ember-metal/mixin', ['exports', 'ember-metal/core', 'ember-metal/merge',
5478
5485
  return ret;
5479
5486
  };
5480
5487
 
5481
- exports.REQUIRED = REQUIRED = new properties.Descriptor();
5488
+ REQUIRED = new ember_metal__properties.Descriptor();
5482
5489
  REQUIRED.toString = function () {
5483
5490
  return "(Required Property)";
5484
5491
  };
@@ -5492,14 +5499,14 @@ enifed('ember-metal/mixin', ['exports', 'ember-metal/core', 'ember-metal/merge',
5492
5499
  this.methodName = methodName;
5493
5500
  }
5494
5501
 
5495
- Alias.prototype = new properties.Descriptor();
5502
+ Alias.prototype = new ember_metal__properties.Descriptor();
5496
5503
  function aliasMethod(methodName) {
5497
5504
  return new Alias(methodName);
5498
5505
  }
5499
5506
 
5500
5507
  function observer() {
5501
- for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
5502
- args[_key] = arguments[_key];
5508
+ for (var _len4 = arguments.length, args = Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
5509
+ args[_key4] = arguments[_key4];
5503
5510
  }
5504
5511
 
5505
5512
  var func = args.slice(-1)[0];
@@ -5541,8 +5548,8 @@ enifed('ember-metal/mixin', ['exports', 'ember-metal/core', 'ember-metal/merge',
5541
5548
  }
5542
5549
 
5543
5550
  function beforeObserver() {
5544
- for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
5545
- args[_key] = arguments[_key];
5551
+ for (var _len5 = arguments.length, args = Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {
5552
+ args[_key5] = arguments[_key5];
5546
5553
  }
5547
5554
 
5548
5555
  var func = args.slice(-1)[0];
@@ -5576,6 +5583,7 @@ enifed('ember-metal/mixin', ['exports', 'ember-metal/core', 'ember-metal/merge',
5576
5583
  }
5577
5584
 
5578
5585
  exports.IS_BINDING = IS_BINDING;
5586
+ exports.REQUIRED = REQUIRED;
5579
5587
 
5580
5588
  });
5581
5589
  enifed('ember-metal/observer', ['exports', 'ember-metal/watching', 'ember-metal/array', 'ember-metal/events'], function (exports, watching, array, ember_metal__events) {
@@ -5731,7 +5739,7 @@ enifed('ember-metal/path_cache', ['exports', 'ember-metal/cache'], function (exp
5731
5739
 
5732
5740
  var IS_GLOBAL = /^[A-Z$]/;
5733
5741
  var IS_GLOBAL_PATH = /^[A-Z$].*[\.]/;
5734
- var HAS_THIS = "this.";
5742
+ var HAS_THIS = 'this.';
5735
5743
 
5736
5744
  var isGlobalCache = new Cache['default'](1000, function (key) {
5737
5745
  return IS_GLOBAL.test(key);
@@ -5746,7 +5754,7 @@ enifed('ember-metal/path_cache', ['exports', 'ember-metal/cache'], function (exp
5746
5754
  });
5747
5755
 
5748
5756
  var firstDotIndexCache = new Cache['default'](1000, function (key) {
5749
- return key.indexOf(".");
5757
+ return key.indexOf('.');
5750
5758
  });
5751
5759
 
5752
5760
  var firstKeyCache = new Cache['default'](1000, function (path) {
@@ -5805,7 +5813,7 @@ enifed('ember-metal/platform/create', ['exports', 'ember-metal/platform/define_p
5805
5813
  // Remove "use strict"; from transpiled module until
5806
5814
  // https://bugs.webkit.org/show_bug.cgi?id=138038 is fixed
5807
5815
  //
5808
- "REMOVE_USE_STRICT: true";
5816
+ 'REMOVE_USE_STRICT: true';
5809
5817
 
5810
5818
  var create;
5811
5819
  // ES5 15.2.3.5
@@ -5814,13 +5822,13 @@ enifed('ember-metal/platform/create', ['exports', 'ember-metal/platform/define_p
5814
5822
  /* jshint scripturl:true, proto:true */
5815
5823
  // Contributed by Brandon Benvie, October, 2012
5816
5824
  var createEmpty;
5817
- var supportsProto = !({ "__proto__": null } instanceof Object);
5825
+ var supportsProto = !({ '__proto__': null } instanceof Object);
5818
5826
  // the following produces false positives
5819
5827
  // in Opera Mini => not a reliable check
5820
5828
  // Object.prototype.__proto__ === null
5821
- if (supportsProto || typeof document === "undefined") {
5829
+ if (supportsProto || typeof document === 'undefined') {
5822
5830
  createEmpty = function () {
5823
- return { "__proto__": null };
5831
+ return { '__proto__': null };
5824
5832
  };
5825
5833
  } else {
5826
5834
  // In old IE __proto__ can't be used to manually set `null`, nor does
@@ -5829,11 +5837,11 @@ enifed('ember-metal/platform/create', ['exports', 'ember-metal/platform/define_p
5829
5837
  // object and *steal* its Object.prototype and strip it bare. This is
5830
5838
  // used as the prototype to create nullary objects.
5831
5839
  createEmpty = function () {
5832
- var iframe = document.createElement("iframe");
5840
+ var iframe = document.createElement('iframe');
5833
5841
  var parent = document.body || document.documentElement;
5834
- iframe.style.display = "none";
5842
+ iframe.style.display = 'none';
5835
5843
  parent.appendChild(iframe);
5836
- iframe.src = "javascript:";
5844
+ iframe.src = 'javascript:';
5837
5845
  var empty = iframe.contentWindow.Object.prototype;
5838
5846
  parent.removeChild(iframe);
5839
5847
  iframe = null;
@@ -5863,13 +5871,13 @@ enifed('ember-metal/platform/create', ['exports', 'ember-metal/platform/define_p
5863
5871
  if (prototype === null) {
5864
5872
  object = createEmpty();
5865
5873
  } else {
5866
- if (typeof prototype !== "object" && typeof prototype !== "function") {
5874
+ if (typeof prototype !== 'object' && typeof prototype !== 'function') {
5867
5875
  // In the native implementation `parent` can be `null`
5868
5876
  // OR *any* `instanceof Object` (Object|Function|Array|RegExp|etc)
5869
5877
  // Use `typeof` tho, b/c in old IE, DOM elements are not `instanceof Object`
5870
5878
  // like they are in modern browsers. Using `Object.create` on DOM elements
5871
5879
  // is...err...probably inappropriate, but the native version allows for it.
5872
- throw new TypeError("Object prototype may only be an Object or null"); // same msg as Chrome
5880
+ throw new TypeError('Object prototype may only be an Object or null'); // same msg as Chrome
5873
5881
  }
5874
5882
 
5875
5883
  Type.prototype = prototype;
@@ -5951,7 +5959,7 @@ enifed('ember-metal/platform/define_property', ['exports'], function (exports) {
5951
5959
  try {
5952
5960
  var a = 5;
5953
5961
  var obj = {};
5954
- defineProperty(obj, "a", {
5962
+ defineProperty(obj, 'a', {
5955
5963
  configurable: true,
5956
5964
  enumerable: true,
5957
5965
  get: function () {
@@ -5971,14 +5979,14 @@ enifed('ember-metal/platform/define_property', ['exports'], function (exports) {
5971
5979
  }
5972
5980
 
5973
5981
  // check non-enumerability
5974
- defineProperty(obj, "a", {
5982
+ defineProperty(obj, 'a', {
5975
5983
  configurable: true,
5976
5984
  enumerable: false,
5977
5985
  writable: true,
5978
5986
  value: true
5979
5987
  });
5980
5988
  for (var key in obj) {
5981
- if (key === "a") {
5989
+ if (key === 'a') {
5982
5990
  return;
5983
5991
  }
5984
5992
  }
@@ -5991,7 +5999,7 @@ enifed('ember-metal/platform/define_property', ['exports'], function (exports) {
5991
5999
 
5992
6000
  // Detects a bug in Android <3 where redefining a property without a value changes the value
5993
6001
  // Object.defineProperty once accessors have already been set.
5994
- defineProperty(obj, "a", {
6002
+ defineProperty(obj, 'a', {
5995
6003
  enumerable: false
5996
6004
  });
5997
6005
  if (obj.a !== true) {
@@ -6008,12 +6016,12 @@ enifed('ember-metal/platform/define_property', ['exports'], function (exports) {
6008
6016
 
6009
6017
  var hasES5CompliantDefineProperty = !!defineProperty;
6010
6018
 
6011
- if (hasES5CompliantDefineProperty && typeof document !== "undefined") {
6019
+ if (hasES5CompliantDefineProperty && typeof document !== 'undefined') {
6012
6020
  // This is for Safari 5.0, which supports Object.defineProperty, but not
6013
6021
  // on DOM nodes.
6014
6022
  var canDefinePropertyOnDOM = (function () {
6015
6023
  try {
6016
- defineProperty(document.createElement("div"), "definePropertyOnDOM", {});
6024
+ defineProperty(document.createElement('div'), 'definePropertyOnDOM', {});
6017
6025
  return true;
6018
6026
  } catch (e) {}
6019
6027
 
@@ -6024,10 +6032,10 @@ enifed('ember-metal/platform/define_property', ['exports'], function (exports) {
6024
6032
  defineProperty = function (obj, keyName, desc) {
6025
6033
  var isNode;
6026
6034
 
6027
- if (typeof Node === "object") {
6035
+ if (typeof Node === 'object') {
6028
6036
  isNode = obj instanceof Node;
6029
6037
  } else {
6030
- isNode = typeof obj === "object" && typeof obj.nodeType === "number" && typeof obj.nodeName === "string";
6038
+ isNode = typeof obj === 'object' && typeof obj.nodeType === 'number' && typeof obj.nodeName === 'string';
6031
6039
  }
6032
6040
 
6033
6041
  if (isNode) {
@@ -6759,8 +6767,6 @@ enifed('ember-metal/run_loop', ['exports', 'ember-metal/core', 'ember-metal/util
6759
6767
 
6760
6768
  'use strict';
6761
6769
 
6762
- var _toConsumableArray = function (arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) arr2[i] = arr[i]; return arr2; } else { return Array.from(arr); } };
6763
-
6764
6770
  function onBegin(current) {
6765
6771
  run.currentRunLoop = current;
6766
6772
  }
@@ -6770,17 +6776,17 @@ enifed('ember-metal/run_loop', ['exports', 'ember-metal/core', 'ember-metal/util
6770
6776
  }
6771
6777
 
6772
6778
  // ES6TODO: should Backburner become es6?
6773
- var backburner = new Backburner['default'](["sync", "actions", "destroy"], {
6779
+ var backburner = new Backburner['default'](['sync', 'actions', 'destroy'], {
6774
6780
  GUID_KEY: utils.GUID_KEY,
6775
6781
  sync: {
6776
6782
  before: property_events.beginPropertyChanges,
6777
6783
  after: property_events.endPropertyChanges
6778
6784
  },
6779
- defaultQueue: "actions",
6785
+ defaultQueue: 'actions',
6780
6786
  onBegin: onBegin,
6781
6787
  onEnd: onEnd,
6782
6788
  onErrorTarget: Ember['default'],
6783
- onErrorMethod: "onerror"
6789
+ onErrorMethod: 'onerror'
6784
6790
  });
6785
6791
 
6786
6792
  // ..........................................................
@@ -6878,12 +6884,12 @@ enifed('ember-metal/run_loop', ['exports', 'ember-metal/core', 'ember-metal/util
6878
6884
 
6879
6885
  ```javascript
6880
6886
  App.RichTextEditorComponent = Ember.Component.extend({
6881
- initializeTinyMCE: function() {
6887
+ initializeTinyMCE: Ember.on('didInsertElement', function() {
6882
6888
  tinymce.init({
6883
6889
  selector: '#' + this.$().prop('id'),
6884
6890
  setup: Ember.run.bind(this, this.setupEditor)
6885
6891
  });
6886
- }.on('didInsertElement'),
6892
+ }),
6887
6893
 
6888
6894
  setupEditor: function(editor) {
6889
6895
  this.set('editor', editor);
@@ -6919,7 +6925,7 @@ enifed('ember-metal/run_loop', ['exports', 'ember-metal/core', 'ember-metal/util
6919
6925
  args[_key2] = arguments[_key2];
6920
6926
  }
6921
6927
 
6922
- return run.join.apply(run, _toConsumableArray(curried.concat(args)));
6928
+ return run.join.apply(run, curried.concat(args));
6923
6929
  };
6924
6930
  };
6925
6931
 
@@ -7090,12 +7096,12 @@ enifed('ember-metal/run_loop', ['exports', 'ember-metal/core', 'ember-metal/util
7090
7096
  @return {Object} Timer information for use in cancelling, see `run.cancel`.
7091
7097
  */
7092
7098
  run.once = function () {
7093
- for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
7094
- args[_key] = arguments[_key];
7099
+ for (var _len3 = arguments.length, args = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
7100
+ args[_key3] = arguments[_key3];
7095
7101
  }
7096
7102
 
7097
7103
  checkAutoRun();
7098
- args.unshift("actions");
7104
+ args.unshift('actions');
7099
7105
  return backburner.scheduleOnce.apply(backburner, args);
7100
7106
  };
7101
7107
 
@@ -7214,8 +7220,8 @@ enifed('ember-metal/run_loop', ['exports', 'ember-metal/core', 'ember-metal/util
7214
7220
  @return {Object} Timer information for use in cancelling, see `run.cancel`.
7215
7221
  */
7216
7222
  run.next = function () {
7217
- for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
7218
- args[_key] = arguments[_key];
7223
+ for (var _len4 = arguments.length, args = Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
7224
+ args[_key4] = arguments[_key4];
7219
7225
  }
7220
7226
 
7221
7227
  args.push(1);
@@ -7391,7 +7397,7 @@ enifed('ember-metal/run_loop', ['exports', 'ember-metal/core', 'ember-metal/util
7391
7397
  // Make sure it's not an autorun during testing
7392
7398
  function checkAutoRun() {
7393
7399
  if (!run.currentRunLoop) {
7394
- Ember['default'].assert("You have turned on testing mode, which disabled the run-loop's autorun.\n You will need to wrap any code with asynchronous side-effects in a run", !Ember['default'].testing);
7400
+ Ember['default'].assert('You have turned on testing mode, which disabled the run-loop\'s autorun.\n You will need to wrap any code with asynchronous side-effects in a run', !Ember['default'].testing);
7395
7401
  }
7396
7402
  }
7397
7403
 
@@ -7609,7 +7615,7 @@ enifed('ember-metal/streams/stream', ['exports', 'ember-metal/platform/create',
7609
7615
  }
7610
7616
  };
7611
7617
 
7612
- /**
7618
+ /*
7613
7619
  @public
7614
7620
  @class Stream
7615
7621
  @namespace Ember.stream
@@ -7860,7 +7866,7 @@ enifed('ember-metal/streams/utils', ['exports', './stream'], function (exports,
7860
7866
  exports.concat = concat;
7861
7867
  exports.chain = chain;
7862
7868
 
7863
- /**
7869
+ /*
7864
7870
  Check whether an object is a stream or not
7865
7871
 
7866
7872
  @public
@@ -9117,22 +9123,22 @@ enifed('ember-template-compiler/compat/precompile', ['exports', 'ember-template-
9117
9123
  var compile, compileSpec;
9118
9124
 
9119
9125
  exports['default'] = function (string) {
9120
- if ((!compile || !compileSpec) && Ember.__loader.registry["htmlbars-compiler/compiler"]) {
9121
- var Compiler = requireModule("htmlbars-compiler/compiler");
9126
+ if ((!compile || !compileSpec) && Ember.__loader.registry['htmlbars-compiler/compiler']) {
9127
+ var Compiler = requireModule('htmlbars-compiler/compiler');
9122
9128
 
9123
9129
  compile = Compiler.compile;
9124
9130
  compileSpec = Compiler.compileSpec;
9125
9131
  }
9126
9132
 
9127
9133
  if (!compile || !compileSpec) {
9128
- throw new Error("Cannot call `precompile` without the template compiler loaded. Please load `ember-template-compiler.js` prior to calling `precompile`.");
9134
+ throw new Error('Cannot call `precompile` without the template compiler loaded. Please load `ember-template-compiler.js` prior to calling `precompile`.');
9129
9135
  }
9130
9136
 
9131
9137
  var asObject = arguments[1] === undefined ? true : arguments[1];
9132
9138
  var compileFunc = asObject ? compile : compileSpec;
9133
9139
 
9134
9140
  return compileFunc(string, compileOptions['default']());
9135
- };
9141
+ }
9136
9142
 
9137
9143
  });
9138
9144
  enifed('ember-template-compiler/plugins', ['exports'], function (exports) {
@@ -9152,7 +9158,7 @@ enifed('ember-template-compiler/plugins', ['exports'], function (exports) {
9152
9158
  };
9153
9159
  function registerPlugin(type, Plugin) {
9154
9160
  if (!plugins[type]) {
9155
- throw new Error("Attempting to register \"" + Plugin + "\" as \"" + type + "\" which is not a valid HTMLBars plugin type.");
9161
+ throw new Error('Attempting to register "' + Plugin + '" as "' + type + '" which is not a valid HTMLBars plugin type.');
9156
9162
  }
9157
9163
 
9158
9164
  plugins[type].push(Plugin);
@@ -9188,9 +9194,10 @@ enifed('ember-template-compiler/plugins/transform-each-in-to-hash', ['exports'],
9188
9194
  @class TransformEachInToHash
9189
9195
  @private
9190
9196
  */
9191
- function TransformEachInToHash() {
9197
+ function TransformEachInToHash(options) {
9192
9198
  // set later within HTMLBars to the syntax package
9193
9199
  this.syntax = null;
9200
+ this.options = options || {};
9194
9201
  }
9195
9202
 
9196
9203
  /**
@@ -9207,7 +9214,7 @@ enifed('ember-template-compiler/plugins/transform-each-in-to-hash', ['exports'],
9207
9214
  if (pluginContext.validate(node)) {
9208
9215
 
9209
9216
  if (node.program && node.program.blockParams.length) {
9210
- throw new Error("You cannot use keyword (`{{each foo in bar}}`) and block params (`{{each bar as |foo|}}`) at the same time.");
9217
+ throw new Error('You cannot use keyword (`{{each foo in bar}}`) and block params (`{{each bar as |foo|}}`) at the same time.');
9211
9218
  }
9212
9219
 
9213
9220
  var removedParams = node.sexpr.params.splice(0, 2);
@@ -9218,7 +9225,7 @@ enifed('ember-template-compiler/plugins/transform-each-in-to-hash', ['exports'],
9218
9225
  node.sexpr.hash = b.hash();
9219
9226
  }
9220
9227
 
9221
- node.sexpr.hash.pairs.push(b.pair("keyword", b.string(keyword)));
9228
+ node.sexpr.hash.pairs.push(b.pair('keyword', b.string(keyword)));
9222
9229
  }
9223
9230
  });
9224
9231
 
@@ -9226,7 +9233,7 @@ enifed('ember-template-compiler/plugins/transform-each-in-to-hash', ['exports'],
9226
9233
  };
9227
9234
 
9228
9235
  TransformEachInToHash.prototype.validate = function TransformEachInToHash_validate(node) {
9229
- return (node.type === "BlockStatement" || node.type === "MustacheStatement") && node.sexpr.path.original === "each" && node.sexpr.params.length === 3 && node.sexpr.params[1].type === "PathExpression" && node.sexpr.params[1].original === "in";
9236
+ return (node.type === 'BlockStatement' || node.type === 'MustacheStatement') && node.sexpr.path.original === 'each' && node.sexpr.params.length === 3 && node.sexpr.params[1].type === 'PathExpression' && node.sexpr.params[1].original === 'in';
9230
9237
  };
9231
9238
 
9232
9239
  exports['default'] = TransformEachInToHash;
@@ -9259,9 +9266,10 @@ enifed('ember-template-compiler/plugins/transform-with-as-to-hash', ['exports'],
9259
9266
  @private
9260
9267
  @class TransformWithAsToHash
9261
9268
  */
9262
- function TransformWithAsToHash() {
9269
+ function TransformWithAsToHash(options) {
9263
9270
  // set later within HTMLBars to the syntax package
9264
9271
  this.syntax = null;
9272
+ this.options = options;
9265
9273
  }
9266
9274
 
9267
9275
  /**
@@ -9272,6 +9280,7 @@ enifed('ember-template-compiler/plugins/transform-with-as-to-hash', ['exports'],
9272
9280
  TransformWithAsToHash.prototype.transform = function TransformWithAsToHash_transform(ast) {
9273
9281
  var pluginContext = this;
9274
9282
  var walker = new pluginContext.syntax.Walker();
9283
+ var moduleName = this.options.moduleName;
9275
9284
 
9276
9285
  walker.visit(ast, function (node) {
9277
9286
  if (pluginContext.validate(node)) {
@@ -9280,6 +9289,8 @@ enifed('ember-template-compiler/plugins/transform-with-as-to-hash', ['exports'],
9280
9289
  throw new Error("You cannot use keyword (`{{with foo as bar}}`) and block params (`{{with foo as |bar|}}`) at the same time.");
9281
9290
  }
9282
9291
 
9292
+ Ember.deprecate("Using {{with}} without block syntax is deprecated. " + "Please use standard block form (`{{#with foo as |bar|}}`) " + (moduleName ? " in `" + moduleName + "` " : "") + "instead.", false, { url: "http://emberjs.com/deprecations/v1.x/#toc_code-as-code-sytnax-for-code-with-code" });
9293
+
9283
9294
  var removedParams = node.sexpr.params.splice(1, 2);
9284
9295
  var keyword = removedParams[1].original;
9285
9296
  node.program.blockParams = [keyword];
@@ -9300,13 +9311,18 @@ enifed('ember-template-compiler/system/compile', ['exports', 'ember-template-com
9300
9311
 
9301
9312
  'use strict';
9302
9313
 
9303
- /**
9304
- @module ember
9305
- @submodule ember-template-compiler
9306
- */
9307
9314
 
9308
- var compile;
9309
- exports['default'] = function (templateString) {
9315
+ var compile; /**
9316
+ Uses HTMLBars `compile` function to process a string into a compiled template.
9317
+
9318
+ This is not present in production builds.
9319
+
9320
+ @private
9321
+ @method compile
9322
+ @param {String} templateString This is the string to be compiled by HTMLBars.
9323
+ @param {Object} options This is an options hash to augment the compiler options.
9324
+ */
9325
+ exports['default'] = function (templateString, options) {
9310
9326
  if (!compile && Ember.__loader.registry["htmlbars-compiler/compiler"]) {
9311
9327
  compile = requireModule("htmlbars-compiler/compiler").compile;
9312
9328
  }
@@ -9315,10 +9331,10 @@ enifed('ember-template-compiler/system/compile', ['exports', 'ember-template-com
9315
9331
  throw new Error("Cannot call `compile` without the template compiler loaded. Please load `ember-template-compiler.js` prior to calling `compile`.");
9316
9332
  }
9317
9333
 
9318
- var templateSpec = compile(templateString, compileOptions['default']());
9334
+ var templateSpec = compile(templateString, compileOptions['default'](options));
9319
9335
 
9320
9336
  return template['default'](templateSpec);
9321
- };
9337
+ }
9322
9338
 
9323
9339
  });
9324
9340
  enifed('ember-template-compiler/system/compile_options', ['exports', 'ember-metal/core', 'ember-template-compiler/plugins'], function (exports, Ember, plugins) {
@@ -9330,17 +9346,23 @@ enifed('ember-template-compiler/system/compile_options', ['exports', 'ember-meta
9330
9346
  @submodule ember-template-compiler
9331
9347
  */
9332
9348
 
9333
- exports['default'] = function () {
9349
+ exports['default'] = function (_options) {
9334
9350
  var disableComponentGeneration = true;
9335
9351
 
9336
- return {
9337
- revision: "Ember@1.12.0-beta.1",
9352
+ var options = _options || {};
9353
+ // When calling `Ember.Handlebars.compile()` a second argument of `true`
9354
+ // had a special meaning (long since lost), this just gaurds against
9355
+ // `options` being true, and causing an error during compilation.
9356
+ if (options === true) {
9357
+ options = {};
9358
+ }
9338
9359
 
9339
- disableComponentGeneration: disableComponentGeneration,
9360
+ options.revision = "Ember@1.12.0-beta.3";
9361
+ options.disableComponentGeneration = disableComponentGeneration;
9362
+ options.plugins = plugins['default'];
9340
9363
 
9341
- plugins: plugins['default']
9342
- };
9343
- };
9364
+ return options;
9365
+ }
9344
9366
 
9345
9367
  });
9346
9368
  enifed('ember-template-compiler/system/precompile', ['exports', 'ember-template-compiler/system/compile_options'], function (exports, compileOptions) {
@@ -9364,17 +9386,17 @@ enifed('ember-template-compiler/system/precompile', ['exports', 'ember-template-
9364
9386
  @method precompile
9365
9387
  @param {String} templateString This is the string to be compiled by HTMLBars.
9366
9388
  */
9367
- exports['default'] = function (templateString) {
9368
- if (!compileSpec && Ember.__loader.registry["htmlbars-compiler/compiler"]) {
9369
- compileSpec = requireModule("htmlbars-compiler/compiler").compileSpec;
9389
+ exports['default'] = function (templateString, options) {
9390
+ if (!compileSpec && Ember.__loader.registry['htmlbars-compiler/compiler']) {
9391
+ compileSpec = requireModule('htmlbars-compiler/compiler').compileSpec;
9370
9392
  }
9371
9393
 
9372
9394
  if (!compileSpec) {
9373
- throw new Error("Cannot call `compileSpec` without the template compiler loaded. Please load `ember-template-compiler.js` prior to calling `compileSpec`.");
9395
+ throw new Error('Cannot call `compileSpec` without the template compiler loaded. Please load `ember-template-compiler.js` prior to calling `compileSpec`.');
9374
9396
  }
9375
9397
 
9376
- return compileSpec(templateString, compileOptions['default']());
9377
- };
9398
+ return compileSpec(templateString, compileOptions['default'](options));
9399
+ }
9378
9400
 
9379
9401
  });
9380
9402
  enifed('ember-template-compiler/system/template', ['exports'], function (exports) {
@@ -9400,7 +9422,7 @@ enifed('ember-template-compiler/system/template', ['exports'], function (exports
9400
9422
  templateSpec.isMethod = false;
9401
9423
 
9402
9424
  return templateSpec;
9403
- };
9425
+ }
9404
9426
 
9405
9427
  });
9406
9428
  enifed("htmlbars-compiler",
@@ -10294,7 +10316,7 @@ enifed("htmlbars-compiler/template-compiler",
10294
10316
 
10295
10317
  function TemplateCompiler(options) {
10296
10318
  this.options = options || {};
10297
- this.revision = this.options.revision || "HTMLBars@v0.11.2";
10319
+ this.revision = this.options.revision || "HTMLBars@v0.11.3";
10298
10320
  this.fragmentOpcodeCompiler = new FragmentOpcodeCompiler();
10299
10321
  this.fragmentCompiler = new FragmentJavaScriptCompiler();
10300
10322
  this.hydrationOpcodeCompiler = new HydrationOpcodeCompiler();
@@ -12487,7 +12509,7 @@ enifed("htmlbars-syntax/parser",
12487
12509
 
12488
12510
  if (options && options.plugins && options.plugins.ast) {
12489
12511
  for (var i = 0, l = options.plugins.ast.length; i < l; i++) {
12490
- var plugin = new options.plugins.ast[i]();
12512
+ var plugin = new options.plugins.ast[i](options);
12491
12513
 
12492
12514
  plugin.syntax = syntax;
12493
12515