polymer-core-rails 0.2.5 → 0.2.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +4 -3
- data/app/assets/components/context-free-parser/context-free-parser.js +27 -4
- data/app/assets/components/core-a11y-keys/core-a11y-keys.html +4 -4
- data/app/assets/components/core-ajax/core-ajax.html +38 -10
- data/app/assets/components/core-ajax/core-xhr.html +1 -1
- data/app/assets/components/core-animated-pages/core-animated-pages.html +25 -2
- data/app/assets/components/core-animation/web-animations.html +1 -1
- data/app/assets/components/core-collapse/core-collapse.html +1 -1
- data/app/assets/components/core-doc-viewer/elements/core-doc-page.css +26 -1
- data/app/assets/components/core-doc-viewer/elements/core-doc-page.html +39 -4
- data/app/assets/components/core-doc-viewer/elements/core-doc-toc.css +3 -3
- data/app/assets/components/core-drawer-panel/core-drawer-panel.css +14 -6
- data/app/assets/components/core-drawer-panel/core-drawer-panel.html +32 -8
- data/app/assets/components/core-dropdown/core-dropdown.html +8 -2
- data/app/assets/components/core-elements/core-elements.html +1 -0
- data/app/assets/components/core-icon/core-icon.html +0 -2
- data/app/assets/components/core-icons/av-icons.html +2 -9
- data/app/assets/components/core-icons/communication-icons.html +39 -42
- data/app/assets/components/core-icons/core-icons.html +231 -235
- data/app/assets/components/core-icons/device-icons.html +75 -90
- data/app/assets/components/core-icons/editor-icons.html +52 -52
- data/app/assets/components/core-icons/hardware-icons.html +40 -41
- data/app/assets/components/core-icons/image-icons.html +133 -137
- data/app/assets/components/core-icons/maps-icons.html +55 -57
- data/app/assets/components/core-icons/notification-icons.html +34 -34
- data/app/assets/components/core-icons/social-icons.html +23 -37
- data/app/assets/components/core-image/core-image.html +3 -3
- data/app/assets/components/core-list/core-list.html +50 -27
- data/app/assets/components/core-localstorage/core-localstorage.html +4 -5
- data/app/assets/components/core-menu/core-menu.html +8 -3
- data/app/assets/components/core-menu/core-submenu.html +2 -2
- data/app/assets/components/core-overlay/core-key-helper.html +3 -0
- data/app/assets/components/core-overlay/core-overlay-layer.html +3 -0
- data/app/assets/components/core-overlay/core-overlay.html +20 -4
- data/app/assets/components/core-resizable/core-resizable.html +248 -0
- data/app/assets/components/core-scroll-header-panel/core-scroll-header-panel.html +14 -3
- data/app/assets/components/core-scroll-threshold/core-scroll-threshold.html +222 -0
- data/app/assets/components/core-scroll-threshold/metadata.html +24 -0
- data/app/assets/components/core-selection/core-selection.html +1 -1
- data/app/assets/components/core-selector/core-selector.html +26 -26
- data/app/assets/components/core-splitter/core-splitter.html +17 -2
- data/app/assets/components/core-style/core-style.html +1 -1
- data/app/assets/components/core-toolbar/core-toolbar.html +1 -1
- data/app/assets/components/core-tooltip/core-tooltip.css +2 -2
- data/app/assets/components/core-tooltip/core-tooltip.html +16 -5
- data/app/assets/components/core-tooltip/metadata.html +1 -1
- data/app/assets/components/google-code-prettify/styles/doxy.css +1 -1
- data/app/assets/components/marked/lib/marked.js +11 -5
- data/app/assets/components/marked/marked.min.js +6 -0
- data/app/assets/components/paper-button/paper-button-base.html +56 -12
- data/app/assets/components/paper-button/paper-button.html +22 -5
- data/app/assets/components/paper-fab/paper-fab.html +2 -2
- data/app/assets/components/paper-ripple/paper-ripple.html +2 -1
- data/app/assets/components/paper-shadow/paper-shadow.css +10 -10
- data/app/assets/components/paper-shadow/paper-shadow.html +8 -1
- data/app/assets/components/sampler-scaffold/sampler-scaffold.css +1 -1
- data/app/assets/components/{web-animations-next → web-animations-js}/src/animation-constructor.js +10 -5
- data/app/assets/components/{web-animations-next → web-animations-js}/src/animation-node.js +1 -1
- data/app/assets/components/{web-animations-next → web-animations-js}/src/animation.js +2 -2
- data/app/assets/components/{web-animations-next → web-animations-js}/src/apply-preserving-inline-style.js +2 -3
- data/app/assets/components/{web-animations-next → web-animations-js}/src/apply.js +1 -1
- data/app/assets/components/{web-animations-next → web-animations-js}/src/box-handler.js +1 -1
- data/app/assets/components/{web-animations-next → web-animations-js}/src/color-handler.js +2 -2
- data/app/assets/components/{web-animations-next → web-animations-js}/src/deprecation.js +0 -0
- data/app/assets/components/{web-animations-next → web-animations-js}/src/dev.js +0 -0
- data/app/assets/components/{web-animations-next → web-animations-js}/src/dimension-handler.js +1 -1
- data/app/assets/components/{web-animations-next → web-animations-js}/src/effect-callback.js +2 -2
- data/app/assets/components/{web-animations-next → web-animations-js}/src/effect.js +1 -1
- data/app/assets/components/{web-animations-next → web-animations-js}/src/element-animatable.js +1 -1
- data/app/assets/components/{web-animations-next → web-animations-js}/src/font-weight-handler.js +1 -1
- data/app/assets/components/{web-animations-next → web-animations-js}/src/group-constructors.js +2 -1
- data/app/assets/components/{web-animations-next → web-animations-js}/src/handler-utils.js +1 -1
- data/app/assets/components/{web-animations-next → web-animations-js}/src/interpolation.js +1 -1
- data/app/assets/components/{web-animations-next → web-animations-js}/src/matrix-decomposition.js +1 -1
- data/app/assets/components/{web-animations-next → web-animations-js}/src/matrix-interpolation.js +1 -1
- data/app/assets/components/{web-animations-next → web-animations-js}/src/normalize-keyframes.js +1 -1
- data/app/assets/components/{web-animations-next → web-animations-js}/src/number-handler.js +1 -1
- data/app/assets/components/{web-animations-next → web-animations-js}/src/player.js +1 -1
- data/app/assets/components/{web-animations-next → web-animations-js}/src/position-handler.js +1 -1
- data/app/assets/components/{web-animations-next → web-animations-js}/src/property-interpolation.js +1 -1
- data/app/assets/components/{web-animations-next → web-animations-js}/src/property-names.js +1 -1
- data/app/assets/components/{web-animations-next → web-animations-js}/src/scope.js +2 -2
- data/app/assets/components/{web-animations-next → web-animations-js}/src/shadow-handler.js +1 -1
- data/app/assets/components/{web-animations-next → web-animations-js}/src/shape-handler.js +1 -1
- data/app/assets/components/{web-animations-next → web-animations-js}/src/tick.js +1 -1
- data/app/assets/components/{web-animations-next → web-animations-js}/src/timeline.js +7 -7
- data/app/assets/components/{web-animations-next → web-animations-js}/src/timing-utilities.js +0 -0
- data/app/assets/components/{web-animations-next → web-animations-js}/src/transform-handler.js +1 -1
- data/app/assets/components/{web-animations-next → web-animations-js}/src/visibility-handler.js +1 -1
- data/app/assets/components/{web-animations-next/src/maxifill-player.js → web-animations-js/src/web-animations-next-player.js} +1 -1
- data/app/assets/components/{web-animations-next → web-animations-js}/web-animations-next-lite.dev.html +1 -1
- data/app/assets/components/{web-animations-next → web-animations-js}/web-animations-next-lite.dev.js +0 -0
- data/app/assets/components/web-animations-js/web-animations-next-lite.min.js +17 -0
- data/app/assets/components/{web-animations-next → web-animations-js}/web-animations-next.dev.html +1 -1
- data/app/assets/components/{web-animations-next → web-animations-js}/web-animations-next.dev.js +0 -0
- data/app/assets/components/web-animations-js/web-animations-next.min.js +17 -0
- data/app/assets/components/{web-animations-next → web-animations-js}/web-animations.dev.html +0 -0
- data/app/assets/components/{web-animations-next → web-animations-js}/web-animations.dev.js +0 -0
- data/app/assets/components/{web-animations-next → web-animations-js}/web-animations.html +1 -3
- data/app/assets/components/web-animations-js/web-animations.min.js +17 -0
- data/app/assets/components/webcomponentsjs/CustomElements.js +634 -0
- data/app/assets/components/webcomponentsjs/CustomElements.min.js +11 -0
- data/app/assets/components/webcomponentsjs/HTMLImports.js +764 -0
- data/app/assets/components/webcomponentsjs/HTMLImports.min.js +11 -0
- data/app/assets/components/webcomponentsjs/ShadowDOM.js +4277 -0
- data/app/assets/components/webcomponentsjs/ShadowDOM.min.js +13 -0
- data/app/assets/components/webcomponentsjs/webcomponents-lite.js +1728 -0
- data/app/assets/components/webcomponentsjs/webcomponents-lite.min.js +11 -0
- data/app/assets/components/webcomponentsjs/webcomponents.js +6114 -0
- data/app/assets/components/webcomponentsjs/webcomponents.min.js +14 -0
- data/lib/polymer-core-rails/version.rb +1 -1
- metadata +60 -76
- data/app/assets/components/context-free-parser/package.json +0 -16
- data/app/assets/components/core-ajax/demo-progress.html +0 -65
- data/app/assets/components/core-dropdown/metadata.html +0 -62
- data/app/assets/components/core-icons/png-icons.html +0 -19
- data/app/assets/components/core-overlay/tests/html/core-overlay-basic.html +0 -127
- data/app/assets/components/core-overlay/tests/html/core-overlay-positioning-margin.html +0 -153
- data/app/assets/components/core-overlay/tests/html/core-overlay-positioning.html +0 -167
- data/app/assets/components/core-overlay/tests/html/core-overlay-scroll.html +0 -130
- data/app/assets/components/core-overlay/tests/js/htmltests.js +0 -6
- data/app/assets/components/core-overlay/tests/runner.html +0 -14
- data/app/assets/components/core-overlay/tests/tests.json +0 -6
- data/app/assets/components/core-popup-menu/core-popup-menu.css +0 -28
- data/app/assets/components/core-popup-menu/core-popup-menu.html +0 -198
- data/app/assets/components/core-popup-menu/core-popup-overlay.html +0 -111
- data/app/assets/components/core-popup-menu/metadata.html +0 -62
- data/app/assets/components/core-shared-lib/tests/html/core-shared-lib.html +0 -47
- data/app/assets/components/core-shared-lib/tests/js/htmltests.js +0 -3
- data/app/assets/components/core-shared-lib/tests/runner.html +0 -14
- data/app/assets/components/core-shared-lib/tests/tests.json +0 -6
- data/app/assets/components/marked/LICENSE +0 -19
- data/app/assets/components/marked/Makefile +0 -12
- data/app/assets/components/marked/package.json +0 -22
- data/app/assets/components/platform/platform.js +0 -16
- data/app/assets/components/web-animations-js/web-animations.js +0 -5529
- data/app/assets/components/web-animations-next/Gruntfile.js +0 -279
- data/app/assets/components/web-animations-next/History.md +0 -76
- data/app/assets/components/web-animations-next/package.json +0 -33
- data/app/assets/components/web-animations-next/target-config.js +0 -124
- data/app/assets/components/web-animations-next/target-loader.js +0 -13
- data/app/assets/components/web-animations-next/templates/boilerplate +0 -13
- data/app/assets/components/web-animations-next/templates/runner.html +0 -26
- data/app/assets/components/web-animations-next/templates/web-animations.html +0 -18
- data/app/assets/components/web-animations-next/templates/web-animations.js +0 -21
@@ -0,0 +1,222 @@
|
|
1
|
+
<!--
|
2
|
+
Copyright (c) 2014 The Polymer Project Authors. All rights reserved.
|
3
|
+
This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
|
4
|
+
The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
|
5
|
+
The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
|
6
|
+
Code distributed by Google as part of the polymer project is also
|
7
|
+
subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
|
8
|
+
-->
|
9
|
+
|
10
|
+
<!--
|
11
|
+
`core-scroll-threshold` is a utility element that listens for `scroll` events from a
|
12
|
+
scrollable region and fires events to indicate when the scroller has reached a pre-defined
|
13
|
+
limit, specified in pixels from the upper and lower bounds of the scrollable region.
|
14
|
+
|
15
|
+
This element may wrap a scrollable region and will listen for `scroll` events bubbling
|
16
|
+
through it from its children. In this case, care should be taken that only one scrollable
|
17
|
+
region with the same orientation as this element is contained within. Alternatively,
|
18
|
+
the `scrollTarget` property can be set/bound to a non-child scrollable region, from which
|
19
|
+
it will listen for events.
|
20
|
+
|
21
|
+
Once a threshold has been reached, a `lower-trigger` or `upper-trigger` event will
|
22
|
+
be fired, at which point the user may perform actions such as lazily-loading more data
|
23
|
+
to be displayed. After any work is done, the user must then clear the threshold by
|
24
|
+
calling the `clearUpper` or `clearLower` methods on this element, after which it will
|
25
|
+
begin listening again for the scroll position to reach the threshold again assuming
|
26
|
+
the content in the scrollable region has grown. If the user no longer wishes to receive
|
27
|
+
events (e.g. all data has been exhausted), the threshold property in question (e.g.
|
28
|
+
`lowerThreshold`) may be set to a falsy value to disable events and clear the associated
|
29
|
+
triggered property.
|
30
|
+
|
31
|
+
Example:
|
32
|
+
|
33
|
+
<core-scroll-threshold id="threshold" lowerThreshold="500"
|
34
|
+
on-lower-trigger="{{loadMore}}" lowerTriggered="{{spinnerShouldShow}}">
|
35
|
+
</core-scroll-threshold>
|
36
|
+
|
37
|
+
...
|
38
|
+
|
39
|
+
loadMore: function() {
|
40
|
+
this.asyncLoadStuffThen(function() {
|
41
|
+
this.$.threshold.clearLower();
|
42
|
+
}.bind(this));
|
43
|
+
}
|
44
|
+
|
45
|
+
@group Polymer Core Elements
|
46
|
+
@element core-scroll-threshold
|
47
|
+
@homepage github.io
|
48
|
+
-->
|
49
|
+
|
50
|
+
<link rel="import" href="../polymer/polymer.html">
|
51
|
+
|
52
|
+
<polymer-element name="core-scroll-threshold">
|
53
|
+
|
54
|
+
<script>
|
55
|
+
|
56
|
+
Polymer({
|
57
|
+
|
58
|
+
publish: {
|
59
|
+
|
60
|
+
/**
|
61
|
+
* When set, the given element is observed for scroll position. When undefined,
|
62
|
+
* children can be placed inside and element itself can be used as the scrollable
|
63
|
+
* element.
|
64
|
+
*
|
65
|
+
* @attribute scrollTarget
|
66
|
+
* @type Element
|
67
|
+
* @default null
|
68
|
+
*/
|
69
|
+
scrollTarget: null,
|
70
|
+
|
71
|
+
/**
|
72
|
+
* Orientation of the scroller to be observed (`v` for vertical, `h` for horizontal)
|
73
|
+
*
|
74
|
+
* @attribute orient
|
75
|
+
* @type boolean
|
76
|
+
* @default 'v'
|
77
|
+
*/
|
78
|
+
orient: 'v',
|
79
|
+
|
80
|
+
/**
|
81
|
+
* Distance from the top (or left, for horizontal) bound of the scroller
|
82
|
+
* where the "upper trigger" will fire.
|
83
|
+
*
|
84
|
+
* @attribute upperThreshold
|
85
|
+
* @type integer
|
86
|
+
* @default null
|
87
|
+
*/
|
88
|
+
upperThreshold: null,
|
89
|
+
|
90
|
+
/**
|
91
|
+
* Distance from the bottom (or right, for horizontal) bound of the scroller
|
92
|
+
* where the "lower trigger" will fire.
|
93
|
+
*
|
94
|
+
* @attribute lowerThreshold
|
95
|
+
* @type integer
|
96
|
+
* @default null
|
97
|
+
*/
|
98
|
+
lowerThreshold: null,
|
99
|
+
|
100
|
+
/**
|
101
|
+
* Read-only value that tracks the triggered state of the upper threshold
|
102
|
+
*
|
103
|
+
* @attribute upperTriggered
|
104
|
+
* @type boolean
|
105
|
+
* @default false
|
106
|
+
*/
|
107
|
+
upperTriggered: false,
|
108
|
+
|
109
|
+
/**
|
110
|
+
* Read-only value that tracks the triggered state of the lower threshold
|
111
|
+
*
|
112
|
+
* @attribute lowerTriggered
|
113
|
+
* @type boolean
|
114
|
+
* @default false
|
115
|
+
*/
|
116
|
+
lowerTriggered: false
|
117
|
+
|
118
|
+
},
|
119
|
+
|
120
|
+
observe: {
|
121
|
+
'upperThreshold lowerThreshold scrollTarget orient': 'setup'
|
122
|
+
},
|
123
|
+
|
124
|
+
ready: function() {
|
125
|
+
this._boundScrollHandler = this.checkThreshold.bind(this);
|
126
|
+
},
|
127
|
+
|
128
|
+
setup: function() {
|
129
|
+
// Remove listener for any previous scroll target
|
130
|
+
if (this._scrollTarget && (this._scrollTarget != this.target)) {
|
131
|
+
this._scrollTarget.removeEventListener(this._boundScrollHandler);
|
132
|
+
}
|
133
|
+
|
134
|
+
// Add listener for new scroll target
|
135
|
+
var target = this.scrollTarget || this;
|
136
|
+
if (target) {
|
137
|
+
this._scrollTarget = target;
|
138
|
+
this._scrollTarget.addEventListener('scroll', this._boundScrollHandler);
|
139
|
+
}
|
140
|
+
|
141
|
+
// If we're listening on ourself, make us auto in case someone put
|
142
|
+
// content inside
|
143
|
+
this.style.overflow = (target == this) ? 'auto' : null;
|
144
|
+
|
145
|
+
// Setup extents based on orientation
|
146
|
+
this.scrollPosition = (this.orient == 'v') ? 'scrollTop' : 'scrollLeft';
|
147
|
+
this.sizeExtent = (this.orient == 'v') ? 'offsetHeight' : 'offsetWidth';
|
148
|
+
this.scrollExtent = (this.orient == 'v') ? 'scrollHeight' : 'scrollWidth';
|
149
|
+
|
150
|
+
// Clear trigger state if user has cleared the threshold
|
151
|
+
if (!this.upperThreshold) {
|
152
|
+
this.upperTriggered = false;
|
153
|
+
}
|
154
|
+
if (!this.lowerThreshold) {
|
155
|
+
this.lowerTriggered = false;
|
156
|
+
}
|
157
|
+
},
|
158
|
+
|
159
|
+
checkThreshold: function(e) {
|
160
|
+
var top = this._scrollTarget[this.scrollPosition];
|
161
|
+
if (!this.upperTriggered && this.upperThreshold != null) {
|
162
|
+
if (top < this.upperThreshold) {
|
163
|
+
this.upperTriggered = true;
|
164
|
+
this.fire('upper-trigger');
|
165
|
+
}
|
166
|
+
}
|
167
|
+
if (this.lowerThreshold != null) {
|
168
|
+
var bottom = top + this._scrollTarget[this.sizeExtent];
|
169
|
+
var size = this._scrollTarget[this.scrollExtent];
|
170
|
+
if (!this.lowerTriggered && (size - bottom) < this.lowerThreshold) {
|
171
|
+
this.lowerTriggered = true;
|
172
|
+
this.fire('lower-trigger');
|
173
|
+
}
|
174
|
+
}
|
175
|
+
},
|
176
|
+
|
177
|
+
/**
|
178
|
+
* Clear the upper threshold, following an `upper-trigger` event.
|
179
|
+
*
|
180
|
+
* @method clearUpper
|
181
|
+
*/
|
182
|
+
clearUpper: function(waitForMutation) {
|
183
|
+
if (waitForMutation) {
|
184
|
+
this._waitForMutation(function() {
|
185
|
+
this.clearUpper();
|
186
|
+
}.bind(this));
|
187
|
+
} else {
|
188
|
+
requestAnimationFrame(function() {
|
189
|
+
this.upperTriggered = false;
|
190
|
+
}.bind(this));
|
191
|
+
}
|
192
|
+
},
|
193
|
+
|
194
|
+
/**
|
195
|
+
* Clear the lower threshold, following a `lower-trigger` event.
|
196
|
+
*
|
197
|
+
* @method clearLower
|
198
|
+
*/
|
199
|
+
clearLower: function(waitForMutation) {
|
200
|
+
if (waitForMutation) {
|
201
|
+
this._waitForMutation(function() {
|
202
|
+
this.clearLower();
|
203
|
+
}.bind(this));
|
204
|
+
} else {
|
205
|
+
requestAnimationFrame(function() {
|
206
|
+
this.lowerTriggered = false;
|
207
|
+
}.bind(this));
|
208
|
+
}
|
209
|
+
},
|
210
|
+
|
211
|
+
_waitForMutation: function(listener) {
|
212
|
+
var observer = new MutationObserver(function(mutations) {
|
213
|
+
listener.call(this, observer, mutations);
|
214
|
+
observer.disconnect();
|
215
|
+
}.bind(this));
|
216
|
+
observer.observe(this._scrollTarget, {attributes:true, childList: true, subtree: true});
|
217
|
+
}
|
218
|
+
|
219
|
+
});
|
220
|
+
|
221
|
+
</script>
|
222
|
+
</polymer-element>
|
@@ -0,0 +1,24 @@
|
|
1
|
+
<!--
|
2
|
+
@license
|
3
|
+
Copyright (c) 2014 The Polymer Project Authors. All rights reserved.
|
4
|
+
This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
|
5
|
+
The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
|
6
|
+
The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
|
7
|
+
Code distributed by Google as part of the polymer project is also
|
8
|
+
subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
|
9
|
+
-->
|
10
|
+
<x-meta id="core-scroll-threshold" label="Scroll Threshold" group="Core">
|
11
|
+
|
12
|
+
<template>
|
13
|
+
|
14
|
+
<core-item icon="settings" label="Scroll Threshold"></core-item>
|
15
|
+
|
16
|
+
</template>
|
17
|
+
|
18
|
+
<template id="imports">
|
19
|
+
|
20
|
+
<link rel="import" href="core-scroll-threshold.html">
|
21
|
+
|
22
|
+
</template>
|
23
|
+
|
24
|
+
</x-meta>
|
@@ -12,7 +12,7 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
|
|
12
12
|
The `<core-selection>` element is used to manage selection state. It has no
|
13
13
|
visual appearance and is typically used in conjunction with another element.
|
14
14
|
For example, [core-selector](#core-selector)
|
15
|
-
|
15
|
+
uses a `<core-selection>` to manage selection.
|
16
16
|
|
17
17
|
To mark an item as selected, call the `select(item)` method on
|
18
18
|
`<core-selection>`. The item itself is an argument to this method.
|
@@ -130,7 +130,7 @@ Fired when an item element is tapped.
|
|
130
130
|
|
131
131
|
/**
|
132
132
|
* Specifies the CSS class to be used to add to the selected element.
|
133
|
-
*
|
133
|
+
*
|
134
134
|
* @attribute selectedClass
|
135
135
|
* @type string
|
136
136
|
* @default 'core-selected'
|
@@ -162,7 +162,7 @@ Fired when an item element is tapped.
|
|
162
162
|
* an array of selected elements.
|
163
163
|
* Note that you should not use this to set the selection. Instead use
|
164
164
|
* `selected`.
|
165
|
-
*
|
165
|
+
*
|
166
166
|
* @attribute selectedItem
|
167
167
|
* @type Object
|
168
168
|
* @default null
|
@@ -172,9 +172,9 @@ Fired when an item element is tapped.
|
|
172
172
|
/**
|
173
173
|
* In single selection, this returns the model associated with the
|
174
174
|
* selected element.
|
175
|
-
* Note that you should not use this to set the selection. Instead use
|
175
|
+
* Note that you should not use this to set the selection. Instead use
|
176
176
|
* `selected`.
|
177
|
-
*
|
177
|
+
*
|
178
178
|
* @attribute selectedModel
|
179
179
|
* @type Object
|
180
180
|
* @default null
|
@@ -193,7 +193,7 @@ Fired when an item element is tapped.
|
|
193
193
|
selectedIndex: -1,
|
194
194
|
|
195
195
|
/**
|
196
|
-
* Nodes with local name that are in the list will not be included
|
196
|
+
* Nodes with local name that are in the list will not be included
|
197
197
|
* in the selection items. In the following example, `items` returns four
|
198
198
|
* `core-item`'s and doesn't include `h3` and `hr`.
|
199
199
|
*
|
@@ -213,9 +213,9 @@ Fired when an item element is tapped.
|
|
213
213
|
excludedLocalNames: '',
|
214
214
|
|
215
215
|
/**
|
216
|
-
* The target element that contains items. If this is not set
|
216
|
+
* The target element that contains items. If this is not set
|
217
217
|
* core-selector is the container.
|
218
|
-
*
|
218
|
+
*
|
219
219
|
* @attribute target
|
220
220
|
* @type Object
|
221
221
|
* @default null
|
@@ -223,7 +223,7 @@ Fired when an item element is tapped.
|
|
223
223
|
target: null,
|
224
224
|
|
225
225
|
/**
|
226
|
-
* This can be used to query nodes from the target node to be used for
|
226
|
+
* This can be used to query nodes from the target node to be used for
|
227
227
|
* selection items. Note this only works if `target` is set
|
228
228
|
* and is not `core-selector` itself.
|
229
229
|
*
|
@@ -236,7 +236,7 @@ Fired when an item element is tapped.
|
|
236
236
|
* <label><input type="radio" name="color" value="blue"> Blue</label> <br>
|
237
237
|
* <p>color = {{color}}</p>
|
238
238
|
* </form>
|
239
|
-
*
|
239
|
+
*
|
240
240
|
* @attribute itemsSelector
|
241
241
|
* @type string
|
242
242
|
* @default ''
|
@@ -264,7 +264,7 @@ Fired when an item element is tapped.
|
|
264
264
|
notap: false,
|
265
265
|
|
266
266
|
defaultExcludedLocalNames: 'template',
|
267
|
-
|
267
|
+
|
268
268
|
observe: {
|
269
269
|
'selected multi': 'selectedChanged'
|
270
270
|
},
|
@@ -288,8 +288,8 @@ Fired when an item element is tapped.
|
|
288
288
|
if (!this.target) {
|
289
289
|
return [];
|
290
290
|
}
|
291
|
-
var nodes = this.target !== this ? (this.itemsSelector ?
|
292
|
-
this.target.querySelectorAll(this.itemsSelector) :
|
291
|
+
var nodes = this.target !== this ? (this.itemsSelector ?
|
292
|
+
this.target.querySelectorAll(this.itemsSelector) :
|
293
293
|
this.target.children) : this.$.items.getDistributedNodes();
|
294
294
|
return Array.prototype.filter.call(nodes, this.itemFilter);
|
295
295
|
},
|
@@ -332,7 +332,7 @@ Fired when an item element is tapped.
|
|
332
332
|
|
333
333
|
/**
|
334
334
|
* Returns the selected item(s). If the `multi` property is true,
|
335
|
-
* this will return an array, otherwise it will return
|
335
|
+
* this will return an array, otherwise it will return
|
336
336
|
* the selected item or undefined if there is no selection.
|
337
337
|
*/
|
338
338
|
get selection() {
|
@@ -348,7 +348,7 @@ Fired when an item element is tapped.
|
|
348
348
|
this.updateSelected();
|
349
349
|
}
|
350
350
|
},
|
351
|
-
|
351
|
+
|
352
352
|
updateSelected: function() {
|
353
353
|
this.validateSelected();
|
354
354
|
if (this.multi) {
|
@@ -363,7 +363,7 @@ Fired when an item element is tapped.
|
|
363
363
|
|
364
364
|
validateSelected: function() {
|
365
365
|
// convert to an array for multi-selection
|
366
|
-
if (this.multi && !Array.isArray(this.selected) &&
|
366
|
+
if (this.multi && !Array.isArray(this.selected) &&
|
367
367
|
this.selected != null) {
|
368
368
|
this.selected = [this.selected];
|
369
369
|
// use the first selected in the array for single-selection
|
@@ -373,7 +373,7 @@ Fired when an item element is tapped.
|
|
373
373
|
this.selected = s;
|
374
374
|
}
|
375
375
|
},
|
376
|
-
|
376
|
+
|
377
377
|
processSplices: function(splices) {
|
378
378
|
for (var i = 0, splice; splice = splices[i]; i++) {
|
379
379
|
for (var j = 0; j < splice.removed.length; j++) {
|
@@ -398,7 +398,7 @@ Fired when an item element is tapped.
|
|
398
398
|
var item = this.valueToItem(value);
|
399
399
|
this.$.selection.select(item);
|
400
400
|
},
|
401
|
-
|
401
|
+
|
402
402
|
setValueSelected: function(value, isSelected) {
|
403
403
|
var item = this.valueToItem(value);
|
404
404
|
if (isSelected ^ this.$.selection.isSelected(item)) {
|
@@ -417,12 +417,12 @@ Fired when an item element is tapped.
|
|
417
417
|
} else {
|
418
418
|
this.selectedModel = null;
|
419
419
|
}
|
420
|
-
this.selectedIndex = this.selectedItem ?
|
420
|
+
this.selectedIndex = this.selectedItem ?
|
421
421
|
parseInt(this.valueToIndex(this.selected)) : -1;
|
422
422
|
},
|
423
|
-
|
423
|
+
|
424
424
|
valueToItem: function(value) {
|
425
|
-
return (value === null || value === undefined) ?
|
425
|
+
return (value === null || value === undefined) ?
|
426
426
|
null : this.items[this.valueToIndex(value)];
|
427
427
|
},
|
428
428
|
|
@@ -506,7 +506,7 @@ Fired when an item element is tapped.
|
|
506
506
|
target = target.parentNode;
|
507
507
|
}
|
508
508
|
},
|
509
|
-
|
509
|
+
|
510
510
|
selectIndex: function(index) {
|
511
511
|
var item = this.items[index];
|
512
512
|
if (item) {
|
@@ -514,7 +514,7 @@ Fired when an item element is tapped.
|
|
514
514
|
return item;
|
515
515
|
}
|
516
516
|
},
|
517
|
-
|
517
|
+
|
518
518
|
/**
|
519
519
|
* Selects the previous item. This should be used in single selection only.
|
520
520
|
*
|
@@ -524,11 +524,11 @@ Fired when an item element is tapped.
|
|
524
524
|
* @returns the previous item or undefined if there is none
|
525
525
|
*/
|
526
526
|
selectPrevious: function(wrapped) {
|
527
|
-
var i = wrapped && !this.selectedIndex ?
|
527
|
+
var i = wrapped && !this.selectedIndex ?
|
528
528
|
this.items.length - 1 : this.selectedIndex - 1;
|
529
529
|
return this.selectIndex(i);
|
530
530
|
},
|
531
|
-
|
531
|
+
|
532
532
|
/**
|
533
533
|
* Selects the next item. This should be used in single selection only.
|
534
534
|
*
|
@@ -538,11 +538,11 @@ Fired when an item element is tapped.
|
|
538
538
|
* @returns the next item or undefined if there is none
|
539
539
|
*/
|
540
540
|
selectNext: function(wrapped) {
|
541
|
-
var i = wrapped && this.selectedIndex >= this.items.length - 1 ?
|
541
|
+
var i = wrapped && this.selectedIndex >= this.items.length - 1 ?
|
542
542
|
0 : this.selectedIndex + 1;
|
543
543
|
return this.selectIndex(i);
|
544
544
|
}
|
545
|
-
|
545
|
+
|
546
546
|
});
|
547
547
|
</script>
|
548
548
|
</polymer-element>
|
@@ -38,10 +38,12 @@ Example:
|
|
38
38
|
|
39
39
|
@group Polymer Core Elements
|
40
40
|
@element core-splitter
|
41
|
+
@mixins Polymer.CoreResizer https://github.com/polymer/core-resizable
|
41
42
|
@homepage github.io
|
42
43
|
-->
|
43
44
|
|
44
45
|
<link rel="import" href="../polymer/polymer.html">
|
46
|
+
<link rel="import" href="../core-resizable/core-resizable.html">
|
45
47
|
|
46
48
|
<polymer-element name="core-splitter" attributes="direction locked minSize allowOverflow"
|
47
49
|
on-trackstart="{{trackStart}}" on-track="{{track}}" on-down="{{preventSelection}}">
|
@@ -53,7 +55,7 @@ Example:
|
|
53
55
|
</template>
|
54
56
|
<script>
|
55
57
|
|
56
|
-
Polymer(
|
58
|
+
Polymer(Polymer.mixin({
|
57
59
|
|
58
60
|
/**
|
59
61
|
* Possible values are `left`, `right`, `up` and `down`.
|
@@ -94,10 +96,21 @@ Example:
|
|
94
96
|
*/
|
95
97
|
allowOverflow: false,
|
96
98
|
|
99
|
+
// Listen for resize requests on parent, since splitter is peer to resizables
|
100
|
+
resizerIsPeer: true,
|
101
|
+
|
97
102
|
ready: function() {
|
98
103
|
this.directionChanged();
|
99
104
|
},
|
100
105
|
|
106
|
+
attached: function() {
|
107
|
+
this.resizerAttachedHandler();
|
108
|
+
},
|
109
|
+
|
110
|
+
detached: function() {
|
111
|
+
this.resizerDetachedHandler();
|
112
|
+
},
|
113
|
+
|
101
114
|
domReady: function() {
|
102
115
|
if (!this.allowOverflow) {
|
103
116
|
this.parentNode.style.overflow = this.nextElementSibling.style.overflow =
|
@@ -137,12 +150,14 @@ Example:
|
|
137
150
|
var d = e[this.horizontal ? 'dy' : 'dx'];
|
138
151
|
this.target.style[this.dimension] =
|
139
152
|
this.size + (this.isNext ? -d : d) + 'px';
|
153
|
+
this.notifyResize();
|
140
154
|
},
|
141
155
|
|
142
156
|
preventSelection: function(e) {
|
143
157
|
e.preventDefault();
|
144
158
|
}
|
145
|
-
|
159
|
+
|
160
|
+
}, Polymer.CoreResizer));
|
146
161
|
|
147
162
|
</script>
|
148
163
|
</polymer-element>
|
@@ -27,10 +27,10 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
|
|
27
27
|
.core-tooltip {
|
28
28
|
position: absolute;
|
29
29
|
font-size: 10px;
|
30
|
-
font-
|
30
|
+
font-weight: 500;
|
31
31
|
padding: 8px;
|
32
32
|
color: white;
|
33
|
-
background-color: rgba(0,0,0,0.
|
33
|
+
background-color: rgba(0, 0, 0, 0.9);
|
34
34
|
box-sizing: border-box;
|
35
35
|
border-radius: 3px; /* TODO: not in spec. */
|
36
36
|
white-space: nowrap;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
<!--
|
2
|
-
Copyright (c)
|
2
|
+
Copyright (c) 2015 The Polymer Project Authors. All rights reserved.
|
3
3
|
This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
|
4
4
|
The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
|
5
5
|
The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
|
@@ -60,13 +60,14 @@ You can customize this attribute with the `tipAttribute` attribute:
|
|
60
60
|
|
61
61
|
@group Polymer Core Elements
|
62
62
|
@element core-tooltip
|
63
|
-
@
|
64
|
-
@mixins Polymer.
|
63
|
+
@mixins Polymer.CoreFocusable https://github.com/polymer/core-focusable
|
64
|
+
@mixins Polymer.CoreResizable https://github.com/polymer/core-resizable
|
65
65
|
@homepage http://www.polymer-project.org/components/core-tooltip/index.html
|
66
66
|
-->
|
67
67
|
|
68
68
|
<link rel="import" href="../polymer/polymer.html">
|
69
69
|
<link rel="import" href="../core-focusable/core-focusable.html">
|
70
|
+
<link rel="import" href="../core-resizable/core-resizable.html">
|
70
71
|
|
71
72
|
<!-- TODO: would be nice to inherit from label to get .htmlFor, and .control,
|
72
73
|
but the latter is readonly. -->
|
@@ -76,8 +77,8 @@ You can customize this attribute with the `tipAttribute` attribute:
|
|
76
77
|
<!-- TODO: possibly reuse core-overlay. -->
|
77
78
|
<polymer-element name="core-tooltip" attributes="noarrow position label show tipAttribute" role="tooltip" tabindex="0">
|
78
79
|
<template>
|
79
|
-
|
80
80
|
<link rel="stylesheet" href="core-tooltip.css">
|
81
|
+
|
81
82
|
<div id="tooltip" hidden?="{{!hasTooltipContent}}"
|
82
83
|
class="core-tooltip {{position}} {{ {noarrow: noarrow, show: show && !disabled} | tokenList}}">
|
83
84
|
<content id="c" select="[{{tipAttribute}}]">{{label}}</content>
|
@@ -102,6 +103,10 @@ You can customize this attribute with the `tipAttribute` attribute:
|
|
102
103
|
*/
|
103
104
|
label: null,
|
104
105
|
|
106
|
+
eventDelegates: {
|
107
|
+
'core-resize': 'positionChanged'
|
108
|
+
},
|
109
|
+
|
105
110
|
computed: {
|
106
111
|
// Indicates whether the tooltip has a set label propety or
|
107
112
|
// an element with the `tip` attribute.
|
@@ -149,13 +154,18 @@ You can customize this attribute with the `tipAttribute` attribute:
|
|
149
154
|
|
150
155
|
attached: function() {
|
151
156
|
this.updatedChildren();
|
157
|
+
this.resizableAttachedHandler();
|
158
|
+
},
|
159
|
+
|
160
|
+
detached: function() {
|
161
|
+
this.resizableDetachedHandler();
|
152
162
|
},
|
153
163
|
|
154
164
|
updatedChildren: function () {
|
155
165
|
this.tipElement = null;
|
156
166
|
|
157
167
|
for (var i = 0, el; el = this.$.c.getDistributedNodes()[i]; ++i) {
|
158
|
-
if (el.hasAttribute && el.hasAttribute(
|
168
|
+
if (el.hasAttribute && el.hasAttribute(this.tipAttribute)) {
|
159
169
|
this.tipElement = el;
|
160
170
|
break;
|
161
171
|
}
|
@@ -199,6 +209,7 @@ You can customize this attribute with the `tipAttribute` attribute:
|
|
199
209
|
};
|
200
210
|
|
201
211
|
Polymer.mixin2(proto, Polymer.CoreFocusable);
|
212
|
+
Polymer.mixin(proto, Polymer.CoreResizable);
|
202
213
|
Polymer(proto);
|
203
214
|
})();
|
204
215
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
<!--
|
2
2
|
@license
|
3
|
-
Copyright (c)
|
3
|
+
Copyright (c) 2015 The Polymer Project Authors. All rights reserved.
|
4
4
|
This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
|
5
5
|
The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
|
6
6
|
The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
|
@@ -51,7 +51,7 @@ li.L1,li.L3,li.L5,li.L7,li.L9 { }
|
|
51
51
|
pre.prettyprint, code.prettyprint { background-color: #fff; }
|
52
52
|
pre .str, code .str { color: #088; }
|
53
53
|
pre .kwd, code .kwd { color: #006; font-weight: bold; }
|
54
|
-
pre .com, code .com { color: #
|
54
|
+
pre .com, code .com { color: #0C3; font-style: italic; }
|
55
55
|
pre .typ, code .typ { color: #404; font-weight: bold; }
|
56
56
|
pre .lit, code .lit { color: #044; }
|
57
57
|
pre .pun, code .pun { color: #440; }
|
@@ -20,7 +20,7 @@ var block = {
|
|
20
20
|
lheading: /^([^\n]+)\n *(=|-){2,} *(?:\n+|$)/,
|
21
21
|
blockquote: /^( *>[^\n]+(\n(?!def)[^\n]+)*\n*)+/,
|
22
22
|
list: /^( *)(bull) [\s\S]+?(?:hr|def|\n{2,}(?! )(?!\1bull )\n*|\s*$)/,
|
23
|
-
html: /^ *(?:comment|closed|closing
|
23
|
+
html: /^ *(?:comment *(?:\n|\s*$)|closed *(?:\n{2,}|\s*$)|closing *(?:\n{2,}|\s*$))/,
|
24
24
|
def: /^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +["(]([^\n]+)[")])? *(?:\n+|$)/,
|
25
25
|
table: noop,
|
26
26
|
paragraph: /^((?:[^\n]+\n?(?!hr|heading|lheading|blockquote|tag|def))+)\n*/,
|
@@ -868,7 +868,7 @@ Renderer.prototype.link = function(href, title, text) {
|
|
868
868
|
} catch (e) {
|
869
869
|
return '';
|
870
870
|
}
|
871
|
-
if (prot.indexOf('javascript:') === 0) {
|
871
|
+
if (prot.indexOf('javascript:') === 0 || prot.indexOf('vbscript:') === 0) {
|
872
872
|
return '';
|
873
873
|
}
|
874
874
|
}
|
@@ -1154,8 +1154,13 @@ function marked(src, opt, callback) {
|
|
1154
1154
|
|
1155
1155
|
pending = tokens.length;
|
1156
1156
|
|
1157
|
-
var done = function() {
|
1158
|
-
|
1157
|
+
var done = function(err) {
|
1158
|
+
if (err) {
|
1159
|
+
opt.highlight = highlight;
|
1160
|
+
return callback(err);
|
1161
|
+
}
|
1162
|
+
|
1163
|
+
var out;
|
1159
1164
|
|
1160
1165
|
try {
|
1161
1166
|
out = Parser.parse(tokens, opt);
|
@@ -1184,6 +1189,7 @@ function marked(src, opt, callback) {
|
|
1184
1189
|
return --pending || done();
|
1185
1190
|
}
|
1186
1191
|
return highlight(token.text, token.lang, function(err, code) {
|
1192
|
+
if (err) return done(err);
|
1187
1193
|
if (code == null || code === token.text) {
|
1188
1194
|
return --pending || done();
|
1189
1195
|
}
|
@@ -1253,7 +1259,7 @@ marked.inlineLexer = InlineLexer.output;
|
|
1253
1259
|
|
1254
1260
|
marked.parse = marked;
|
1255
1261
|
|
1256
|
-
if (typeof exports === 'object') {
|
1262
|
+
if (typeof module !== 'undefined' && typeof exports === 'object') {
|
1257
1263
|
module.exports = marked;
|
1258
1264
|
} else if (typeof define === 'function' && define.amd) {
|
1259
1265
|
define(function() { return marked; });
|