Skip to content

Commit

Permalink
Merge pull request #11439 from cibernox/remove-deprecated-cp-macros
Browse files Browse the repository at this point in the history
[CLEANUP beta] Remove deprecated macros
  • Loading branch information
mixonic committed Jun 14, 2015
2 parents e8124a4 + badfdec commit a9e3831
Show file tree
Hide file tree
Showing 2 changed files with 0 additions and 120 deletions.
78 changes: 0 additions & 78 deletions packages/ember-metal/lib/computed_macros.js
Original file line number Diff line number Diff line change
Expand Up @@ -475,42 +475,6 @@ export var or = generateComputedWithProperties(function(properties) {
return false;
});

/**
A computed property that returns the first truthy value
from a list of dependent properties.
Example
```javascript
var Hamster = Ember.Object.extend({
hasClothes: Ember.computed.any('hat', 'shirt')
});
var hamster = Hamster.create();
hamster.get('hasClothes'); // null
hamster.set('shirt', 'Hawaiian Shirt');
hamster.get('hasClothes'); // 'Hawaiian Shirt'
```
@method any
@for Ember.computed
@param {String} dependentKey*
@return {Ember.ComputedProperty} computed property which returns
the first truthy value of given list of properties.
@deprecated Use `Ember.computed.or` instead.
@public
*/
export var any = generateComputedWithProperties(function(properties) {
Ember.deprecate('Usage of Ember.computed.any is deprecated, use `Ember.computed.or` instead.');
for (var key in properties) {
if (properties.hasOwnProperty(key) && properties[key]) {
return properties[key];
}
}
return null;
});

/**
A computed property that returns the array of values
for the provided dependent properties.
Expand Down Expand Up @@ -667,48 +631,6 @@ export function readOnly(dependentKey) {
return alias(dependentKey).readOnly();
}

/**
A computed property that acts like a standard getter and setter,
but returns the value at the provided `defaultPath` if the
property itself has not been set to a value
Example
```javascript
var Hamster = Ember.Object.extend({
wishList: Ember.computed.defaultTo('favoriteFood')
});
var hamster = Hamster.create({ favoriteFood: 'Banana' });
hamster.get('wishList'); // 'Banana'
hamster.set('wishList', 'More Unit Tests');
hamster.get('wishList'); // 'More Unit Tests'
hamster.get('favoriteFood'); // 'Banana'
```
@method defaultTo
@for Ember.computed
@param {String} defaultPath
@return {Ember.ComputedProperty} computed property which acts like
a standard getter and setter, but defaults to the value from `defaultPath`.
@deprecated Use `Ember.computed.oneWay` or custom CP with default instead.
@public
*/
export function defaultTo(defaultPath) {
return computed({
get(key) {
Ember.deprecate('Usage of Ember.computed.defaultTo is deprecated, use `Ember.computed.oneWay` instead.');
return get(this, defaultPath);
},

set(key, newValue, cachedValue) {
Ember.deprecate('Usage of Ember.computed.defaultTo is deprecated, use `Ember.computed.oneWay` instead.');
return newValue != null ? newValue : get(this, defaultPath);
}
});
}

/**
Creates a new property that is an alias for another property
on an object. Calls to `get` or `set` this property behave as
Expand Down
42 changes: 0 additions & 42 deletions packages/ember-runtime/tests/computed/computed_macros_test.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,9 @@ import {
lte,
oneWay,
readOnly,
defaultTo,
deprecatingAlias,
and,
or,
any,
collect
} from "ember-metal/computed_macros";
import alias from 'ember-metal/alias';
Expand Down Expand Up @@ -155,34 +153,6 @@ testBoth('computed.alias set', function(get, set) {
equal(get(obj, 'aliased'), constantValue);
});

testBoth('computed.defaultTo', function(get, set) {
expect(6);

var obj = { source: 'original source value' };
defineProperty(obj, 'copy', defaultTo('source'));

ignoreDeprecation(function() {
equal(get(obj, 'copy'), 'original source value');

set(obj, 'copy', 'new copy value');
equal(get(obj, 'source'), 'original source value');
equal(get(obj, 'copy'), 'new copy value');

set(obj, 'source', 'new source value');
equal(get(obj, 'copy'), 'new copy value');

set(obj, 'copy', null);
equal(get(obj, 'copy'), 'new source value');
});

expectDeprecation(function() {
var obj = { source: 'original source value' };
defineProperty(obj, 'copy', defaultTo('source'));

get(obj, 'copy');
}, 'Usage of Ember.computed.defaultTo is deprecated, use `Ember.computed.oneWay` instead.');
});

testBoth('computed.match', function(get, set) {
var obj = { name: 'Paul' };
defineProperty(obj, 'isPaul', match('name', /Paul/));
Expand Down Expand Up @@ -315,18 +285,6 @@ testBoth('computed.or', function(get, set) {
equal(get(obj, 'oneOrTwo'), 1, 'returns truthy value as in ||');
});

testBoth('computed.any (Deprecated)', function(get, set) {
expectDeprecation(/Usage of Ember.computed.any is deprecated, use `Ember.computed.or` instead/);
var obj = { one: 'foo', two: 'bar' };
defineProperty(obj, 'anyOf', any('one', 'two'));

equal(get(obj, 'anyOf'), 'foo', 'is foo');

set(obj, 'one', false);

equal(get(obj, 'anyOf'), 'bar', 'is bar');
});

testBoth('computed.collect', function(get, set) {
var obj = { one: 'foo', two: 'bar', three: null };
defineProperty(obj, 'all', collect('one', 'two', 'three', 'four'));
Expand Down

0 comments on commit a9e3831

Please sign in to comment.