-
Notifications
You must be signed in to change notification settings - Fork 7
Expand file tree
/
Copy pathpaper-chip-behavior.html
More file actions
106 lines (93 loc) · 2.3 KB
/
paper-chip-behavior.html
File metadata and controls
106 lines (93 loc) · 2.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
<link rel="import" href="../polymer/polymer.html">
<link rel="import" href="../iron-behaviors/iron-button-state.html">
<link rel="import" href="../iron-behaviors/iron-control-state.html">
<script>
var WebPaperElem = WebPaperElem || {};
/**
* `WebPaperElem.PaperChipBehavior` implements paper-chip behavior.
*
* @demo demo/index.html
* @polymerBehavior WebPaperElem.PaperChipBehavior
*/
WebPaperElem.PaperChipBehaviorImpl = {
hostAttributes: {
tabindex: '0'
},
properties: {
/**
* Toggle to display the image.
*
* @attribute no-image
* @type Boolean
*/
noImage: {
type: Boolean,
value: false,
reflectToAttribute: true,
},
/**
* Chip Label.
*
* @attribute label
* @type String
*/
label: {
type: String,
reflectToAttribute: true
},
/**
* Whether or not the chip is removable. If `true`, a delete button should
* be shown.
*
* @attribute removable
* @type boolean
* @default false
*/
removable: {
type: Boolean,
value: false,
reflectToAttribute: true
},
/**
* The z-depth of this element, from 0-5. Setting to 0 will remove the
* shadow, and each increasing number greater than 0 will be "deeper"
* than the last.
*
* @attribute elevation
* @type number
* @default 1
*/
elevation: {
type: Number,
value: 0,
reflectToAttribute: true,
},
},
observers: [
'_computeElevation(focused, pressed, disabled, active)'
],
_computeElevation: function(focused, pressed) {
if (focused || pressed) {
this.elevation = 1;
} else {
this.elevation = 0;
}
},
/**
* Fired before the element is removed. This event is cancelable.
*
* @event remove
*/
remove: function() {
var e = this.fire('remove', {}, {cancelable: true});
if (!e.defaultPrevented) {
this.parentNode.removeChild(this);
}
},
};
WebPaperElem.PaperChipBehavior = [
Polymer.IronButtonState,
Polymer.IronControlState,
WebPaperElem.PaperChipBehaviorImpl
];
</script>