dist/ember-template-compiler.js in ember-source-2.0.0.beta.2 vs dist/ember-template-compiler.js in ember-source-2.0.0.beta.3

- old
+ new

@@ -3,11 +3,11 @@ * @copyright Copyright 2011-2015 Tilde Inc. and contributors * Portions Copyright 2006-2011 Strobe Inc. * Portions Copyright 2008-2011 Apple Inc. All rights reserved. * @license Licensed under MIT license * See https://raw.github.com/emberjs/ember.js/master/LICENSE - * @version 2.0.0-beta.2 + * @version 2.0.0-beta.3 */ (function() { var enifed, requireModule, eriuqer, requirejs, Ember; var mainContext = this; @@ -1556,24 +1556,18 @@ _emberMetalCore.default.cacheFor = _emberMetalComputed.cacheFor; _emberMetalCore.default.addObserver = _emberMetalObserver.addObserver; _emberMetalCore.default.observersFor = _emberMetalObserver.observersFor; _emberMetalCore.default.removeObserver = _emberMetalObserver.removeObserver; - _emberMetalCore.default.addBeforeObserver = _emberMetalCore.default.deprecateFunc('Ember.addBeforeObserver is deprecated and will be removed in the near future.', { url: 'http://emberjs.com/deprecations/v1.x/#toc_beforeobserver' }, _emberMetalObserver._addBeforeObserver); - _emberMetalCore.default._suspendBeforeObserver = _emberMetalObserver._suspendBeforeObserver; - _emberMetalCore.default._suspendBeforeObservers = _emberMetalObserver._suspendBeforeObservers; _emberMetalCore.default._suspendObserver = _emberMetalObserver._suspendObserver; _emberMetalCore.default._suspendObservers = _emberMetalObserver._suspendObservers; - _emberMetalCore.default.beforeObserversFor = _emberMetalCore.default.deprecateFunc('Ember.beforeObserversFor is deprecated and will be removed in the near future.', { url: 'http://emberjs.com/deprecations/v1.x/#toc_beforeobserver' }, _emberMetalObserver._beforeObserversFor); - _emberMetalCore.default.removeBeforeObserver = _emberMetalCore.default.deprecateFunc('Ember.removeBeforeObserver is deprecated and will be removed in the near future.', { url: 'http://emberjs.com/deprecations/v1.x/#toc_beforeobserver' }, _emberMetalObserver._removeBeforeObserver); _emberMetalCore.default.IS_BINDING = _emberMetalMixin.IS_BINDING; _emberMetalCore.default.required = _emberMetalMixin.required; _emberMetalCore.default.aliasMethod = _emberMetalMixin.aliasMethod; _emberMetalCore.default.observer = _emberMetalMixin.observer; _emberMetalCore.default.immediateObserver = _emberMetalMixin._immediateObserver; - _emberMetalCore.default.beforeObserver = _emberMetalCore.default.deprecateFunc('Ember.beforeObserver is deprecated and will be removed in the near future.', { url: 'http://emberjs.com/deprecations/v1.x/#toc_beforeobserver' }, _emberMetalMixin._beforeObserver); _emberMetalCore.default.mixin = _emberMetalMixin.mixin; _emberMetalCore.default.Mixin = _emberMetalMixin.Mixin; _emberMetalCore.default.oneWay = _emberMetalBinding.oneWay; _emberMetalCore.default.bind = _emberMetalBinding.bind; @@ -1629,10 +1623,11 @@ _emberMetalCore.default.onerror = null; // END EXPORTS // do this for side-effects of updating Ember.assert, warn, etc when // ember-debug is present + // This needs to be called before any deprecateFunc if (_emberMetalCore.default.__loader.registry['ember-debug']) { requireModule('ember-debug'); } _emberMetalCore.default.create = _emberMetalCore.default.deprecateFunc('Ember.create is deprecated in favor of Object.create', Object.create); @@ -2013,33 +2008,11 @@ @static */ to: function (to) { var C = this; return new C(to, undefined); - }, - - /** - Creates a new Binding instance and makes it apply in a single direction. - A one-way binding will relay changes on the `from` side object (supplied - as the `from` argument) the `to` side, but not the other way around. - This means that if you change the "to" side directly, the "from" side may have - a different value. - See `Binding.oneWay`. - @method oneWay - @param {String} from from path. - @param {Boolean} [flag] (Optional) passing nothing here will make the - binding `oneWay`. You can instead pass `false` to disable `oneWay`, making the - binding two way again. - @return {Ember.Binding} `this` - @public - */ - oneWay: function (from, flag) { - _emberMetalCore.default.deprecate('Ember.oneWay has been deprecated. Please use Ember.computed.oneWay instead.', false); - var C = this; - return new C(undefined, from).oneWay(flag); } - }); /** An `Ember.Binding` connects the properties of two objects so that whenever the value of one property changes, the other property will be changed also. @@ -3979,11 +3952,11 @@ cross-platform libraries such as jQuery. For more details, see [Ember-Runtime](http://emberjs.com/api/modules/ember-runtime.html). @class Ember @static - @version 2.0.0-beta.2 + @version 2.0.0-beta.3 @public */ if ('undefined' === typeof Ember) { // Create core object. Make it act like an instance of Ember.Namespace so that @@ -4011,15 +3984,15 @@ /** The semantic version. @property VERSION @type String - @default '2.0.0-beta.2' + @default '2.0.0-beta.3' @static @public */ - Ember.VERSION = '2.0.0-beta.2'; + Ember.VERSION = '2.0.0-beta.3'; /** The hash of environment variables used to control various configuration settings. To specify your own or override default settings, add the desired properties to a global hash named `EmberENV` (or `ENV` for @@ -4143,12 +4116,16 @@ } if ('undefined' === typeof Ember.deprecate) { Ember.deprecate = K; } if ('undefined' === typeof Ember.deprecateFunc) { - Ember.deprecateFunc = function (_, func) { - return func; + Ember.deprecateFunc = function () { + for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + + return args[args.length - 1]; }; } exports.default = Ember; }); @@ -4977,11 +4954,11 @@ @method getProperties @for Ember @param {Object} obj @param {String...|Array} list of keys to get @return {Object} - @private + @public */ function getProperties(obj) { var ret = {}; var propertyNames = arguments; @@ -5017,13 +4994,13 @@ this._super$Constructor(injectedPropertyGet); AliasedPropertyPrototype.oneWay.call(this); } function injectedPropertyGet(keyName) { - var possibleDesc = this[keyName]; - var desc = possibleDesc !== null && typeof possibleDesc === 'object' && possibleDesc.isDescriptor ? possibleDesc : undefined; + var desc = this[keyName]; + _emberMetalCore.default.assert('InjectedProperties should be defined with the Ember.inject computed property macros.', desc && desc.isDescriptor && desc.type); _emberMetalCore.default.assert('Attempting to lookup an injected property on an object without a container, ensure that the object was instantiated via a container.', this.container); return this.container.lookup(desc.type + ':' + (desc.name || keyName)); } @@ -5806,24 +5783,10 @@ return this; }, /** - @deprecated - @method remove - @param obj - @param _guid (optional and for internal use only) - @return {Boolean} - @private - */ - remove: function (obj, _guid) { - _emberMetalCore.default.deprecate('Calling `OrderedSet.prototype.remove` has been deprecated, please use `OrderedSet.prototype.delete` instead.', this._silenceRemoveDeprecation); - - return this.delete(obj, _guid); - }, - - /** @since 1.8.0 @method delete @param obj @param _guid (optional and for internal use only) @return {Boolean} @@ -6031,25 +5994,11 @@ return this; }, /** - @deprecated see delete Removes a value from the map for an associated key. - @method remove - @param {*} key - @return {Boolean} true if an item was removed, false otherwise - @private - */ - remove: function (key) { - _emberMetalCore.default.deprecate('Calling `Map.prototype.remove` has been deprecated, please use `Map.prototype.delete` instead.'); - - return this.delete(key); - }, - - /** - Removes a value from the map for an associated key. @since 1.8.0 @method delete @param {*} key @return {Boolean} true if an item was removed, false otherwise @private @@ -7128,40 +7077,29 @@ @return func @private */ function observer() { - for (var _len4 = arguments.length, args = Array(_len4), _key4 = 0; _key4 < _len4; _key4++) { - args[_key4] = arguments[_key4]; + for (var _len4 = arguments.length, paths = Array(_len4), _key4 = 0; _key4 < _len4; _key4++) { + paths[_key4] = arguments[_key4]; } - var func = args.slice(-1)[0]; - var paths; - + var func = paths.pop(); + var expandedPaths = []; var addWatchedProperty = function (path) { - paths.push(path); + expandedPaths.push(path); }; - var _paths = args.slice(0, -1); - if (typeof func !== 'function') { - // revert to old, soft-deprecated argument ordering - - func = args[0]; - _paths = args.slice(1); + for (var i = 0; i < paths.length; ++i) { + _emberMetalExpand_properties.default(paths[i], addWatchedProperty); } - paths = []; - - for (var i = 0; i < _paths.length; ++i) { - _emberMetalExpand_properties.default(_paths[i], addWatchedProperty); - } - if (typeof func !== 'function') { throw new _emberMetalCore.default.Error('Ember.observer called without a function'); } - func.__ember_observes__ = paths; + func.__ember_observes__ = expandedPaths; return func; } /** Specify a method that observes property changes. @@ -7212,14 +7150,10 @@ ```javascript App.PersonView = Ember.View.extend({ friends: [{ name: 'Tom' }, { name: 'Stefan' }, { name: 'Kris' }], - valueWillChange: Ember.beforeObserver('content.value', function(obj, keyName) { - this.changingFrom = obj.get(keyName); - }), - valueDidChange: Ember.observer('content.value', function(obj, keyName) { // only run if updating a value already in the DOM if (this.get('state') === 'inDOM') { var color = obj.get(keyName) > this.changingFrom ? 'green' : 'red'; // logic @@ -7294,15 +7228,12 @@ enifed('ember-metal/observer', ['exports', 'ember-metal/watching', 'ember-metal/events'], function (exports, _emberMetalWatching, _emberMetalEvents) { exports.addObserver = addObserver; exports.observersFor = observersFor; exports.removeObserver = removeObserver; exports._addBeforeObserver = _addBeforeObserver; - exports._suspendBeforeObserver = _suspendBeforeObserver; exports._suspendObserver = _suspendObserver; - exports._suspendBeforeObservers = _suspendBeforeObservers; exports._suspendObservers = _suspendObservers; - exports._beforeObserversFor = _beforeObserversFor; exports._removeBeforeObserver = _removeBeforeObserver; /** @module ember-metal */ @@ -7377,32 +7308,19 @@ // Suspend observer during callback. // // This should only be used by the target of the observer // while it is setting the observed path. - function _suspendBeforeObserver(obj, path, target, method, callback) { - return _emberMetalEvents.suspendListener(obj, beforeEvent(path), target, method, callback); - } - function _suspendObserver(obj, path, target, method, callback) { return _emberMetalEvents.suspendListener(obj, changeEvent(path), target, method, callback); } - function _suspendBeforeObservers(obj, paths, target, method, callback) { - var events = paths.map(beforeEvent); - return _emberMetalEvents.suspendListeners(obj, events, target, method, callback); - } - function _suspendObservers(obj, paths, target, method, callback) { var events = paths.map(changeEvent); return _emberMetalEvents.suspendListeners(obj, events, target, method, callback); } - function _beforeObserversFor(obj, path) { - return _emberMetalEvents.listenersFor(obj, beforeEvent(path)); - } - /** @method removeBeforeObserver @for Ember @param obj @param {String} path @@ -8039,11 +7957,11 @@ exports.overrideChains = overrideChains; exports.beginPropertyChanges = beginPropertyChanges; exports.endPropertyChanges = endPropertyChanges; exports.changeProperties = changeProperties; }); -enifed('ember-metal/property_get', ['exports', 'ember-metal/core', 'ember-metal/features', 'ember-metal/error', 'ember-metal/path_cache', 'ember-metal/utils', 'ember-metal/is_none'], function (exports, _emberMetalCore, _emberMetalFeatures, _emberMetalError, _emberMetalPath_cache, _emberMetalUtils, _emberMetalIs_none) { +enifed('ember-metal/property_get', ['exports', 'ember-metal/core', 'ember-metal/features', 'ember-metal/error', 'ember-metal/path_cache', 'ember-metal/utils'], function (exports, _emberMetalCore, _emberMetalFeatures, _emberMetalError, _emberMetalPath_cache, _emberMetalUtils) { exports.get = get; exports.normalizeTuple = normalizeTuple; exports._getPath = _getPath; exports.getWithDefault = getWithDefault; @@ -8086,28 +8004,21 @@ @return {Object} the property value or `null`. @public */ function get(obj, keyName) { + _emberMetalCore.default.assert('Get must be called with two arguments; an object and a property key', arguments.length === 2); + _emberMetalCore.default.assert('Cannot call get with \'' + keyName + '\' on an undefined object.', obj !== undefined && obj !== null); + _emberMetalCore.default.assert('The key provided to get must be a string, you passed ' + keyName, typeof keyName === 'string'); + _emberMetalCore.default.assert('\'this\' in paths is not supported', !_emberMetalPath_cache.hasThis(keyName)); + // Helpers that operate with 'this' within an #each if (keyName === '') { return obj; } - if (!keyName && 'string' === typeof obj) { - keyName = obj; - obj = _emberMetalCore.default.lookup; - } - - _emberMetalCore.default.assert('Cannot call get with ' + keyName + ' key.', !!keyName); - _emberMetalCore.default.assert('Cannot call get with \'' + keyName + '\' on an undefined object.', obj !== undefined); - - if (_emberMetalIs_none.default(obj)) { - return _getPath(obj, keyName); - } - - if (obj && typeof obj[INTERCEPT_GET] === 'function') { + if (typeof obj[INTERCEPT_GET] === 'function') { var result = obj[INTERCEPT_GET](obj, keyName); if (result !== UNHANDLED_GET) { return result; } } @@ -8201,11 +8112,11 @@ } parts = path.split('.'); len = parts.length; for (idx = 0; root != null && idx < len; idx++) { - root = get(root, parts[idx], true); + root = get(root, parts[idx]); if (root && root.isDestroyed) { return undefined; } } return root; @@ -8247,23 +8158,15 @@ @return {Object} the passed value. @public */ function set(obj, keyName, value, tolerant) { - if (typeof obj === 'string') { - _emberMetalCore.default.assert('Path \'' + obj + '\' must be global if no obj is given.', _emberMetalPath_cache.isGlobalPath(obj)); - value = keyName; - keyName = obj; - obj = _emberMetalCore.default.lookup; - } + _emberMetalCore.default.assert('Set must be called with tree or four arguments; an object, a property key, a value and tolerant true/false', arguments.length === 3 || arguments.length === 4); + _emberMetalCore.default.assert('Cannot call set with \'' + keyName + '\' on an undefined object.', obj !== undefined && obj !== null); + _emberMetalCore.default.assert('The key provided to set must be a string, you passed ' + keyName, typeof keyName === 'string'); + _emberMetalCore.default.assert('\'this\' in paths is not supported', !_emberMetalPath_cache.hasThis(keyName)); - _emberMetalCore.default.assert('Cannot call set with \'' + keyName + '\' key.', !!keyName); - - if (obj === _emberMetalCore.default.lookup) { - return setPath(obj, keyName, value, tolerant); - } - // This path exists purely to implement backwards-compatible // effects (specifically, setting a property on a view may // invoke a mutator on `attrs`). if (obj && typeof obj[INTERCEPT_SET] === 'function') { var result = obj[INTERCEPT_SET](obj, keyName, value, tolerant); @@ -8278,22 +8181,20 @@ possibleDesc = obj[keyName]; desc = possibleDesc !== null && typeof possibleDesc === 'object' && possibleDesc.isDescriptor ? possibleDesc : undefined; } var isUnknown, currentValue; - if ((!obj || desc === undefined) && _emberMetalPath_cache.isPath(keyName)) { + if (desc === undefined && _emberMetalPath_cache.isPath(keyName)) { return setPath(obj, keyName, value, tolerant); } - _emberMetalCore.default.assert('You need to provide an object and key to `set`.', !!obj && keyName !== undefined); _emberMetalCore.default.assert('calling set on destroyed object', !obj.isDestroyed); if (desc) { desc.set(obj, keyName, value); } else { - - if (obj !== null && value !== undefined && typeof obj === 'object' && obj[keyName] === value) { + if (value !== undefined && typeof obj === 'object' && obj[keyName] === value) { return value; } isUnknown = 'object' === typeof obj && !(keyName in obj); @@ -11088,26 +10989,26 @@ } }); /** @module ember-metal */ -enifed('ember-template-compiler', ['exports', 'ember-metal', 'ember-template-compiler/system/precompile', 'ember-template-compiler/system/compile', 'ember-template-compiler/system/template', 'ember-template-compiler/plugins', 'ember-template-compiler/plugins/transform-each-in-to-block-params', 'ember-template-compiler/plugins/transform-with-as-to-hash', 'ember-template-compiler/plugins/transform-each-into-collection', 'ember-template-compiler/plugins/transform-single-arg-each', 'ember-template-compiler/plugins/transform-old-binding-syntax', 'ember-template-compiler/plugins/transform-old-class-binding-syntax', 'ember-template-compiler/plugins/transform-item-class', 'ember-template-compiler/plugins/transform-component-attrs-into-mut', 'ember-template-compiler/plugins/transform-component-curly-to-readonly', 'ember-template-compiler/plugins/transform-angle-bracket-components', 'ember-template-compiler/plugins/transform-input-on-to-onEvent', 'ember-template-compiler/plugins/deprecate-view-and-controller-paths', 'ember-template-compiler/plugins/deprecate-view-helper', 'ember-template-compiler/compat'], function (exports, _emberMetal, _emberTemplateCompilerSystemPrecompile, _emberTemplateCompilerSystemCompile, _emberTemplateCompilerSystemTemplate, _emberTemplateCompilerPlugins, _emberTemplateCompilerPluginsTransformEachInToBlockParams, _emberTemplateCompilerPluginsTransformWithAsToHash, _emberTemplateCompilerPluginsTransformEachIntoCollection, _emberTemplateCompilerPluginsTransformSingleArgEach, _emberTemplateCompilerPluginsTransformOldBindingSyntax, _emberTemplateCompilerPluginsTransformOldClassBindingSyntax, _emberTemplateCompilerPluginsTransformItemClass, _emberTemplateCompilerPluginsTransformComponentAttrsIntoMut, _emberTemplateCompilerPluginsTransformComponentCurlyToReadonly, _emberTemplateCompilerPluginsTransformAngleBracketComponents, _emberTemplateCompilerPluginsTransformInputOnToOnEvent, _emberTemplateCompilerPluginsDeprecateViewAndControllerPaths, _emberTemplateCompilerPluginsDeprecateViewHelper, _emberTemplateCompilerCompat) { +enifed('ember-template-compiler', ['exports', 'ember-metal', 'ember-template-compiler/system/precompile', 'ember-template-compiler/system/compile', 'ember-template-compiler/system/template', 'ember-template-compiler/plugins', 'ember-template-compiler/plugins/transform-old-binding-syntax', 'ember-template-compiler/plugins/transform-old-class-binding-syntax', 'ember-template-compiler/plugins/transform-item-class', 'ember-template-compiler/plugins/transform-component-attrs-into-mut', 'ember-template-compiler/plugins/transform-component-curly-to-readonly', 'ember-template-compiler/plugins/transform-angle-bracket-components', 'ember-template-compiler/plugins/transform-input-on-to-onEvent', 'ember-template-compiler/plugins/transform-each-into-collection', 'ember-template-compiler/plugins/deprecate-view-and-controller-paths', 'ember-template-compiler/plugins/deprecate-view-helper', 'ember-template-compiler/compat'], function (exports, _emberMetal, _emberTemplateCompilerSystemPrecompile, _emberTemplateCompilerSystemCompile, _emberTemplateCompilerSystemTemplate, _emberTemplateCompilerPlugins, _emberTemplateCompilerPluginsTransformOldBindingSyntax, _emberTemplateCompilerPluginsTransformOldClassBindingSyntax, _emberTemplateCompilerPluginsTransformItemClass, _emberTemplateCompilerPluginsTransformComponentAttrsIntoMut, _emberTemplateCompilerPluginsTransformComponentCurlyToReadonly, _emberTemplateCompilerPluginsTransformAngleBracketComponents, _emberTemplateCompilerPluginsTransformInputOnToOnEvent, _emberTemplateCompilerPluginsTransformEachIntoCollection, _emberTemplateCompilerPluginsDeprecateViewAndControllerPaths, _emberTemplateCompilerPluginsDeprecateViewHelper, _emberTemplateCompilerCompat) { - _emberTemplateCompilerPlugins.registerPlugin('ast', _emberTemplateCompilerPluginsTransformWithAsToHash.default); - _emberTemplateCompilerPlugins.registerPlugin('ast', _emberTemplateCompilerPluginsTransformEachInToBlockParams.default); - _emberTemplateCompilerPlugins.registerPlugin('ast', _emberTemplateCompilerPluginsTransformSingleArgEach.default); - _emberTemplateCompilerPlugins.registerPlugin('ast', _emberTemplateCompilerPluginsTransformEachIntoCollection.default); _emberTemplateCompilerPlugins.registerPlugin('ast', _emberTemplateCompilerPluginsTransformOldBindingSyntax.default); _emberTemplateCompilerPlugins.registerPlugin('ast', _emberTemplateCompilerPluginsTransformOldClassBindingSyntax.default); _emberTemplateCompilerPlugins.registerPlugin('ast', _emberTemplateCompilerPluginsTransformItemClass.default); _emberTemplateCompilerPlugins.registerPlugin('ast', _emberTemplateCompilerPluginsTransformComponentAttrsIntoMut.default); _emberTemplateCompilerPlugins.registerPlugin('ast', _emberTemplateCompilerPluginsTransformComponentCurlyToReadonly.default); _emberTemplateCompilerPlugins.registerPlugin('ast', _emberTemplateCompilerPluginsTransformAngleBracketComponents.default); _emberTemplateCompilerPlugins.registerPlugin('ast', _emberTemplateCompilerPluginsTransformInputOnToOnEvent.default); - _emberTemplateCompilerPlugins.registerPlugin('ast', _emberTemplateCompilerPluginsDeprecateViewAndControllerPaths.default); - _emberTemplateCompilerPlugins.registerPlugin('ast', _emberTemplateCompilerPluginsDeprecateViewHelper.default); + if (_emberMetal.default.ENV._ENABLE_LEGACY_VIEW_SUPPORT) { + _emberTemplateCompilerPlugins.registerPlugin('ast', _emberTemplateCompilerPluginsTransformEachIntoCollection.default); + _emberTemplateCompilerPlugins.registerPlugin('ast', _emberTemplateCompilerPluginsDeprecateViewAndControllerPaths.default); + _emberTemplateCompilerPlugins.registerPlugin('ast', _emberTemplateCompilerPluginsDeprecateViewHelper.default); + } + exports._Ember = _emberMetal.default; exports.precompile = _emberTemplateCompilerSystemPrecompile.default; exports.compile = _emberTemplateCompilerSystemCompile.default; exports.template = _emberTemplateCompilerSystemTemplate.default; exports.registerPlugin = _emberTemplateCompilerPlugins.registerPlugin; @@ -11427,84 +11328,10 @@ } } exports.default = TransformComponentCurlyToReadonly; }); -enifed('ember-template-compiler/plugins/transform-each-in-to-block-params', ['exports', 'ember-metal/core', 'ember-template-compiler/system/calculate-location-display'], function (exports, _emberMetalCore, _emberTemplateCompilerSystemCalculateLocationDisplay) { - /** - @module ember - @submodule ember-htmlbars - */ - - /** - An HTMLBars AST transformation that replaces all instances of - - ```handlebars - {{#each item in items}} - {{/each}} - ``` - - with - - ```handlebars - {{#each items as |item|}} - {{/each}} - ``` - - @class TransformEachInToBlockParams - @private - */ - function TransformEachInToBlockParams(options) { - // set later within HTMLBars to the syntax package - this.syntax = null; - this.options = options; - } - - /** - @private - @method transform - @param {AST} ast The AST to be transformed. - */ - TransformEachInToBlockParams.prototype.transform = function TransformEachInToBlockParams_transform(ast) { - var b = this.syntax.builders; - var walker = new this.syntax.Walker(); - var moduleName = this.options.moduleName; - - walker.visit(ast, function (node) { - if (validate(node)) { - - var removedParams = node.params.splice(0, 2); - var keyword = removedParams[0].original; - var moduleInfo = undefined; - - if (node.type === 'BlockStatement') { - moduleInfo = _emberTemplateCompilerSystemCalculateLocationDisplay.default(moduleName, node.program.loc); - - if (node.program.blockParams.length) { - throw new Error('You cannot use keyword (`{{#each foo in bar}}`) and block params (`{{#each bar as |foo|}}`) at the same time ' + moduleInfo + '.'); - } - - node.program.blockParams = [keyword]; - } else { - moduleInfo = _emberTemplateCompilerSystemCalculateLocationDisplay.default(moduleName, node.loc); - - node.hash.pairs.push(b.pair('keyword', b.string(keyword))); - } - - _emberMetalCore.default.deprecate('Using the \'{{#each item in model}}\' form of the {{#each}} helper ' + moduleInfo + 'is deprecated. ' + 'Please use the block param form instead (\'{{#each model as |item|}}\').', false, { url: 'http://emberjs.com/guides/deprecations/#toc_code-in-code-syntax-for-code-each-code' }); - } - }); - - return ast; - }; - - function validate(node) { - return (node.type === 'BlockStatement' || node.type === 'MustacheStatement') && node.path.original === 'each' && node.params.length === 3 && node.params[1].type === 'PathExpression' && node.params[1].original === 'in'; - } - - exports.default = TransformEachInToBlockParams; -}); enifed('ember-template-compiler/plugins/transform-each-in-to-hash', ['exports'], function (exports) { /** @module ember @submodule ember-htmlbars */ @@ -12002,102 +11829,10 @@ } return segments; } }); -enifed('ember-template-compiler/plugins/transform-single-arg-each', ['exports'], function (exports) { - exports.default = TransformSingleArgEach; - - function TransformSingleArgEach() { - this.syntax = null; - } - - TransformSingleArgEach.prototype.transform = function TransformSingleArgEach_transform(ast) { - var b = this.syntax.builders; - var walker = new this.syntax.Walker(); - - walker.visit(ast, function (node) { - if (!validate(node)) { - return; - } - - node.params.push(b.path('this')); - }); - - return ast; - }; - - function validate(node) { - return (node.type === 'BlockStatement' || node.type === 'MustacheStatement') && node.path.original === 'each' && node.params.length === 0; - } -}); -enifed('ember-template-compiler/plugins/transform-with-as-to-hash', ['exports', 'ember-metal/core', 'ember-template-compiler/system/calculate-location-display'], function (exports, _emberMetalCore, _emberTemplateCompilerSystemCalculateLocationDisplay) { - - /** - An HTMLBars AST transformation that replaces all instances of - - ```handlebars - {{#with foo.bar as bar}} - {{/with}} - ``` - - with - - ```handlebars - {{#with foo.bar as |bar|}} - {{/with}} - ``` - - @private - @class TransformWithAsToHash - */ - function TransformWithAsToHash(options) { - // set later within HTMLBars to the syntax package - this.syntax = null; - this.options = options || {}; - } - - /** - @private - @method transform - @param {AST} ast The AST to be transformed. - */ - TransformWithAsToHash.prototype.transform = function TransformWithAsToHash_transform(ast) { - var pluginContext = this; - var walker = new pluginContext.syntax.Walker(); - var moduleName = this.options.moduleName; - - walker.visit(ast, function (node) { - if (pluginContext.validate(node)) { - - if (node.program && node.program.blockParams.length) { - throw new Error('You cannot use keyword (`{{with foo as bar}}`) and block params (`{{with foo as |bar|}}`) at the same time.'); - } - - var moduleInfo = _emberTemplateCompilerSystemCalculateLocationDisplay.default(moduleName, node.program.loc); - - _emberMetalCore.default.deprecate('Using {{with}} without block syntax ' + moduleInfo + 'is deprecated. ' + 'Please use standard block form (`{{#with foo as |bar|}}`) ' + 'instead.', false, { url: 'http://emberjs.com/deprecations/v1.x/#toc_code-as-code-sytnax-for-code-with-code' }); - - var removedParams = node.params.splice(1, 2); - var keyword = removedParams[1].original; - node.program.blockParams = [keyword]; - } - }); - - return ast; - }; - - TransformWithAsToHash.prototype.validate = function TransformWithAsToHash_validate(node) { - return node.type === 'BlockStatement' && node.path.original === 'with' && node.params.length === 3 && node.params[1].type === 'PathExpression' && node.params[1].original === 'as'; - }; - - exports.default = TransformWithAsToHash; -}); -/** -@module ember -@submodule ember-htmlbars -*/ enifed('ember-template-compiler/system/calculate-location-display', ['exports'], function (exports) { exports.default = calculateLocationDisplay; function calculateLocationDisplay(moduleName, _loc) { var loc = _loc || {}; @@ -12191,10 +11926,10 @@ } options.plugins = plugins; options.buildMeta = function buildMeta(program) { return { - revision: 'Ember@2.0.0-beta.2', + revision: 'Ember@2.0.0-beta.3', loc: program.loc, moduleName: options.moduleName }; }; \ No newline at end of file