| Index: pkg/template_binding/lib/src/element.dart
|
| diff --git a/pkg/template_binding/lib/src/element.dart b/pkg/template_binding/lib/src/element.dart
|
| deleted file mode 100644
|
| index 6d82baaf4a2bd8aa3f6fda3051b131174a6ce637..0000000000000000000000000000000000000000
|
| --- a/pkg/template_binding/lib/src/element.dart
|
| +++ /dev/null
|
| @@ -1,71 +0,0 @@
|
| -// Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
|
| -// 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.
|
| -
|
| -part of template_binding;
|
| -
|
| -/** Extensions to the [Element] API. */
|
| -class _ElementExtension extends NodeBindExtension {
|
| - _ElementExtension(Element node) : super._(node);
|
| -
|
| - bind(String name, value, {bool oneTime: false}) {
|
| - Element node = _node;
|
| -
|
| - if (node is OptionElement && name == 'value') {
|
| - // Note: because <option> can be a semantic template, <option> will be
|
| - // a TemplateBindExtension sometimes. So we need to handle it here.
|
| - node.attributes.remove(name);
|
| -
|
| - if (oneTime) return _updateOption(value);
|
| - _open(value, _updateOption);
|
| - } else {
|
| - bool conditional = name.endsWith('?');
|
| - if (conditional) {
|
| - node.attributes.remove(name);
|
| - name = name.substring(0, name.length - 1);
|
| - }
|
| -
|
| - if (oneTime) return _updateAttribute(_node, name, conditional, value);
|
| -
|
| - _open(value, (x) => _updateAttribute(_node, name, conditional, x));
|
| - }
|
| - return _maybeUpdateBindings(name, value);
|
| - }
|
| -
|
| - void _updateOption(newValue) {
|
| - OptionElement node = _node;
|
| - var oldValue = null;
|
| - var selectBinding = null;
|
| - var select = node.parentNode;
|
| - if (select is SelectElement) {
|
| - var bindings = nodeBind(select).bindings;
|
| - if (bindings != null) {
|
| - var valueBinding = bindings['value'];
|
| - if (valueBinding is _InputBinding) {
|
| - selectBinding = valueBinding;
|
| - oldValue = select.value;
|
| - }
|
| - }
|
| - }
|
| -
|
| - node.value = _sanitizeValue(newValue);
|
| -
|
| - if (selectBinding != null && select.value != oldValue) {
|
| - selectBinding.value = select.value;
|
| - }
|
| - }
|
| -}
|
| -
|
| -void _updateAttribute(Element node, String name, bool conditional, value) {
|
| - if (conditional) {
|
| - if (_toBoolean(value)) {
|
| - node.attributes[name] = '';
|
| - } else {
|
| - node.attributes.remove(name);
|
| - }
|
| - } else {
|
| - // TODO(jmesserly): escape value if needed to protect against XSS.
|
| - // See https://github.com/polymer-project/mdv/issues/58
|
| - node.attributes[name] = _sanitizeValue(value);
|
| - }
|
| -}
|
|
|