diff options
Diffstat (limited to 'catapult/third_party/polymer/components/iron-form-element-behavior/iron-form-element-behavior.html')
-rw-r--r-- | catapult/third_party/polymer/components/iron-form-element-behavior/iron-form-element-behavior.html | 86 |
1 files changed, 86 insertions, 0 deletions
diff --git a/catapult/third_party/polymer/components/iron-form-element-behavior/iron-form-element-behavior.html b/catapult/third_party/polymer/components/iron-form-element-behavior/iron-form-element-behavior.html new file mode 100644 index 00000000..cd9c6b4a --- /dev/null +++ b/catapult/third_party/polymer/components/iron-form-element-behavior/iron-form-element-behavior.html @@ -0,0 +1,86 @@ +<!-- +@license +Copyright (c) 2015 The Polymer Project Authors. All rights reserved. +This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt +The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt +The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt +Code distributed by Google as part of the polymer project is also +subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt +--> + +<link rel="import" href="../polymer/polymer.html"> + +<script> + /** + Polymer.IronFormElementBehavior enables a custom element to be included + in an `iron-form`. + + @demo demo/index.html + @polymerBehavior + */ + Polymer.IronFormElementBehavior = { + + properties: { + /** + * Fired when the element is added to an `iron-form`. + * + * @event iron-form-element-register + */ + + /** + * Fired when the element is removed from an `iron-form`. + * + * @event iron-form-element-unregister + */ + + /** + * The name of this element. + */ + name: { + type: String + }, + + /** + * The value for this element. + */ + value: { + notify: true, + type: String + }, + + /** + * Set to true to mark the input as required. If used in a form, a + * custom element that uses this behavior should also use + * Polymer.IronValidatableBehavior and define a custom validation method. + * Otherwise, a `required` element will always be considered valid. + * It's also strongly recommended to provide a visual style for the element + * when its value is invalid. + */ + required: { + type: Boolean, + value: false + }, + + /** + * The form that the element is registered to. + */ + _parentForm: { + type: Object + } + }, + + attached: function() { + // Note: the iron-form that this element belongs to will set this + // element's _parentForm property when handling this event. + this.fire('iron-form-element-register'); + }, + + detached: function() { + if (this._parentForm) { + this._parentForm.fire('iron-form-element-unregister', {target: this}); + } + } + + }; + +</script> |