Home | History | Annotate | only in /external/chromium-trace/catapult/third_party/polymer/components/paper-input
Up to higher level directory
NameDateSize
.bower.json06-Dec-20162.1K
.gitignore06-Dec-201617
.travis.yml06-Dec-2016789
all-imports.html06-Dec-2016605
bower.json06-Dec-20161.8K
CONTRIBUTING.md06-Dec-20163.4K
demo/06-Dec-2016
hero.svg06-Dec-2016752
index.html06-Dec-2016920
paper-input-addon-behavior.html06-Dec-20161.4K
paper-input-behavior.html06-Dec-201616.3K
paper-input-char-counter.html06-Dec-20162.6K
paper-input-container.html06-Dec-201618.6K
paper-input-error.html06-Dec-20162.6K
paper-input.html06-Dec-20165.1K
paper-textarea.html06-Dec-20163.8K
README.md06-Dec-20168.8K
test/06-Dec-2016

README.md

      1 
      2 <!---
      3 
      4 This README is automatically generated from the comments in these files:
      5 paper-input-addon-behavior.html  paper-input-behavior.html  paper-input-char-counter.html  paper-input-container.html  paper-input-error.html  paper-input.html  paper-textarea.html
      6 
      7 Edit those files, and our readme bot will duplicate them over here!
      8 Edit this file, and the bot will squash your changes :)
      9 
     10 The bot does some handling of markdown. Please file a bug if it does the wrong
     11 thing! https://github.com/PolymerLabs/tedium/issues
     12 
     13 -->
     14 
     15 [![Build status](https://travis-ci.org/PolymerElements/paper-input.svg?branch=master)](https://travis-ci.org/PolymerElements/paper-input)
     16 
     17 _[Demo and API docs](https://elements.polymer-project.org/elements/paper-input)_
     18 
     19 
     20 ##&lt;paper-input&gt;
     21 
     22 Material design: [Text fields](https://www.google.com/design/spec/components/text-fields.html)
     23 
     24 `<paper-input>` is a single-line text field with Material Design styling.
     25 
     26 ```html
     27 <paper-input label="Input label"></paper-input>
     28 ```
     29 
     30 It may include an optional error message or character counter.
     31 
     32 ```html
     33 <paper-input error-message="Invalid input!" label="Input label"></paper-input>
     34 <paper-input char-counter label="Input label"></paper-input>
     35 ```
     36 
     37 It can also include custom prefix or suffix elements, which are displayed
     38 before or after the text input itself. In order for an element to be
     39 considered as a prefix, it must have the `prefix` attribute (and similarly
     40 for `suffix`).
     41 
     42 ```html
     43 <paper-input label="total">
     44   <div prefix>$</div>
     45   <paper-icon-button suffix icon="clear"></paper-icon-button>
     46 </paper-input>
     47 ```
     48 
     49 A `paper-input` can use the native `type=search` or `type=file` features.
     50 However, since we can't control the native styling of the input (search icon,
     51 file button, date placeholder, etc.), in these cases the label will be
     52 automatically floated. The `placeholder` attribute can still be used for
     53 additional informational text.
     54 
     55 ```html
     56 <paper-input label="search!" type="search"
     57     placeholder="search for cats" autosave="test" results="5">
     58 </paper-input>
     59 ```
     60 
     61 See `Polymer.PaperInputBehavior` for more API docs.
     62 
     63 ### Focus
     64 
     65 To focus a paper-input, you can call the native `focus()` method as long as the
     66 paper input has a tab index.
     67 
     68 ### Styling
     69 
     70 See `Polymer.PaperInputContainer` for a list of custom properties used to
     71 style this element.
     72 
     73 
     74 
     75 ##&lt;paper-input-char-counter&gt;
     76 
     77 `<paper-input-char-counter>` is a character counter for use with `<paper-input-container>`. It
     78 shows the number of characters entered in the input and the max length if it is specified.
     79 
     80 ```html
     81 <paper-input-container>
     82   <input is="iron-input" maxlength="20">
     83   <paper-input-char-counter></paper-input-char-counter>
     84 </paper-input-container>
     85 ```
     86 
     87 ### Styling
     88 
     89 The following mixin is available for styling:
     90 
     91 | Custom property | Description | Default |
     92 | --- | --- | --- |
     93 | `--paper-input-char-counter` | Mixin applied to the element | `{}` |
     94 
     95 
     96 
     97 ##&lt;paper-input-container&gt;
     98 
     99 `<paper-input-container>` is a container for a `<label>`, an `<input is="iron-input">` or
    100 `<iron-autogrow-textarea>` and optional add-on elements such as an error message or character
    101 counter, used to implement Material Design text fields.
    102 
    103 For example:
    104 
    105 ```html
    106 <paper-input-container>
    107   <label>Your name</label>
    108   <input is="iron-input">
    109 </paper-input-container>
    110 ```
    111 
    112 Do not wrap `<paper-input-container>` around elements that already include it, such as `<paper-input>`.
    113 Doing so may cause events to bounce infintely between the container and its contained element.
    114 
    115 ### Listening for input changes
    116 
    117 By default, it listens for changes on the `bind-value` attribute on its children nodes and perform
    118 tasks such as auto-validating and label styling when the `bind-value` changes. You can configure
    119 the attribute it listens to with the `attr-for-value` attribute.
    120 
    121 ### Using a custom input element
    122 
    123 You can use a custom input element in a `<paper-input-container>`, for example to implement a
    124 compound input field like a social security number input. The custom input element should have the
    125 `paper-input-input` class, have a `notify:true` value property and optionally implements
    126 `Polymer.IronValidatableBehavior` if it is validatable.
    127 
    128 ```html
    129 <paper-input-container attr-for-value="ssn-value">
    130   <label>Social security number</label>
    131   <ssn-input class="paper-input-input"></ssn-input>
    132 </paper-input-container>
    133 ```
    134 
    135 If you're using a `<paper-input-container>` imperatively, it's important to make sure
    136 that you attach its children (the `iron-input` and the optional `label`) before you
    137 attach the `<paper-input-container>` itself, so that it can be set up correctly.
    138 
    139 ### Validation
    140 
    141 If the `auto-validate` attribute is set, the input container will validate the input and update
    142 the container styling when the input value changes.
    143 
    144 ### Add-ons
    145 
    146 Add-ons are child elements of a `<paper-input-container>` with the `add-on` attribute and
    147 implements the `Polymer.PaperInputAddonBehavior` behavior. They are notified when the input value
    148 or validity changes, and may implement functionality such as error messages or character counters.
    149 They appear at the bottom of the input.
    150 
    151 ### Prefixes and suffixes
    152 
    153 These are child elements of a `<paper-input-container>` with the `prefix`
    154 or `suffix` attribute, and are displayed inline with the input, before or after.
    155 
    156 ```html
    157 <paper-input-container>
    158   <div prefix>$</div>
    159   <label>Total</label>
    160   <input is="iron-input">
    161   <paper-icon-button suffix icon="clear"></paper-icon-button>
    162 </paper-input-container>
    163 ```
    164 
    165 ### Styling
    166 
    167 The following custom properties and mixins are available for styling:
    168 
    169 | Custom property | Description | Default |
    170 | --- | --- | --- |
    171 | `--paper-input-container-color` | Label and underline color when the input is not focused | `--secondary-text-color` |
    172 | `--paper-input-container-focus-color` | Label and underline color when the input is focused | `--primary-color` |
    173 | `--paper-input-container-invalid-color` | Label and underline color when the input is is invalid | `--error-color` |
    174 | `--paper-input-container-input-color` | Input foreground color | `--primary-text-color` |
    175 | `--paper-input-container` | Mixin applied to the container | `{}` |
    176 | `--paper-input-container-disabled` | Mixin applied to the container when it's disabled | `{}` |
    177 | `--paper-input-container-label` | Mixin applied to the label | `{}` |
    178 | `--paper-input-container-label-focus` | Mixin applied to the label when the input is focused | `{}` |
    179 | `--paper-input-container-label-floating` | Mixin applied to the label when floating | `{}` |
    180 | `--paper-input-container-input` | Mixin applied to the input | `{}` |
    181 | `--paper-input-container-underline` | Mixin applied to the underline | `{}` |
    182 | `--paper-input-container-underline-focus` | Mixin applied to the underline when the input is focused | `{}` |
    183 | `--paper-input-container-underline-disabled` | Mixin applied to the underline when the input is disabled | `{}` |
    184 | `--paper-input-prefix` | Mixin applied to the input prefix | `{}` |
    185 | `--paper-input-suffix` | Mixin applied to the input suffix | `{}` |
    186 
    187 This element is `display:block` by default, but you can set the `inline` attribute to make it
    188 `display:inline-block`.
    189 
    190 
    191 
    192 ##&lt;paper-input-error&gt;
    193 
    194 `<paper-input-error>` is an error message for use with `<paper-input-container>`. The error is
    195 displayed when the `<paper-input-container>` is `invalid`.
    196 
    197 ```html
    198 <paper-input-container>
    199   <input is="iron-input" pattern="[0-9]*">
    200   <paper-input-error>Only numbers are allowed!</paper-input-error>
    201 </paper-input-container>
    202 ```
    203 
    204 ### Styling
    205 
    206 The following custom properties and mixins are available for styling:
    207 
    208 | Custom property | Description | Default |
    209 | --- | --- | --- |
    210 | `--paper-input-container-invalid-color` | The foreground color of the error | `--error-color` |
    211 | `--paper-input-error` | Mixin applied to the error | `{}` |
    212 
    213 
    214 
    215 ##&lt;paper-textarea&gt;
    216 
    217 `<paper-textarea>` is a multi-line text field with Material Design styling.
    218 
    219 ```html
    220 <paper-textarea label="Textarea label"></paper-textarea>
    221 ```
    222 
    223 See `Polymer.PaperInputBehavior` for more API docs.
    224 
    225 ### Validation
    226 
    227 Currently only `required` and `maxlength` validation is supported.
    228 
    229 ### Styling
    230 
    231 See `Polymer.PaperInputContainer` for a list of custom properties used to
    232 style this element.
    233 
    234 
    235 
    236 ##Polymer.PaperInputAddonBehavior
    237 
    238 Use `Polymer.PaperInputAddonBehavior` to implement an add-on for `<paper-input-container>`. A
    239 add-on appears below the input, and may display information based on the input value and
    240 validity such as a character counter or an error message.
    241 
    242 
    243 
    244 ##Polymer.PaperInputBehavior
    245 
    246 Use `Polymer.PaperInputBehavior` to implement inputs with `<paper-input-container>`. This
    247 behavior is implemented by `<paper-input>`. It exposes a number of properties from
    248 `<paper-input-container>` and `<input is="iron-input">` and they should be bound in your
    249 template.
    250 
    251 The input element can be accessed by the `inputElement` property if you need to access
    252 properties or methods that are not exposed.
    253 
    254 
    255