polymer-paper-rails 0.1.0

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.
Files changed (74) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +69 -0
  3. data/Rakefile +1 -0
  4. data/app/assets/components/core/animation/web-animations.html.erb +1 -0
  5. data/app/assets/components/core/animation/web-animations.js +5666 -0
  6. data/app/assets/components/core/icon/core-icon.css +25 -0
  7. data/app/assets/components/core/icon/core-icon.html.erb +126 -0
  8. data/app/assets/components/core/iconset/core-iconset.html.erb +236 -0
  9. data/app/assets/components/core/input/core-input.css +35 -0
  10. data/app/assets/components/core/input/core-input.html.erb +385 -0
  11. data/app/assets/components/core/list/core-list.css +20 -0
  12. data/app/assets/components/core/list/core-list.html.erb +403 -0
  13. data/app/assets/components/core/media-query/core-media-query.html +86 -0
  14. data/app/assets/components/core/menu/core-menu.css +18 -0
  15. data/app/assets/components/core/menu/core-menu.html.erb +62 -0
  16. data/app/assets/components/core/menu/core-submenu.css +29 -0
  17. data/app/assets/components/core/menu/core-submenu.html.erb +106 -0
  18. data/app/assets/components/core/meta/core-meta.html +143 -0
  19. data/app/assets/components/core/overlay/core-key-helper.html +17 -0
  20. data/app/assets/components/core/overlay/core-overlay-layer.html +112 -0
  21. data/app/assets/components/core/overlay/core-overlay.html.erb +661 -0
  22. data/app/assets/components/core/range/core-range.html +106 -0
  23. data/app/assets/components/core/selection/core-selection.html +148 -0
  24. data/app/assets/components/core/selector/core-selector.html.erb +423 -0
  25. data/app/assets/components/core/style/core-style.html +386 -0
  26. data/app/assets/components/core/transition/core-transition-css.html.erb +76 -0
  27. data/app/assets/components/core/transition/core-transition-overlay.css +46 -0
  28. data/app/assets/components/core/transition/core-transition.html.erb +44 -0
  29. data/app/assets/components/paper-button/paper-button.css +115 -0
  30. data/app/assets/components/paper-button/paper-button.html.erb +210 -0
  31. data/app/assets/components/paper-checkbox/paper-checkbox.css +262 -0
  32. data/app/assets/components/paper-checkbox/paper-checkbox.html.erb +104 -0
  33. data/app/assets/components/paper-dialog/paper-dialog-transition.css +59 -0
  34. data/app/assets/components/paper-dialog/paper-dialog-transition.html.erb +27 -0
  35. data/app/assets/components/paper-dialog/paper-dialog.css +0 -0
  36. data/app/assets/components/paper-dialog/paper-dialog.html.erb +176 -0
  37. data/app/assets/components/paper-fab/paper-fab.css +27 -0
  38. data/app/assets/components/paper-fab/paper-fab.html.erb +55 -0
  39. data/app/assets/components/paper-focusable/paper-focusable.html +144 -0
  40. data/app/assets/components/paper-icon-button/paper-icon-button.css +17 -0
  41. data/app/assets/components/paper-icon-button/paper-icon-button.html.erb +87 -0
  42. data/app/assets/components/paper-input/error-100.png +0 -0
  43. data/app/assets/components/paper-input/error-200.png +0 -0
  44. data/app/assets/components/paper-input/paper-input.html.erb +398 -0
  45. data/app/assets/components/paper-input/paper-input.scss +203 -0
  46. data/app/assets/components/paper-item/paper-item.css +30 -0
  47. data/app/assets/components/paper-item/paper-item.html.erb +103 -0
  48. data/app/assets/components/paper-menu-button/paper-menu-button-overlay.html.erb +86 -0
  49. data/app/assets/components/paper-menu-button/paper-menu-button-transition.css +19 -0
  50. data/app/assets/components/paper-menu-button/paper-menu-button-transition.html.erb +118 -0
  51. data/app/assets/components/paper-menu-button/paper-menu-button.css +86 -0
  52. data/app/assets/components/paper-menu-button/paper-menu-button.html.erb +128 -0
  53. data/app/assets/components/paper-progress/paper-progress.css +35 -0
  54. data/app/assets/components/paper-progress/paper-progress.html.erb +98 -0
  55. data/app/assets/components/paper-radio-button/paper-radio-button.css +98 -0
  56. data/app/assets/components/paper-radio-button/paper-radio-button.html.erb +148 -0
  57. data/app/assets/components/paper-radio-group/paper-radio-group.html.erb +68 -0
  58. data/app/assets/components/paper-ripple/paper-ripple.html +426 -0
  59. data/app/assets/components/paper-shadow/paper-shadow.css +81 -0
  60. data/app/assets/components/paper-shadow/paper-shadow.html.erb +212 -0
  61. data/app/assets/components/paper-slider/paper-slider.css +193 -0
  62. data/app/assets/components/paper-slider/paper-slider.html.erb +310 -0
  63. data/app/assets/components/paper-tabs/paper-tab.css +49 -0
  64. data/app/assets/components/paper-tabs/paper-tab.html.erb +66 -0
  65. data/app/assets/components/paper-tabs/paper-tabs.css +57 -0
  66. data/app/assets/components/paper-tabs/paper-tabs.html.erb +127 -0
  67. data/app/assets/components/paper-toast/paper-toast.css +0 -0
  68. data/app/assets/components/paper-toast/paper-toast.html.erb +258 -0
  69. data/app/assets/components/paper-toggle-button/paper-toggle-button.css +61 -0
  70. data/app/assets/components/paper-toggle-button/paper-toggle-button.html.erb +125 -0
  71. data/lib/polymer-paper-rails/engine.rb +4 -0
  72. data/lib/polymer-paper-rails/version.rb +3 -0
  73. data/lib/polymer-paper-rails.rb +2 -0
  74. metadata +158 -0
