Skip to content
Closed
21 changes: 11 additions & 10 deletions packages/ember-extension-support/lib/data_adapter.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,10 @@ import Namespace from 'ember-runtime/system/namespace';
import EmberObject from 'ember-runtime/system/object';
import { A as emberA } from 'ember-runtime/system/native_array';
import Application from 'ember-application/system/application';

import {
addArrayObserver,
objectAt
} from 'ember-runtime/mixins/array';
/**
@module ember
@submodule ember-extension-support
Expand Down Expand Up @@ -40,7 +43,7 @@ import Application from 'ember-application/system/application';

```javascript
Application.initializer({
name: "data-adapter",
name: 'data-adapter',

initialize: function(container, application) {
application.register('data-adapter:main', DS.DataAdapter);
Expand Down Expand Up @@ -162,7 +165,7 @@ export default EmberObject.extend({
typesAdded(typesToSend);

var release = () => {
releaseMethods.forEach((fn) => fn() );
releaseMethods.forEach(fn => fn());
this.releaseMethods.removeObject(release);
};
this.releaseMethods.pushObject(release);
Expand Down Expand Up @@ -218,7 +221,7 @@ export default EmberObject.extend({

var contentDidChange = (array, idx, removedCount, addedCount) => {
for (var i = idx; i < idx + addedCount; i++) {
var record = array.objectAt(i);
var record = objectAt(array, i);
var wrapped = this.wrapRecord(record);
releaseMethods.push(this.observeRecord(record, recordUpdated));
recordsAdded([wrapped]);
Expand All @@ -230,10 +233,10 @@ export default EmberObject.extend({
};

var observer = { didChange: contentDidChange, willChange() { return this; } };
records.addArrayObserver(this, observer);
addArrayObserver(records, this, observer);

release = () => {
releaseMethods.forEach(function(fn) { fn(); });
releaseMethods.forEach(fn => fn());
records.removeArrayObserver(this, observer);
this.releaseMethods.removeObject(release);
};
Expand All @@ -251,9 +254,7 @@ export default EmberObject.extend({
*/
willDestroy() {
this._super(...arguments);
this.releaseMethods.forEach(function(fn) {
fn();
});
this.releaseMethods.forEach(fn => fn());
},

