| Index: pkg/observe/lib/src/list_path_observer.dart
|
| diff --git a/pkg/polymer/lib/observe.dart b/pkg/observe/lib/src/list_path_observer.dart
|
| similarity index 63%
|
| rename from pkg/polymer/lib/observe.dart
|
| rename to pkg/observe/lib/src/list_path_observer.dart
|
| index 0a02a9071e38049e3329f58ed15936134194cea9..5b83a25b58cf99494a59be4ea81664cbc5c62731 100644
|
| --- a/pkg/polymer/lib/observe.dart
|
| +++ b/pkg/observe/lib/src/list_path_observer.dart
|
| @@ -2,57 +2,10 @@
|
| // for details. All rights reserved. Use of this source code is governed by a
|
| // BSD-style license that can be found in the LICENSE file.
|
|
|
| -/**
|
| - * Helpers for observable objects.
|
| - * Intended for use with `package:observe`.
|
| - */
|
| -library polymer.observe;
|
| -
|
| -import 'dart:async';
|
| -import 'package:observe/observe.dart';
|
| +part of observe;
|
|
|
| const _VALUE = const Symbol('value');
|
|
|
| -/**
|
| - * Forwards an observable property from one object to another. For example:
|
| - *
|
| - * class MyModel extends ObservableBase {
|
| - * StreamSubscription _sub;
|
| - * MyOtherModel _otherModel;
|
| - *
|
| - * MyModel() {
|
| - * ...
|
| - * _sub = bindProperty(_otherModel, const Symbol('value'),
|
| - * () => notifyProperty(this, const Symbol('prop'));
|
| - * }
|
| - *
|
| - * String get prop => _otherModel.value;
|
| - * set prop(String value) { _otherModel.value = value; }
|
| - * }
|
| - *
|
| - * See also [notifyProperty].
|
| - */
|
| -StreamSubscription bindProperty(Observable source, Symbol sourceName,
|
| - void callback()) {
|
| - return source.changes.listen((records) {
|
| - for (var record in records) {
|
| - if (record.changes(sourceName)) {
|
| - callback();
|
| - }
|
| - }
|
| - });
|
| -}
|
| -
|
| -/**
|
| - * Notify the property change. Shorthand for:
|
| - *
|
| - * target.notifyChange(new PropertyChangeRecord(targetName));
|
| - */
|
| -void notifyProperty(Observable target, Symbol targetName) {
|
| - target.notifyChange(new PropertyChangeRecord(targetName));
|
| -}
|
| -
|
| -
|
| // Inspired by ArrayReduction at:
|
| // https://raw.github.com/rafaelw/ChangeSummary/master/util/array_reduction.js
|
| // The main difference is we support anything on the rich Dart Iterable API.
|
|
|