@@ -0,0 +1,86 @@
1
+ /*
2
+ Copyright 2013 The Polymer Authors. All rights reserved.
3
+ Use of this source code is governed by a BSD-style
4
+ license that can be found in the LICENSE file.
5
+ */
6
+
7
+ :host {
8
+ display: inline-block;
9
+ padding: 8px;
10
+ position: relative;
11
+ background-image: none;
12
+ outline: none;
13
+ user-select: none;
14
+ -webkit-user-select: none;
15
+ cursor: pointer;
16
+ overflow: hidden;
17
+ }
18
+
19
+ :host([disabled]) {
20
+ cursor: auto;
21
+ }
22
+
23
+ core-icon {
24
+ position: relative;
25
+ }
26
+
27
+ core-icon::shadow svg {
28
+ transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1);
29
+ -webkit-transition: -webkit-transform 0.2s cubic-bezier(0.4, 0, 0.2, 1);
30
+ transform-origin: 50% 50%;
31
+ -webkit-transform-origin: 50% 50%;
32
+ }
33
+
34
+ :host(:hover) core-icon::shadow svg {
35
+ transform: scale(1.2);
36
+ -webkit-transform: scale(1.2);
37
+ }
38
+
39
+ :host([disabled]:hover) core-icon::shadow svg {
40
+ transform: none;
41
+ -webkit-transform: none;
42
+ }
43
+
44
+ :host([disabled]) core-icon::shadow path {
45
+ fill: #c9c9c9;
46
+ }
47
+
48
+ #overlay {
49
+ display: block;
50
+ position: fixed;
51
+ border-radius: 3px;
52
+ }
53
+
54
+ .paper-menu-button-overlay-ink {
55
+ position: absolute;
56
+ top: 0;
57
+ left: 0;
58
+ width: 40px;
59
+ height: 40px;
60
+ border-radius: 20px;
61
+ background: #fff;
62
+ opacity: 0;
63
+ transform: scale(0);
64
+ -webkit-transform: scale(0);
65
+ }
66
+
67
+ :host([halign="right"]) .paper-menu-button-overlay-ink {
68
+ left: auto;
69
+ right: 0;
70
+ }
71
+
72
+ .paper-menu-button-overlay-bg {
73
+ position: absolute;
74
+ top: 0;
75
+ left: 0;
76
+ bottom: 0;
77
+ right: 0;
78
+ border-radius: 3px;
79
+ background: #fff;
80
+ opacity: 0;
81
+ }
82
+
83
+ #menu {
84
+ position: relative;
85
+ margin: 0;
86
+ }
@@ -0,0 +1,128 @@
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
+ A `paper-menu-button` is a `paper-icon-button` that opens a drop down menu when tapped.
11
+
12
+ Example:
13
+
14
+ <paper-menu-button icon="menu">
15
+ <div>Menu Item 1</div>
16
+ <div>Menu Item 2</div>
17
+ <div>Menu Item 3</div>
18
+ </paper-menu-button>
19
+
20
+ @group Paper Elements
21
+ @element paper-menu-button
22
+ @extends paper-focusable
23
+ -->
24
+
25
+ <%= html_import_tag "core/icon/core-icon" %>
26
+ <%= html_import_tag "core/menu/core-menu" %>
27
+ <%= html_import_tag "paper-focusable/paper-focusable" %>
28
+ <%= html_import_tag "paper-shadow/paper-shadow" %>
29
+ <%= html_import_tag "paper-menu-button/paper-menu-button-overlay" %>
30
+ <%= html_import_tag "paper-menu-button/paper-menu-button-transition" %>
31
+
32
+ <polymer-element name="paper-menu-button-overlay-container" noscript>
33
+ <template>
34
+ <content></content>
35
+ </template>
36
+ </polymer-element>
37
+
38
+ <polymer-element name="paper-menu-button" extends="paper-focusable" attributes="src icon opened halign valign slow" on-tap="{{tapAction}}">
39
+ <template>
40
+ <%= stylesheet_link_tag "paper-menu-button/paper-menu-button" %>
41
+ <paper-menu-button-overlay target="{{$.overlay}}" relatedTarget="{{}}" halign="{{halign}}" valign="{{valign}}" opened="{{opened}}" transition="paper-menu-button-transition-top-{{halign}}{{slow ? '-slow' : ''}}"></paper-menu-button-overlay>
42
+ <paper-menu-button-overlay-container id="overlay">
43
+ <paper-shadow target="{{$.overlayBg}}" z="0" hasPosition></paper-shadow>
44
+ <div class="paper-menu-button-overlay-ink"></div>
45
+ <div id="overlayBg" class="paper-menu-button-overlay-bg"></div>
46
+ <core-menu id="menu">
47
+ <content></content>
48
+ </core-menu>
49
+ </paper-menu-button-overlay-container>
50
+ <core-icon src="{{src}}" icon="{{icon}}"></core-icon>
51
+ </template>
52
+ <script>
53
+ Polymer('paper-menu-button', {
54
+
55
+ publish: {
56
+
57
+ /**
58
+ * If true, this menu is currently visible.
59
+ *
60
+ * @attribute opened
61
+ * @type boolean
62
+ * @default false
63
+ */
64
+ opened: { value: false, reflect: true },
65
+
66
+ /**
67
+ * The horizontal alignment of the pulldown menu relative to the button.
68
+ *
69
+ * @attribute halign
70
+ * @type 'left' | 'right'
71
+ * @default 'left'
72
+ */
73
+ halign: { value: 'left', reflect: true },
74
+
75
+ /**
76
+ * The vertical alignment of the pulldown menu relative to the button.
77
+ *
78
+ * @attribute valign
79
+ * @type 'bottom' | 'top'
80
+ * @default 'top'
81
+ */
82
+ valign: {value: 'top', reflect: true}
83
+ },
84
+
85
+ /**
86
+ * The URL of an image for the icon. Should not use `icon` property
87
+ * if you are using this property.
88
+ *
89
+ * @attribute src
90
+ * @type string
91
+ * @default ''
92
+ */
93
+ src: '',
94
+
95
+ /**
96
+ * Specifies the icon name or index in the set of icons available in
97
+ * the icon set. Should not use `src` property if you are using this
98
+ * property.
99
+ *
100
+ * @attribute icon
101
+ * @type string
102
+ * @default ''
103
+ */
104
+ icon: '',
105
+
106
+ slow: false,
107
+
108
+ tapAction: function() {
109
+ if (this.disabled) {
110
+ return;
111
+ }
112
+
113
+ this.super();
114
+ this.toggle();
115
+ },
116
+
117
+ /**
118
+ * Toggle the opened state of the menu.
119
+ *
120
+ * @method toggle
121
+ */
122
+ toggle: function() {
123
+ this.opened = !this.opened;
124
+ }
125
+
126
+ });
127
+ </script>
128
+ </polymer-element>
@@ -0,0 +1,35 @@
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
+ :host {
11
+ display: inline-block;
12
+ width: 200px;
13
+ height: 4px;
14
+ }
15
+
16
+ #progressContainer {
17
+ position: relative;
18
+ height: 100%;
19
+ background-color: #c8c8c8;
20
+ }
21
+
22
+ #activeProgress, #secondaryProgress {
23
+ position: absolute;
24
+ top: 0;
25
+ left: 0;
26
+ bottom: 0;
27
+ }
28
+
29
+ #activeProgress {
30
+ background-color: #0f9d58;
31
+ }
32
+
33
+ #secondaryProgress {
34
+ background-color: #87ceac;
35
+ }
@@ -0,0 +1,98 @@
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
+ The progress bars are for situations where the percentage completed can be
12
+ determined. They give users a quick sense of how much longer an operation
13
+ will take.
14
+
15
+ Example:
16
+
17
+ <paper-progress value="10"></paper-progress>
18
+
19
+ There is also a secondary progress which is useful for displaying intermediate
20
+ progress, such as the buffer level during a streaming playback progress bar.
21
+
22
+ Example:
23
+
24
+ <paper-progress value="10" secondaryProgesss="30"></paper-progress>
25
+
26
+ Styling progress bar:
27
+
28
+ To change the active progress bar color:
29
+
30
+ paper-progress::shadow #activeProgress {
31
+ background-color: #e91e63;
32
+ }
33
+
34
+ To change the secondary progress bar color:
35
+
36
+ paper-progress::shadow #secondaryProgress {
37
+ background-color: #f8bbd0;
38
+ }
39
+
40
+ To change the progress bar background color:
41
+
42
+ paper-progress::shadow #progressContainer {
43
+ background-color: #64ffda;
44
+ }
45
+
46
+ @group Paper Elements
47
+ @element paper-progress
48
+ @extends core-range
49
+ @homepage github.io
50
+ -->
51
+
52
+ <%= html_import_tag "core/range/core-range" %>
53
+
54
+ <polymer-element name="paper-progress" extends="core-range" attributes="secondaryProgress">
55
+
56
+ <template>
57
+
58
+ <%= stylesheet_link_tag "paper-progress/paper-progress" %>
59
+
60
+ <div id="progressContainer" role="progressbar" aria-valuenow="{{value}}" aria-valuemin="{{min}}" aria-valuemax="{{max}}">
61
+
62
+ <div id="secondaryProgress" style="width: {{secondaryRatio}}%;"></div>
63
+ <div id="activeProgress" style="width: {{ratio}}%;"></div>
64
+
65
+ </div>
66
+
67
+ </template>
68
+
69
+ <script>
70
+
71
+ Polymer('paper-progress', {
72
+
73
+ /**
74
+ * The number that represents the current secondary progress.
75
+ *
76
+ * @attribute secondaryProgress
77
+ * @type number
78
+ * @default 0
79
+ */
80
+ secondaryProgress: 0,
81
+
82
+ step: 0,
83
+
84
+ observe: {
85
+ 'value secondaryProgress min max': 'update'
86
+ },
87
+
88
+ update: function() {
89
+ this.super();
90
+ this.secondaryProgress = this.clampValue(this.secondaryProgress);
91
+ this.secondaryRatio = this.calcRatio(this.secondaryProgress) * 100;
92
+ }
93
+
94
+ });
95
+
96
+ </script>
97
+
98
+ </polymer-element>
@@ -0,0 +1,98 @@
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
+ :host {
11
+ display: inline-block;
12
+ white-space: nowrap;
13
+ }
14
+
15
+ :host(:focus) {
16
+ outline: none;
17
+ }
18
+
19
+ #radioContainer {
20
+ position: relative;
21
+ width: 16px;
22
+ height: 16px;
23
+ cursor: pointer;
24
+ }
25
+
26
+ #radioContainer.labeled {
27
+ display: inline-block;
28
+ vertical-align: middle;
29
+ }
30
+
31
+ #ink {
32
+ position: absolute;
33
+ top: -17px;
34
+ left: -17px;
35
+ width: 50px;
36
+ height: 50px;
37
+ color: #5a5a5a;
38
+ }
39
+
40
+ #ink[checked] {
41
+ color: #0f9d58;
42
+ }
43
+
44
+ #offRadio {
45
+ position: absolute;
46
+ top: 0px;
47
+ left: 0px;
48
+ width: 12px;
49
+ height: 12px;
50
+ border-radius: 50%;
51
+ border: solid 2px;
52
+ border-color: #5a5a5a;
53
+ }
54
+
55
+ #onRadio {
56
+ position: absolute;
57
+ top: 0;
58
+ left: 0;
59
+ width: 16px;
60
+ height: 16px;
61
+ border-radius: 50%;
62
+ background-color: #0f9d58;
63
+ -webkit-transform: scale(0);
64
+ transform: scale(0);
65
+ transition: -webkit-transform ease 0.28s;
66
+ transition: transform ease 0.28s;
67
+ }
68
+
69
+ #onRadio.fill {
70
+ -webkit-transform: scale(1.1);
71
+ transform: scale(1.1);
72
+ }
73
+
74
+ #radioLabel {
75
+ position: relative;
76
+ display: inline-block;
77
+ vertical-align: middle;
78
+ margin-left: 10px;
79
+ white-space: normal;
80
+ pointer-events: none;
81
+ }
82
+
83
+ #radioLabel[hidden] {
84
+ display: none;
85
+ }
86
+
87
+ /* disabled state */
88
+ :host([disabled]) {
89
+ pointer-events: none;
90
+ }
91
+
92
+ :host([disabled]) #offRadio {
93
+ border-color: #eaeaea !important;
94
+ }
95
+
96
+ :host([disabled]) #onRadio {
97
+ background-color: #eaeaea !important;
98
+ }