c98130cc08
* ui: Add the most basic workspace root in /ui * We already have a LICENSE file in the repository root * Change directory path in build scripts ui-v2 -> ui * Make yarn install flags configurable from elsewhere * Minimal workspace root makefile * Call the new docker specific target * Update yarn in the docker build image * Reconfigure the netlify target and move to the higher makefile * Move ui-v2 -> ui/packages/consul-ui * Change repo root to refleect new folder structure * Temporarily don't hoist consul-api-double * Fixup CI configuration * Fixup lint errors * Fixup Netlify target
23 lines
817 B
JavaScript
23 lines
817 B
JavaScript
import { get, set } from '@ember/object';
|
|
import ObjectProxy from '@ember/object/proxy';
|
|
export default function(items, item, prop, value) {
|
|
value = typeof value === 'undefined' ? get(item, prop) : value;
|
|
const pos = items.findIndex(function(item) {
|
|
return get(item, prop) === value;
|
|
});
|
|
if (pos !== -1) {
|
|
// TODO: We only currently use this with EventSources
|
|
// would be good to check this doesn't do anything unexpected
|
|
// with other proxies.
|
|
// Before we get there, we might have figured a better way to do
|
|
// this anyway
|
|
if (item instanceof ObjectProxy) {
|
|
set(item, 'content', items.objectAt(pos));
|
|
}
|
|
items.replace(pos, 1, [item]);
|
|
// TODO: Looks like with new proxies this isn't needed anymore
|
|
// items.enumerableContentDidChange();
|
|
}
|
|
return item;
|
|
}
|