/**
Expand Down Expand Up @@ -309,7 +310,7 @@ export default EmberObject.extend({
willChange() { return this; }
};

records.addArrayObserver(this, observer);
addArrayObserver(records, this, observer);

var release = () => {
records.removeArrayObserver(this, observer);
Expand Down
6 changes: 3 additions & 3 deletions packages/ember-htmlbars/tests/helpers/collection_test.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,24 +14,24 @@ import CollectionView from 'ember-views/views/collection_view';
import EmberView from 'ember-views/views/view';
import jQuery from 'ember-views/system/jquery';
import compile from 'ember-template-compiler/system/compile';
import { objectAt } from 'ember-runtime/mixins/array';

var trim = jQuery.trim;


var view;

var originalLookup = Ember.lookup;
var TemplateTests, registry, container, lookup;


function nthChild(view, nth) {
return get(view, 'childViews').objectAt(nth || 0);
return objectAt(get(view, 'childViews'), nth || 0);
}

var firstChild = nthChild;

function firstGrandchild(view) {
return get(get(view, 'childViews').objectAt(0), 'childViews').objectAt(0);
return objectAt(get(objectAt(get(view, 'childViews'), 0), 'childViews'), 0);
}

QUnit.module('collection helper', {
Expand Down
3 changes: 2 additions & 1 deletion packages/ember-htmlbars/tests/helpers/if_unless_test.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ import { set } from 'ember-metal/property_set';
import { fmt } from 'ember-runtime/system/string';
import { typeOf } from 'ember-runtime/utils';
import { runAppend, runDestroy } from 'ember-runtime/tests/utils';
import { replace } from 'ember-runtime/system/native_array';

var originalLookup = Ember.lookup;

Expand Down Expand Up @@ -859,7 +860,7 @@ if (isEnabled('ember-htmlbars-inline-if-helper')) {
equal(view.$().text(), 'truthy');

run(function() {
list.replace(0, 1);
replace(list, 0, 1);
});

equal(view.$().text(), 'falsy');
Expand Down
6 changes: 4 additions & 2 deletions packages/ember-htmlbars/tests/helpers/view_test.js
Original file line number Diff line number Diff line change
Expand Up @@ -23,16 +23,18 @@ import { set } from 'ember-metal/property_set';
import { get } from 'ember-metal/property_get';
import { computed } from 'ember-metal/computed';

import { objectAt } from 'ember-runtime/mixins/array';

var view, originalLookup, registry, container, lookup;

var trim = jQuery.trim;

function firstGrandchild(view) {
return get(get(view, 'childViews').objectAt(0), 'childViews').objectAt(0);
return objectAt(get(objectAt(get(view, 'childViews'), 0), 'childViews'), 0);
}

function nthChild(view, nth) {
return get(view, 'childViews').objectAt(nth || 0);
return objectAt(get(view, 'childViews'), nth || 0);
}

function viewClass(options) {
Expand Down
7 changes: 4 additions & 3 deletions packages/ember-metal/lib/replace.js
Original file line number Diff line number Diff line change
Expand Up @@ -29,13 +29,13 @@ export function _replace(array, idx, amt, objects) {

```javascript
var array = [1,2,3];
Ember.EnumerableUtils.replace(array, 1, 2, [4, 5]); // [1, 4, 5]
replace(array, 1, 2, [4, 5]); // [1, 4, 5]

var array = [1,2,3];
Ember.EnumerableUtils.replace(array, 1, 1, [4, 5]); // [1, 4, 5, 3]
replace(array, 1, 1, [4, 5]); // [1, 4, 5, 3]

var array = [1,2,3];
Ember.EnumerableUtils.replace(array, 10, 1, [4, 5]); // [1, 2, 3, 4, 5]
replace(array, 10, 1, [4, 5]); // [1, 2, 3, 4, 5]
```

@method replace
Expand All @@ -52,6 +52,7 @@ export function _replace(array, idx, amt, objects) {
@public
*/
export default function replace(array, idx, amt, objects) {
// TODO: FIXME
if (array.replace) {
return array.replace(idx, amt, objects);
} else {
Expand Down
11 changes: 7 additions & 4 deletions packages/ember-runtime/lib/computed/reduce_computed.js
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,10 @@ import {
cacheFor
} from 'ember-metal/computed';
import TrackedArray from 'ember-runtime/system/tracked_array';
import EmberArray from 'ember-runtime/mixins/array';
import EmberArray, {
addArrayObserver,
objectAt
} from 'ember-runtime/mixins/array';
import run from 'ember-metal/run_loop';

var cacheSet = cacheFor.set;
Expand Down Expand Up @@ -88,7 +91,7 @@ function ItemPropertyObserverContext(dependentArray, index, trackedArray) {

this.dependentArray = dependentArray;
this.index = index;
this.item = dependentArray.objectAt(index);
this.item = objectAt(dependentArray, index);
this.trackedArray = trackedArray;
this.beforeObserver = null;
this.observer = null;
Expand All @@ -107,7 +110,7 @@ DependentArraysObserver.prototype = {
setupObservers(dependentArray, dependentKey) {
this.dependentKeysByGuid[guidFor(dependentArray)] = dependentKey;

dependentArray.addArrayObserver(this, {
addArrayObserver(dependentArray, this, {
willChange: 'dependentArrayWillChange',
didChange: 'dependentArrayDidChange'
});
Expand Down Expand Up @@ -266,7 +269,7 @@ DependentArraysObserver.prototype = {
itemIndex = normalizedIndex + sliceIndex;
if (itemIndex >= length) { break; }

item = dependentArray.objectAt(itemIndex);
item = objectAt(dependentArray, itemIndex);

itemPropertyKeys.forEach(removeObservers, this);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ import { arrayComputed } from 'ember-runtime/computed/array_computed';
import { reduceComputed } from 'ember-runtime/computed/reduce_computed';
import SubArray from 'ember-runtime/system/subarray';
import compare from 'ember-runtime/compare';
import { objectAt } from 'ember-runtime/mixins/array';

var a_slice = [].slice;

Expand Down Expand Up @@ -625,7 +626,7 @@ function binarySearch(array, item, low, high) {
}

mid = low + Math.floor((high - low) / 2);
midItem = array.objectAt(mid);
midItem = objectAt(array, mid);

guidMid = guidFor(midItem);
guidItem = guidFor(item);
Expand Down
12 changes: 3 additions & 9 deletions packages/ember-runtime/lib/controllers/array_controller.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@ import SortableMixin from 'ember-runtime/mixins/sortable';
import ControllerMixin from 'ember-runtime/mixins/controller';
import { computed } from 'ember-metal/computed';
import EmberError from 'ember-metal/error';
import EmberArray from 'ember-runtime/mixins/array';
import replace from 'ember-metal/replace';
import { objectAt } from 'ember-runtime/mixins/array';

export var arrayControllerDeprecation = '`Ember.ArrayController` is deprecated.';

Expand Down Expand Up @@ -155,7 +155,7 @@ export default ArrayProxy.extend(ControllerMixin, SortableMixin, {
objectAtContent(idx) {
var length = get(this, 'length');
var arrangedContent = get(this, 'arrangedContent');
var object = arrangedContent && arrangedContent.objectAt(idx);
var object = arrangedContent && objectAt(arrangedContent, idx);
var controllerClass;

if (idx >= 0 && idx < length) {
Expand Down Expand Up @@ -186,7 +186,7 @@ export default ArrayProxy.extend(ControllerMixin, SortableMixin, {
if (subControllers.length) {
var subControllersToRemove = subControllers.slice(idx, idx + removedCnt);

subControllersToRemove.forEach(function(subController) {
subControllersToRemove.forEach(subController => {
if (subController) {
subController.destroy();
}
Expand All @@ -212,12 +212,6 @@ export default ArrayProxy.extend(ControllerMixin, SortableMixin, {
return Ember.A();
},
set(key, value) {
Ember.assert(
'ArrayController expects `model` to implement the Ember.Array mixin. ' +
'This can often be fixed by wrapping your model with `Ember.A()`.',
EmberArray.detect(value) || !value
);

return value;
}
}),
Expand Down
Loading