polymer-paper-rails 0.1.0 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (558) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/components/core-animation/README.md +4 -0
  3. data/app/assets/components/core-animation/bower.json +8 -0
  4. data/app/assets/components/core-animation/core-animation-group.html +169 -0
  5. data/app/assets/components/core-animation/core-animation.html +524 -0
  6. data/app/assets/components/core-animation/demo.html +149 -0
  7. data/app/assets/components/core-animation/index.html +22 -0
  8. data/app/assets/components/core-animation/web-animations.html +10 -0
  9. data/app/assets/components/core-collapse/README.md +4 -0
  10. data/app/assets/components/core-collapse/bower.json +7 -0
  11. data/app/assets/components/core-collapse/core-collapse.css +16 -0
  12. data/app/assets/components/core-collapse/core-collapse.html +262 -0
  13. data/app/assets/components/core-collapse/demo.html +93 -0
  14. data/app/assets/components/core-collapse/index.html +22 -0
  15. data/app/assets/components/core-component-page/README.md +6 -0
  16. data/app/assets/components/core-component-page/bowager-logo.png +0 -0
  17. data/app/assets/components/core-component-page/bower.json +8 -0
  18. data/app/assets/components/core-component-page/core-component-page.html +37 -0
  19. data/app/assets/components/core-component-page/demo.html +23 -0
  20. data/app/assets/components/core-component-page/index.html +22 -0
  21. data/app/assets/components/core-drawer-panel/README.md +4 -0
  22. data/app/assets/components/core-drawer-panel/bower.json +8 -0
  23. data/app/assets/components/core-drawer-panel/core-drawer-panel.css +147 -0
  24. data/app/assets/components/core-drawer-panel/core-drawer-panel.html +339 -0
  25. data/app/assets/components/core-drawer-panel/demo.html +73 -0
  26. data/app/assets/components/core-drawer-panel/index.html +22 -0
  27. data/app/assets/components/core-drawer-panel/metadata.html +37 -0
  28. data/app/assets/components/core-elements/README.md +4 -0
  29. data/app/assets/components/core-elements/bower.json +29 -0
  30. data/app/assets/components/core-elements/demo.html +105 -0
  31. data/app/assets/components/core-elements/demos/core-toolbar.html +98 -0
  32. data/app/assets/components/core-elements/metadata.html +23 -0
  33. data/app/assets/components/core-elements/paper-elements.html +37 -0
  34. data/app/assets/components/core-field/README.md +4 -0
  35. data/app/assets/components/core-field/bower.json +7 -0
  36. data/app/assets/components/core-field/core-field.css +38 -0
  37. data/app/assets/components/core-field/core-field.html +35 -0
  38. data/app/assets/components/core-field/demo.html +67 -0
  39. data/app/assets/components/core-field/index.html +22 -0
  40. data/app/assets/components/core-field/metadata.html +26 -0
  41. data/app/assets/components/core-header-panel/README.md +4 -0
  42. data/app/assets/components/core-header-panel/bower.json +7 -0
  43. data/app/assets/components/core-header-panel/core-header-panel.css +75 -0
  44. data/app/assets/components/core-header-panel/core-header-panel.html +225 -0
  45. data/app/assets/components/core-header-panel/demo.html +100 -0
  46. data/app/assets/components/core-header-panel/index.html +23 -0
  47. data/app/assets/components/core-header-panel/metadata.html +37 -0
  48. data/app/assets/components/core-icon/README.md +4 -0
  49. data/app/assets/components/core-icon/bower.json +8 -0
  50. data/app/assets/components/{core/icon → core-icon}/core-icon.css +3 -12
  51. data/app/assets/components/core-icon/core-icon.html +189 -0
  52. data/app/assets/components/core-icon/demo.html +44 -0
  53. data/app/assets/components/core-icon/index.html +22 -0
  54. data/app/assets/components/core-icon/metadata.html +21 -0
  55. data/app/assets/components/core-icon-button/README.md +4 -0
  56. data/app/assets/components/core-icon-button/bower.json +7 -0
  57. data/app/assets/components/core-icon-button/core-icon-button.css +75 -0
  58. data/app/assets/components/core-icon-button/core-icon-button.html +81 -0
  59. data/app/assets/components/core-icon-button/demo.html +35 -0
  60. data/app/assets/components/core-icon-button/index.html +22 -0
  61. data/app/assets/components/core-icon-button/metadata.html +20 -0
  62. data/app/assets/components/core-icons/README.md +4 -0
  63. data/app/assets/components/core-icons/av-icons.html +46 -0
  64. data/app/assets/components/core-icons/bower.json +9 -0
  65. data/app/assets/components/core-icons/communication-icons.html +59 -0
  66. data/app/assets/components/core-icons/core-icons.html +278 -0
  67. data/app/assets/components/core-icons/demo.html +96 -0
  68. data/app/assets/components/core-icons/device-icons.html +59 -0
  69. data/app/assets/components/core-icons/editor-icons.html +67 -0
  70. data/app/assets/components/core-icons/hardware-icons.html +58 -0
  71. data/app/assets/components/core-icons/image-icons.html +146 -0
  72. data/app/assets/components/core-icons/index.html +22 -0
  73. data/app/assets/components/core-icons/maps-icons.html +69 -0
  74. data/app/assets/components/core-icons/notification-icons.html +50 -0
  75. data/app/assets/components/core-icons/png-icons.html +19 -0
  76. data/app/assets/components/core-icons/social-icons.html +52 -0
  77. data/app/assets/components/core-iconset/README.md +4 -0
  78. data/app/assets/components/core-iconset/bower.json +9 -0
  79. data/app/assets/components/{core/iconset/core-iconset.html.erb → core-iconset/core-iconset.html} +29 -24
  80. data/app/assets/components/core-iconset/demo.html +62 -0
  81. data/app/assets/components/core-iconset/index.html +22 -0
  82. data/app/assets/components/core-iconset/my-icons-big.png +0 -0
  83. data/app/assets/components/core-iconset/my-icons.png +0 -0
  84. data/app/assets/components/core-iconset-svg/README.md +4 -0
  85. data/app/assets/components/core-iconset-svg/bower.json +8 -0
  86. data/app/assets/components/core-iconset-svg/core-iconset-svg.html +168 -0
  87. data/app/assets/components/core-iconset-svg/demo.html +66 -0
  88. data/app/assets/components/core-iconset-svg/index.html +22 -0
  89. data/app/assets/components/core-iconset-svg/svg-sample-icons.html +68 -0
  90. data/app/assets/components/core-input/README.md +2 -0
  91. data/app/assets/components/core-input/bower.json +6 -0
  92. data/app/assets/components/core-input/core-input.css +45 -0
  93. data/app/assets/components/{core/input/core-input.html.erb → core-input/core-input.html} +164 -95
  94. data/app/assets/components/core-input/demo.html +142 -0
  95. data/app/assets/components/core-input/index.html +22 -0
  96. data/app/assets/components/core-input/metadata.html +20 -0
  97. data/app/assets/components/core-item/README.md +4 -0
  98. data/app/assets/components/core-item/bower.json +8 -0
  99. data/app/assets/components/core-item/core-item.css +44 -0
  100. data/app/assets/components/core-item/core-item.html +74 -0
  101. data/app/assets/components/core-item/demo.html +92 -0
  102. data/app/assets/components/core-item/index.html +22 -0
  103. data/app/assets/components/core-item/metadata.html +24 -0
  104. data/app/assets/components/core-media-query/README.md +4 -0
  105. data/app/assets/components/core-media-query/bower.json +7 -0
  106. data/app/assets/components/{core/media-query → core-media-query}/core-media-query.html +1 -0
  107. data/app/assets/components/core-media-query/demo.html +44 -0
  108. data/app/assets/components/core-media-query/index.html +22 -0
  109. data/app/assets/components/core-menu/README.md +4 -0
  110. data/app/assets/components/core-menu/bower.json +9 -0
  111. data/app/assets/components/{core/menu → core-menu}/core-menu.css +0 -0
  112. data/app/assets/components/{core/menu/core-menu.html.erb → core-menu/core-menu.html} +3 -3
  113. data/app/assets/components/{core/menu → core-menu}/core-submenu.css +0 -0
  114. data/app/assets/components/{core/menu/core-submenu.html.erb → core-menu/core-submenu.html} +10 -10
  115. data/app/assets/components/core-menu/demo.html +101 -0
  116. data/app/assets/components/core-menu/index.html +22 -0
  117. data/app/assets/components/core-menu/metadata.html +62 -0
  118. data/app/assets/components/core-meta/README.md +4 -0
  119. data/app/assets/components/core-meta/bower.json +7 -0
  120. data/app/assets/components/{core/meta → core-meta}/core-meta.html +24 -22
  121. data/app/assets/components/core-meta/demo.html +58 -0
  122. data/app/assets/components/core-meta/index.html +22 -0
  123. data/app/assets/components/core-overlay/README.md +4 -0
  124. data/app/assets/components/core-overlay/bower.json +8 -0
  125. data/app/assets/components/{core/overlay → core-overlay}/core-key-helper.html +2 -0
  126. data/app/assets/components/{core/overlay → core-overlay}/core-overlay-layer.html +112 -112
  127. data/app/assets/components/{core/overlay/core-overlay.html.erb → core-overlay/core-overlay.html} +77 -51
  128. data/app/assets/components/core-overlay/demo.html +155 -0
  129. data/app/assets/components/core-overlay/index.html +22 -0
  130. data/app/assets/components/core-popup-menu/README.md +6 -0
  131. data/app/assets/components/core-popup-menu/bower.json +13 -0
  132. data/app/assets/components/core-popup-menu/core-popup-menu.css +28 -0
  133. data/app/assets/components/core-popup-menu/core-popup-menu.html +198 -0
  134. data/app/assets/components/core-popup-menu/core-popup-overlay.html +111 -0
  135. data/app/assets/components/core-popup-menu/demo.html +542 -0
  136. data/app/assets/components/core-popup-menu/index.html +22 -0
  137. data/app/assets/components/core-popup-menu/metadata.html +62 -0
  138. data/app/assets/components/core-range/README.md +2 -0
  139. data/app/assets/components/core-range/bower.json +7 -0
  140. data/app/assets/components/{core/range → core-range}/core-range.html +17 -15
  141. data/app/assets/components/core-range/demo.html +64 -0
  142. data/app/assets/components/core-range/index.html +22 -0
  143. data/app/assets/components/core-scroll-header-panel/README.md +4 -0
  144. data/app/assets/components/core-scroll-header-panel/bower.json +11 -0
  145. data/app/assets/components/core-scroll-header-panel/core-scroll-header-panel.css +58 -0
  146. data/app/assets/components/core-scroll-header-panel/core-scroll-header-panel.html +313 -0
  147. data/app/assets/components/core-scroll-header-panel/demo.html +111 -0
  148. data/app/assets/components/core-scroll-header-panel/demos/demo1.html +80 -0
  149. data/app/assets/components/core-scroll-header-panel/demos/demo2.html +82 -0
  150. data/app/assets/components/core-scroll-header-panel/demos/demo3.html +81 -0
  151. data/app/assets/components/core-scroll-header-panel/demos/demo4.html +109 -0
  152. data/app/assets/components/core-scroll-header-panel/demos/demo5.html +109 -0
  153. data/app/assets/components/core-scroll-header-panel/demos/demo6.html +113 -0
  154. data/app/assets/components/core-scroll-header-panel/demos/demo7.html +120 -0
  155. data/app/assets/components/core-scroll-header-panel/demos/demo8.html +122 -0
  156. data/app/assets/components/core-scroll-header-panel/demos/demo9.html +100 -0
  157. data/app/assets/components/core-scroll-header-panel/demos/images/bg2.jpg +0 -0
  158. data/app/assets/components/core-scroll-header-panel/demos/images/bg3.jpg +0 -0
  159. data/app/assets/components/core-scroll-header-panel/demos/images/bg5.jpg +0 -0
  160. data/app/assets/components/core-scroll-header-panel/demos/images/bg6.jpg +0 -0
  161. data/app/assets/components/core-scroll-header-panel/demos/images/bg9.jpg +0 -0
  162. data/app/assets/components/core-scroll-header-panel/demos/lorem-ipsum.html +42 -0
  163. data/app/assets/components/core-scroll-header-panel/index.html +22 -0
  164. data/app/assets/components/core-scroll-header-panel/metadata.html +41 -0
  165. data/app/assets/components/core-selection/README.md +4 -0
  166. data/app/assets/components/core-selection/bower.json +7 -0
  167. data/app/assets/components/{core/selection → core-selection}/core-selection.html +6 -5
  168. data/app/assets/components/core-selection/demo.html +59 -0
  169. data/app/assets/components/core-selection/index.html +22 -0
  170. data/app/assets/components/core-selector/README.md +4 -0
  171. data/app/assets/components/core-selector/bower.json +8 -0
  172. data/app/assets/components/{core/selector/core-selector.html.erb → core-selector/core-selector.html} +53 -16
  173. data/app/assets/components/core-selector/demo.html +106 -0
  174. data/app/assets/components/core-selector/index.html +22 -0
  175. data/app/assets/components/core-selector/metadata.html +20 -0
  176. data/app/assets/components/core-style/README.md +4 -0
  177. data/app/assets/components/core-style/bower.json +7 -0
  178. data/app/assets/components/{core/style → core-style}/core-style.html +387 -386
  179. data/app/assets/components/core-style/demo.html +58 -0
  180. data/app/assets/components/core-style/elements.html +55 -0
  181. data/app/assets/components/core-style/index.html +22 -0
  182. data/app/assets/components/core-style/my-theme.html +73 -0
  183. data/app/assets/components/core-toolbar/README.md +4 -0
  184. data/app/assets/components/core-toolbar/bower.json +7 -0
  185. data/app/assets/components/core-toolbar/core-toolbar.css +110 -0
  186. data/app/assets/components/core-toolbar/core-toolbar.html +74 -0
  187. data/app/assets/components/core-toolbar/demo.html +107 -0
  188. data/app/assets/components/core-toolbar/index.html +22 -0
  189. data/app/assets/components/core-toolbar/metadata.html +28 -0
  190. data/app/assets/components/core-transition/README.md +2 -0
  191. data/app/assets/components/core-transition/bower.json +8 -0
  192. data/app/assets/components/core-transition/core-transition-css.html +221 -0
  193. data/app/assets/components/{core/transition → core-transition}/core-transition-overlay.css +1 -1
  194. data/app/assets/components/core-transition/core-transition.html +140 -0
  195. data/app/assets/components/core-transition/demo.html +87 -0
  196. data/app/assets/components/core-transition/index.html +22 -0
  197. data/app/assets/components/font-roboto/roboto.html +9 -0
  198. data/app/assets/components/paper-button/README.md +4 -0
  199. data/app/assets/components/paper-button/bower.json +11 -0
  200. data/app/assets/components/paper-button/demo.html +99 -0
  201. data/app/assets/components/paper-button/demo2.html +136 -0
  202. data/app/assets/components/paper-button/index.html +22 -0
  203. data/app/assets/components/paper-button/metadata.html +17 -0
  204. data/app/assets/components/paper-button/paper-button.css +11 -1
  205. data/app/assets/components/paper-button/{paper-button.html.erb → paper-button.html} +9 -8
  206. data/app/assets/components/paper-checkbox/README.md +4 -0
  207. data/app/assets/components/paper-checkbox/bower.json +8 -0
  208. data/app/assets/components/paper-checkbox/demo.html +113 -0
  209. data/app/assets/components/paper-checkbox/index.html +22 -0
  210. data/app/assets/components/paper-checkbox/metadata.html +17 -0
  211. data/app/assets/components/paper-checkbox/paper-checkbox.css +49 -48
  212. data/app/assets/components/paper-checkbox/{paper-checkbox.html.erb → paper-checkbox.html} +110 -104
  213. data/app/assets/components/paper-dialog/README.md +4 -0
  214. data/app/assets/components/paper-dialog/bower.json +10 -0
  215. data/app/assets/components/paper-dialog/demo.html +85 -0
  216. data/app/assets/components/paper-dialog/index.html +22 -0
  217. data/app/assets/components/paper-dialog/{paper-dialog-transition.html.erb → paper-dialog-transition.html} +3 -3
  218. data/app/assets/components/paper-dialog/paper-dialog.css +52 -0
  219. data/app/assets/components/paper-dialog/{paper-dialog.html.erb → paper-dialog.html} +7 -7
  220. data/app/assets/components/paper-dropdown/README.md +9 -0
  221. data/app/assets/components/paper-dropdown/bower.json +12 -0
  222. data/app/assets/components/paper-dropdown/demo.html +345 -0
  223. data/app/assets/components/paper-dropdown/index.html +22 -0
  224. data/app/assets/components/paper-dropdown/paper-dropdown.css +48 -0
  225. data/app/assets/components/paper-dropdown/paper-dropdown.html +191 -0
  226. data/app/assets/components/paper-fab/README.md +4 -0
  227. data/app/assets/components/paper-fab/bower.json +8 -0
  228. data/app/assets/components/paper-fab/demo.html +72 -0
  229. data/app/assets/components/paper-fab/demo2.html +103 -0
  230. data/app/assets/components/paper-fab/index.html +22 -0
  231. data/app/assets/components/paper-fab/metadata.html +36 -0
  232. data/app/assets/components/paper-fab/paper-fab.css +11 -2
  233. data/app/assets/components/paper-fab/{paper-fab.html.erb → paper-fab.html} +3 -2
  234. data/app/assets/components/paper-focusable/README.md +4 -0
  235. data/app/assets/components/paper-focusable/bower.json +7 -0
  236. data/app/assets/components/paper-focusable/demo.html +155 -0
  237. data/app/assets/components/paper-focusable/paper-focusable.html +2 -0
  238. data/app/assets/components/paper-icon-button/README.md +4 -0
  239. data/app/assets/components/paper-icon-button/bower.json +9 -0
  240. data/app/assets/components/paper-icon-button/demo.html +102 -0
  241. data/app/assets/components/paper-icon-button/index.html +22 -0
  242. data/app/assets/components/paper-icon-button/metadata.html +21 -0
  243. data/app/assets/components/paper-icon-button/paper-icon-button.css +1 -1
  244. data/app/assets/components/paper-icon-button/{paper-icon-button.html.erb → paper-icon-button.html} +7 -7
  245. data/app/assets/components/paper-icon-button/pulse-ink.css +20 -0
  246. data/app/assets/components/paper-input/README.md +4 -0
  247. data/app/assets/components/paper-input/bower.json +11 -0
  248. data/app/assets/components/paper-input/demo.html +124 -0
  249. data/app/assets/components/paper-input/index.html +22 -0
  250. data/app/assets/components/paper-input/metadata.html +23 -0
  251. data/app/assets/components/paper-input/paper-input.css +152 -0
  252. data/app/assets/components/paper-input/paper-input.html +314 -0
  253. data/app/assets/components/paper-item/README.md +4 -0
  254. data/app/assets/components/paper-item/bower.json +9 -0
  255. data/app/assets/components/paper-item/demo.html +39 -0
  256. data/app/assets/components/paper-item/index.html +22 -0
  257. data/app/assets/components/paper-item/metadata.html +23 -0
  258. data/app/assets/components/paper-item/paper-item.css +15 -2
  259. data/app/assets/components/paper-item/{paper-item.html.erb → paper-item.html} +7 -6
  260. data/app/assets/components/paper-menu-button/README.md +4 -0
  261. data/app/assets/components/paper-menu-button/bower.json +16 -0
  262. data/app/assets/components/paper-menu-button/demo.html +95 -0
  263. data/app/assets/components/paper-menu-button/index.html +22 -0
  264. data/app/assets/components/paper-menu-button/metadata.html +21 -0
  265. data/app/assets/components/paper-menu-button/{paper-menu-button-transition.html.erb → paper-menu-button-transition.html} +31 -26
  266. data/app/assets/components/paper-menu-button/paper-menu-button.css +5 -9
  267. data/app/assets/components/paper-menu-button/{paper-menu-button.html.erb → paper-menu-button.html} +52 -20
  268. data/app/assets/components/paper-progress/README.md +4 -0
  269. data/app/assets/components/paper-progress/bower.json +8 -0
  270. data/app/assets/components/paper-progress/demo.html +107 -0
  271. data/app/assets/components/paper-progress/index.html +22 -0
  272. data/app/assets/components/paper-progress/metadata.html +17 -0
  273. data/app/assets/components/paper-progress/paper-progress.css +1 -1
  274. data/app/assets/components/paper-progress/{paper-progress.html.erb → paper-progress.html} +23 -23
  275. data/app/assets/components/paper-radio-button/README.md +4 -0
  276. data/app/assets/components/paper-radio-button/bower.json +7 -0
  277. data/app/assets/components/paper-radio-button/demo.html +75 -0
  278. data/app/assets/components/paper-radio-button/index.html +22 -0
  279. data/app/assets/components/paper-radio-button/metadata.html +17 -0
  280. data/app/assets/components/paper-radio-button/paper-radio-button.css +14 -8
  281. data/app/assets/components/paper-radio-button/{paper-radio-button.html.erb → paper-radio-button.html} +38 -29
  282. data/app/assets/components/paper-radio-group/README.md +4 -0
  283. data/app/assets/components/paper-radio-group/bower.json +9 -0
  284. data/app/assets/components/paper-radio-group/demo.html +82 -0
  285. data/app/assets/components/paper-radio-group/index.html +22 -0
  286. data/app/assets/components/paper-radio-group/metadata.html +22 -0
  287. data/app/assets/components/paper-radio-group/{paper-radio-group.html.erb → paper-radio-group.html} +16 -16
  288. data/app/assets/components/paper-ripple/README.md +4 -0
  289. data/app/assets/components/paper-ripple/bower.json +9 -0
  290. data/app/assets/components/paper-ripple/demo.html +418 -0
  291. data/app/assets/components/paper-ripple/index.html +22 -0
  292. data/app/assets/components/paper-ripple/metadata.html +20 -0
  293. data/app/assets/components/paper-ripple/paper-ripple.html +3 -2
  294. data/app/assets/components/paper-ripple/raw.html +799 -0
  295. data/app/assets/components/paper-shadow/README.md +4 -0
  296. data/app/assets/components/paper-shadow/bower.json +7 -0
  297. data/app/assets/components/paper-shadow/demo.html +252 -0
  298. data/app/assets/components/paper-shadow/index.html +22 -0
  299. data/app/assets/components/paper-shadow/metadata.html +17 -0
  300. data/app/assets/components/paper-shadow/paper-shadow.css +11 -1
  301. data/app/assets/components/paper-shadow/{paper-shadow.html.erb → paper-shadow.html} +11 -4
  302. data/app/assets/components/paper-slider/README.md +4 -0
  303. data/app/assets/components/paper-slider/bower.json +9 -0
  304. data/app/assets/components/paper-slider/demo.html +151 -0
  305. data/app/assets/components/paper-slider/index.html +22 -0
  306. data/app/assets/components/paper-slider/metadata.html +20 -0
  307. data/app/assets/components/paper-slider/paper-slider.css +58 -26
  308. data/app/assets/components/paper-slider/{paper-slider.html.erb → paper-slider.html} +72 -75
  309. data/app/assets/components/paper-tabs/README.md +4 -0
  310. data/app/assets/components/paper-tabs/bower.json +12 -0
  311. data/app/assets/components/paper-tabs/demo.html +166 -0
  312. data/app/assets/components/paper-tabs/index.html +22 -0
  313. data/app/assets/components/paper-tabs/metadata.html +58 -0
  314. data/app/assets/components/paper-tabs/{paper-tab.html.erb → paper-tab.html} +10 -10
  315. data/app/assets/components/paper-tabs/paper-tabs.css +1 -1
  316. data/app/assets/components/paper-tabs/{paper-tabs.html.erb → paper-tabs.html} +29 -25
  317. data/app/assets/components/paper-toast/README.md +4 -0
  318. data/app/assets/components/paper-toast/bower.json +10 -0
  319. data/app/assets/components/paper-toast/demo.html +67 -0
  320. data/app/assets/components/paper-toast/index.html +22 -0
  321. data/app/assets/components/paper-toast/metadata.html +20 -0
  322. data/app/assets/components/paper-toast/paper-toast.css +80 -0
  323. data/app/assets/components/paper-toast/{paper-toast.html.erb → paper-toast.html} +39 -39
  324. data/app/assets/components/paper-toggle-button/README.md +4 -0
  325. data/app/assets/components/paper-toggle-button/bower.json +8 -0
  326. data/app/assets/components/paper-toggle-button/demo.html +77 -0
  327. data/app/assets/components/paper-toggle-button/index.html +22 -0
  328. data/app/assets/components/paper-toggle-button/metadata.html +17 -0
  329. data/app/assets/components/paper-toggle-button/paper-toggle-button.css +1 -1
  330. data/app/assets/components/paper-toggle-button/{paper-toggle-button.html.erb → paper-toggle-button.html} +39 -20
  331. data/app/assets/components/platform/README.md +6 -0
  332. data/app/assets/components/platform/bower.json +16 -0
  333. data/app/assets/components/platform/build.log +35 -0
  334. data/app/assets/components/platform/platform.js +16 -0
  335. data/app/assets/components/platform/platform.js.map +1 -0
  336. data/app/assets/components/polymer/README.md +17 -0
  337. data/app/assets/components/polymer/bower.json +8 -0
  338. data/app/assets/components/polymer/build.log +35 -0
  339. data/app/assets/components/polymer/layout.html +286 -0
  340. data/app/assets/components/polymer/polymer.html +13 -0
  341. data/app/assets/components/polymer/polymer.js +14 -0
  342. data/app/assets/components/polymer/polymer.js.map +1 -0
  343. data/app/assets/components/sampler-scaffold/README.md +4 -0
  344. data/app/assets/components/sampler-scaffold/bower.json +12 -0
  345. data/app/assets/components/sampler-scaffold/demo.html +54 -0
  346. data/app/assets/components/sampler-scaffold/demos/checkbox.html +20 -0
  347. data/app/assets/components/sampler-scaffold/demos/color.html +20 -0
  348. data/app/assets/components/sampler-scaffold/demos/radio.html +20 -0
  349. data/app/assets/components/sampler-scaffold/demos/range.html +20 -0
  350. data/app/assets/components/sampler-scaffold/demos/string.html +20 -0
  351. data/app/assets/components/sampler-scaffold/index.html +22 -0
  352. data/app/assets/components/sampler-scaffold/sampler-scaffold.css +157 -0
  353. data/app/assets/components/sampler-scaffold/sampler-scaffold.html +224 -0
  354. data/app/assets/components/web-animations-js/COPYING +202 -0
  355. data/app/assets/components/web-animations-js/README.md +237 -0
  356. data/app/assets/components/web-animations-js/run-lint.sh +19 -0
  357. data/app/assets/components/web-animations-js/run-tests-android.sh +25 -0
  358. data/app/assets/components/web-animations-js/run-tests.sh +15 -0
  359. data/app/assets/components/web-animations-js/test/bootstrap.js +1266 -0
  360. data/app/assets/components/web-animations-js/test/img/error.png +0 -0
  361. data/app/assets/components/web-animations-js/test/img/success.png +0 -0
  362. data/app/assets/components/web-animations-js/test/img/unknown.png +0 -0
  363. data/app/assets/components/web-animations-js/test/perf/balls-add-compositing.html +147 -0
  364. data/app/assets/components/web-animations-js/test/perf/balls-replace-compositing.html +144 -0
  365. data/app/assets/components/web-animations-js/test/perf/perf.js +158 -0
  366. data/app/assets/components/web-animations-js/test/perf/updating-inline-style-during-animation.html +165 -0
  367. data/app/assets/components/web-animations-js/test/test-generator.html +240 -0
  368. data/app/assets/components/web-animations-js/test/test-results-post.html +3 -0
  369. data/app/assets/components/web-animations-js/test/test-runner.html +810 -0
  370. data/app/assets/components/web-animations-js/test/testcases/auto-test-box-shadow-checks.js +42 -0
  371. data/app/assets/components/web-animations-js/test/testcases/auto-test-box-shadow.html +40 -0
  372. data/app/assets/components/web-animations-js/test/testcases/auto-test-calc-checks.js +41 -0
  373. data/app/assets/components/web-animations-js/test/testcases/auto-test-calc.html +156 -0
  374. data/app/assets/components/web-animations-js/test/testcases/auto-test-change-playback-rate-checks.js +23 -0
  375. data/app/assets/components/web-animations-js/test/testcases/auto-test-circular-path-checks.js +65 -0
  376. data/app/assets/components/web-animations-js/test/testcases/auto-test-circular-path.html +83 -0
  377. data/app/assets/components/web-animations-js/test/testcases/auto-test-color-checks.js +101 -0
  378. data/app/assets/components/web-animations-js/test/testcases/auto-test-color-names-checks.js +431 -0
  379. data/app/assets/components/web-animations-js/test/testcases/auto-test-color-names.html +204 -0
  380. data/app/assets/components/web-animations-js/test/testcases/auto-test-color.html +117 -0
  381. data/app/assets/components/web-animations-js/test/testcases/auto-test-composite-transforms-checks.js +45 -0
  382. data/app/assets/components/web-animations-js/test/testcases/auto-test-composite-transforms.html +97 -0
  383. data/app/assets/components/web-animations-js/test/testcases/auto-test-compositor-checks.js +26 -0
  384. data/app/assets/components/web-animations-js/test/testcases/auto-test-compositor.html +68 -0
  385. data/app/assets/components/web-animations-js/test/testcases/auto-test-delay-checks.js +92 -0
  386. data/app/assets/components/web-animations-js/test/testcases/auto-test-delay.html +39 -0
  387. data/app/assets/components/web-animations-js/test/testcases/auto-test-element-animate-checks.js +8 -0
  388. data/app/assets/components/web-animations-js/test/testcases/auto-test-element-animate.html +30 -0
  389. data/app/assets/components/web-animations-js/test/testcases/auto-test-fill-values-checks.js +266 -0
  390. data/app/assets/components/web-animations-js/test/testcases/auto-test-fill-values.html +114 -0
  391. data/app/assets/components/web-animations-js/test/testcases/auto-test-font-weight-checks.js +26 -0
  392. data/app/assets/components/web-animations-js/test/testcases/auto-test-font-weight.html +43 -0
  393. data/app/assets/components/web-animations-js/test/testcases/auto-test-initial-checks.js +74 -0
  394. data/app/assets/components/web-animations-js/test/testcases/auto-test-initial.html +242 -0
  395. data/app/assets/components/web-animations-js/test/testcases/auto-test-inline-style-checks.js +17 -0
  396. data/app/assets/components/web-animations-js/test/testcases/auto-test-inline-style-fallback-checks.js +17 -0
  397. data/app/assets/components/web-animations-js/test/testcases/auto-test-inline-style-fallback.html +78 -0
  398. data/app/assets/components/web-animations-js/test/testcases/auto-test-inline-style-methods-checks.js +17 -0
  399. data/app/assets/components/web-animations-js/test/testcases/auto-test-inline-style-methods.html +70 -0
  400. data/app/assets/components/web-animations-js/test/testcases/auto-test-inline-style.html +69 -0
  401. data/app/assets/components/web-animations-js/test/testcases/auto-test-integer-checks.js +38 -0
  402. data/app/assets/components/web-animations-js/test/testcases/auto-test-integer.html +52 -0
  403. data/app/assets/components/web-animations-js/test/testcases/auto-test-iteration-start-checks.js +506 -0
  404. data/app/assets/components/web-animations-js/test/testcases/auto-test-iteration-start.html +160 -0
  405. data/app/assets/components/web-animations-js/test/testcases/auto-test-iterations-alternate-checks.js +44 -0
  406. data/app/assets/components/web-animations-js/test/testcases/auto-test-iterations-alternate-holes-checks.js +41 -0
  407. data/app/assets/components/web-animations-js/test/testcases/auto-test-iterations-alternate-holes.html +48 -0
  408. data/app/assets/components/web-animations-js/test/testcases/auto-test-iterations-alternate.html +50 -0
  409. data/app/assets/components/web-animations-js/test/testcases/auto-test-iterations-basic-checks.js +162 -0
  410. data/app/assets/components/web-animations-js/test/testcases/auto-test-iterations-basic.html +116 -0
  411. data/app/assets/components/web-animations-js/test/testcases/auto-test-iterations-fill-checks.js +602 -0
  412. data/app/assets/components/web-animations-js/test/testcases/auto-test-iterations-fill.html +167 -0
  413. data/app/assets/components/web-animations-js/test/testcases/auto-test-keyframe-creation-checks.js +67 -0
  414. data/app/assets/components/web-animations-js/test/testcases/auto-test-keyframe-creation.html +109 -0
  415. data/app/assets/components/web-animations-js/test/testcases/auto-test-keyframe-easing-checks.js +65 -0
  416. data/app/assets/components/web-animations-js/test/testcases/auto-test-keyframe-easing.html +64 -0
  417. data/app/assets/components/web-animations-js/test/testcases/auto-test-length-units-checks.js +342 -0
  418. data/app/assets/components/web-animations-js/test/testcases/auto-test-length-units.html +103 -0
  419. data/app/assets/components/web-animations-js/test/testcases/auto-test-matrix-transforms-checks.js +56 -0
  420. data/app/assets/components/web-animations-js/test/testcases/auto-test-matrix-transforms.html +90 -0
  421. data/app/assets/components/web-animations-js/test/testcases/auto-test-motion-path-checks.js +110 -0
  422. data/app/assets/components/web-animations-js/test/testcases/auto-test-motion-path.html +133 -0
  423. data/app/assets/components/web-animations-js/test/testcases/auto-test-non-numeric-checks.js +26 -0
  424. data/app/assets/components/web-animations-js/test/testcases/auto-test-non-numeric.html +42 -0
  425. data/app/assets/components/web-animations-js/test/testcases/auto-test-parent-checks.js +38 -0
  426. data/app/assets/components/web-animations-js/test/testcases/auto-test-parent.html +52 -0
  427. data/app/assets/components/web-animations-js/test/testcases/auto-test-partial-keyframes-checks.js +27 -0
  428. data/app/assets/components/web-animations-js/test/testcases/auto-test-partial-keyframes.html +43 -0
  429. data/app/assets/components/web-animations-js/test/testcases/auto-test-path-checks.js +20 -0
  430. data/app/assets/components/web-animations-js/test/testcases/auto-test-path.html +41 -0
  431. data/app/assets/components/web-animations-js/test/testcases/auto-test-pause-checks.js +79 -0
  432. data/app/assets/components/web-animations-js/test/testcases/auto-test-pause.html +82 -0
  433. data/app/assets/components/web-animations-js/test/testcases/auto-test-perspective-checks.js +37 -0
  434. data/app/assets/components/web-animations-js/test/testcases/auto-test-perspective-origin-checks.js +61 -0
  435. data/app/assets/components/web-animations-js/test/testcases/auto-test-perspective-origin.html +94 -0
  436. data/app/assets/components/web-animations-js/test/testcases/auto-test-perspective.html +79 -0
  437. data/app/assets/components/web-animations-js/test/testcases/auto-test-playback-rate-checks.js +146 -0
  438. data/app/assets/components/web-animations-js/test/testcases/auto-test-playback-rate.html +128 -0
  439. data/app/assets/components/web-animations-js/test/testcases/auto-test-position-list-type-checks.js +73 -0
  440. data/app/assets/components/web-animations-js/test/testcases/auto-test-rectangle-checks.js +23 -0
  441. data/app/assets/components/web-animations-js/test/testcases/auto-test-rectangle.html +57 -0
  442. data/app/assets/components/web-animations-js/test/testcases/auto-test-reparent-checks.js +95 -0
  443. data/app/assets/components/web-animations-js/test/testcases/auto-test-reparent.html +60 -0
  444. data/app/assets/components/web-animations-js/test/testcases/auto-test-seq-speed-checks.js +69 -0
  445. data/app/assets/components/web-animations-js/test/testcases/auto-test-seq-speed.html +86 -0
  446. data/app/assets/components/web-animations-js/test/testcases/auto-test-shorthand-checks.js +197 -0
  447. data/app/assets/components/web-animations-js/test/testcases/auto-test-shorthand.html +115 -0
  448. data/app/assets/components/web-animations-js/test/testcases/auto-test-start-time-checks.js +58 -0
  449. data/app/assets/components/web-animations-js/test/testcases/auto-test-start-time-iterations-checks.js +92 -0
  450. data/app/assets/components/web-animations-js/test/testcases/auto-test-start-time-iterations.html +107 -0
  451. data/app/assets/components/web-animations-js/test/testcases/auto-test-start-time.html +90 -0
  452. data/app/assets/components/web-animations-js/test/testcases/auto-test-svg-anim-checks.js +23 -0
  453. data/app/assets/components/web-animations-js/test/testcases/auto-test-svg-anim.html +39 -0
  454. data/app/assets/components/web-animations-js/test/testcases/auto-test-svg-circle-checks.js +23 -0
  455. data/app/assets/components/web-animations-js/test/testcases/auto-test-svg-circle.html +38 -0
  456. data/app/assets/components/web-animations-js/test/testcases/auto-test-svg-color-checks.js +20 -0
  457. data/app/assets/components/web-animations-js/test/testcases/auto-test-svg-color.html +36 -0
  458. data/app/assets/components/web-animations-js/test/testcases/auto-test-text-shadow-checks.js +20 -0
  459. data/app/assets/components/web-animations-js/test/testcases/auto-test-text-shadow.html +37 -0
  460. data/app/assets/components/web-animations-js/test/testcases/auto-test-timing-functions-checks.js +89 -0
  461. data/app/assets/components/web-animations-js/test/testcases/auto-test-timing-functions.html +77 -0
  462. data/app/assets/components/web-animations-js/test/testcases/auto-test-to-animation-checks.js +58 -0
  463. data/app/assets/components/web-animations-js/test/testcases/auto-test-to-animation.html +83 -0
  464. data/app/assets/components/web-animations-js/test/testcases/auto-test-transform-3d-checks.js +134 -0
  465. data/app/assets/components/web-animations-js/test/testcases/auto-test-transform-3d.html +123 -0
  466. data/app/assets/components/web-animations-js/test/testcases/auto-test-transform-functions-checks.js +160 -0
  467. data/app/assets/components/web-animations-js/test/testcases/auto-test-transform-functions.html +158 -0
  468. data/app/assets/components/web-animations-js/test/testcases/auto-test-transform-origin-checks.js +37 -0
  469. data/app/assets/components/web-animations-js/test/testcases/auto-test-transform-origin.html +80 -0
  470. data/app/assets/components/web-animations-js/test/testcases/auto-test-transform-primitives-checks.js +292 -0
  471. data/app/assets/components/web-animations-js/test/testcases/auto-test-transform-primitives.html +97 -0
  472. data/app/assets/components/web-animations-js/test/testcases/auto-test-transform-units-checks.js +202 -0
  473. data/app/assets/components/web-animations-js/test/testcases/auto-test-transform-units.html +98 -0
  474. data/app/assets/components/web-animations-js/test/testcases/auto-test-visibility-checks.js +54 -0
  475. data/app/assets/components/web-animations-js/test/testcases/auto-test-visibility.html +80 -0
  476. data/app/assets/components/web-animations-js/test/testcases/auto-test-wrapping-bug-checks.js +58 -0
  477. data/app/assets/components/web-animations-js/test/testcases/auto-test-wrapping-bug.html +60 -0
  478. data/app/assets/components/web-animations-js/test/testcases/background.png +0 -0
  479. data/app/assets/components/web-animations-js/test/testcases/disabled-auto-test-change-playback-rate.html +65 -0
  480. data/app/assets/components/web-animations-js/test/testcases/disabled-auto-test-position-list-type.html +103 -0
  481. data/app/assets/components/web-animations-js/test/testcases/disabled-media.html +439 -0
  482. data/app/assets/components/web-animations-js/test/testcases/disabled-test-compositing-order.html +112 -0
  483. data/app/assets/components/web-animations-js/test/testcases/impl-test-deprecation.html +85 -0
  484. data/app/assets/components/web-animations-js/test/testcases/impl-test-from-css-value.html +219 -0
  485. data/app/assets/components/web-animations-js/test/testcases/impl-test-paced-timing-function.html +83 -0
  486. data/app/assets/components/web-animations-js/test/testcases/impl-test-totimelinetime.html +37 -0
  487. data/app/assets/components/web-animations-js/test/testcases/impl-unit-test-position-type.html +256 -0
  488. data/app/assets/components/web-animations-js/test/testcases/manual-test-add-player-onend.html +57 -0
  489. data/app/assets/components/web-animations-js/test/testcases/manual-test-preset-timings.html +71 -0
  490. data/app/assets/components/web-animations-js/test/testcases/manual-test-step.html +88 -0
  491. data/app/assets/components/web-animations-js/test/testcases/small.mp4 +0 -0
  492. data/app/assets/components/web-animations-js/test/testcases/small.webm +0 -0
  493. data/app/assets/components/web-animations-js/test/testcases/test-bounds.html +69 -0
  494. data/app/assets/components/web-animations-js/test/testcases/test-document-timeline.html +53 -0
  495. data/app/assets/components/web-animations-js/test/testcases/test-dynamic-load.html +65 -0
  496. data/app/assets/components/web-animations-js/test/testcases/test-fill-auto.html +78 -0
  497. data/app/assets/components/web-animations-js/test/testcases/test-getcurrent.html +324 -0
  498. data/app/assets/components/web-animations-js/test/testcases/test-keyframe-animation-effect.html +248 -0
  499. data/app/assets/components/web-animations-js/test/testcases/test-keyframe-composite-operation.html +182 -0
  500. data/app/assets/components/web-animations-js/test/testcases/test-null-target.html +66 -0
  501. data/app/assets/components/web-animations-js/test/testcases/test-pause-for-testing.html +52 -0
  502. data/app/assets/components/web-animations-js/test/testcases/test-player-addeventlistener.html +161 -0
  503. data/app/assets/components/web-animations-js/test/testcases/test-player-cleanup.html +79 -0
  504. data/app/assets/components/web-animations-js/test/testcases/test-player-finish-event.html +101 -0
  505. data/app/assets/components/web-animations-js/test/testcases/test-player-sort.html +48 -0
  506. data/app/assets/components/web-animations-js/test/testcases/test-player.html +786 -0
  507. data/app/assets/components/web-animations-js/test/testcases/test-pseudo-element-reference.html +38 -0
  508. data/app/assets/components/web-animations-js/test/testcases/test-repeated-pause.html +54 -0
  509. data/app/assets/components/web-animations-js/test/testcases/test-restart.html +115 -0
  510. data/app/assets/components/web-animations-js/test/testcases/test-reversed-player-active-phase.html +28 -0
  511. data/app/assets/components/web-animations-js/test/testcases/test-rotation-not-reversed.html +55 -0
  512. data/app/assets/components/web-animations-js/test/testcases/test-update-state.html +113 -0
  513. data/app/assets/components/web-animations-js/test/testcases/unit-test-clone.html +80 -0
  514. data/app/assets/components/web-animations-js/test/testcases/unit-test-delay.html +66 -0
  515. data/app/assets/components/web-animations-js/test/testcases/unit-test-dom-operations.html +164 -0
  516. data/app/assets/components/web-animations-js/test/testcases/unit-test-duration.html +66 -0
  517. data/app/assets/components/web-animations-js/test/testcases/unit-test-get-siblings.html +112 -0
  518. data/app/assets/components/web-animations-js/test/testcases/unit-test-modify-timing-params.html +105 -0
  519. data/app/assets/components/web-animations-js/test/testcases/unit-test-null-effect.html +43 -0
  520. data/app/assets/components/web-animations-js/test/testcases/unit-test-set-parent.html +111 -0
  521. data/app/assets/components/web-animations-js/test/testcases/unit-test-testharness-failure.html +54 -0
  522. data/app/assets/components/web-animations-js/test/testcases/unit-test-testharness.html +248 -0
  523. data/app/assets/components/web-animations-js/test/testcases/unit-test-unpause.html +68 -0
  524. data/app/assets/components/web-animations-js/test/testcases.js +93 -0
  525. data/app/assets/components/web-animations-js/test/testharness_timing.css +75 -0
  526. data/app/assets/components/web-animations-js/test/update-testcases.py +63 -0
  527. data/app/assets/components/web-animations-js/tools/android/config.sh +8 -0
  528. data/app/assets/components/web-animations-js/tools/android/setup.sh +152 -0
  529. data/app/assets/components/web-animations-js/tools/android/stop.sh +20 -0
  530. data/app/assets/components/web-animations-js/tools/python/requirements.txt +12 -0
  531. data/app/assets/components/web-animations-js/tools/python/run-tests.py +813 -0
  532. data/app/assets/components/web-animations-js/tools/python/setup.sh +60 -0
  533. data/app/assets/components/web-animations-js/tutorial/basic-animations/basic-animation-exercise-1.html +62 -0
  534. data/app/assets/components/web-animations-js/tutorial/basic-animations/basic-animation.html +120 -0
  535. data/app/assets/components/web-animations-js/tutorial/iframe-contents.html +29 -0
  536. data/app/assets/components/web-animations-js/tutorial/jquery.js +9555 -0
  537. data/app/assets/components/web-animations-js/tutorial/page-load.js +114 -0
  538. data/app/assets/components/web-animations-js/tutorial/parallel/parallel-exercise-1.html +58 -0
  539. data/app/assets/components/web-animations-js/tutorial/parallel/parallel.html +101 -0
  540. data/app/assets/components/web-animations-js/tutorial/sample-tutorial.html +44 -0
  541. data/app/assets/components/web-animations-js/tutorial/try-it-yourself.js +216 -0
  542. data/app/assets/components/web-animations-js/tutorial/tutorial-style.css +344 -0
  543. data/app/assets/components/web-animations-js/tutorial/tutorial-testing.js +84 -0
  544. data/app/assets/components/{core/animation → web-animations-js}/web-animations.js +77 -214
  545. data/lib/polymer-paper-rails/version.rb +1 -1
  546. metadata +540 -61
  547. data/app/assets/components/core/animation/web-animations.html.erb +0 -1
  548. data/app/assets/components/core/icon/core-icon.html.erb +0 -126
  549. data/app/assets/components/core/input/core-input.css +0 -35
  550. data/app/assets/components/core/list/core-list.css +0 -20
  551. data/app/assets/components/core/list/core-list.html.erb +0 -403
  552. data/app/assets/components/core/transition/core-transition-css.html.erb +0 -76
  553. data/app/assets/components/core/transition/core-transition.html.erb +0 -44
  554. data/app/assets/components/paper-input/error-100.png +0 -0
  555. data/app/assets/components/paper-input/error-200.png +0 -0
  556. data/app/assets/components/paper-input/paper-input.html.erb +0 -398
  557. data/app/assets/components/paper-input/paper-input.scss +0 -203
  558. data/app/assets/components/paper-menu-button/paper-menu-button-overlay.html.erb +0 -86
@@ -0,0 +1,112 @@
1
+ <!--
2
+ Copyright 2013 Google Inc. All Rights Reserved.
3
+
4
+ Licensed under the Apache License, Version 2.0 (the "License");
5
+ you may not use this file except in compliance with the License.
6
+ You may obtain a copy of the License at
7
+
8
+ http://www.apache.org/licenses/LICENSE-2.0
9
+
10
+ Unless required by applicable law or agreed to in writing, software
11
+ distributed under the License is distributed on an "AS IS" BASIS,
12
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ See the License for the specific language governing permissions and
14
+ limitations under the License.
15
+ -->
16
+
17
+ <!DOCTYPE html><meta charset="UTF-8">
18
+
19
+ <style>
20
+ div.anim {
21
+ position: relative;
22
+ }
23
+ </style>
24
+
25
+ <div id="target1" class="anim"></div>
26
+ <div id="target2" class="anim"></div>
27
+ <div id="target3" class="anim"></div>
28
+ <div id="target4" class="anim"></div>
29
+
30
+ <script src="../bootstrap.js" nochecks></script>
31
+ <script>
32
+ "use strict";
33
+
34
+ var leftToRight = [{left: "100px"}, {left: "200px"}];
35
+ var leftToRightLarge = [{left: "100px"}, {left: "1000px"}];
36
+ var rightToLeft = [{left: "200px"}, {left: "100px"}];
37
+ var noop = {color: "red"};
38
+
39
+ // Test that an animation uses the correct compositing order when it has a
40
+ // grandparent that remains active longer than its parent.
41
+ //
42
+ // The first animation should run between times 0.0 and 1.0 and the second
43
+ // between times 2.0 and 3.0. Both use the default fill mode of "forwards", but
44
+ // because the second animation has a later start time, it should be composited
45
+ // second, so the div should end up on the left.
46
+ var target1 = document.getElementById("target1");
47
+ var player = document.timeline.play(new AnimationGroup([
48
+ new AnimationGroup([
49
+ new Animation(target1, leftToRight, 1.0),
50
+ ]),
51
+ new AnimationSequence([
52
+ new Animation(target1, noop, 2.0),
53
+ new Animation(target1, rightToLeft, 1.0),
54
+ ]),
55
+ ]));
56
+
57
+ timing_test(function() {
58
+ at(3.0, function() {assert_equals(getComputedStyle(target1).getPropertyValue("left"), "100px")});
59
+ }, "First animation should have earlier compositing order");
60
+
61
+ // Test that compositing order takes account of playback rate.
62
+ //
63
+ // The start time of the first animation is 0.0. The AnimationSequence has a playback
64
+ // rate of 4.0, so the effective start time of its child animation is 2.0. So
65
+ // the the div should end up on the left at time 3.0.
66
+ var target2 = document.getElementById("target2");
67
+ var player = document.timeline.play(new AnimationGroup([
68
+ new Animation(target2, leftToRight, 1.0),
69
+ new AnimationSequence([
70
+ new Animation(target1, noop, 8.0),
71
+ new Animation(target2, rightToLeft, 4.0),
72
+ ], {playbackRate: 4.0}),
73
+ ]));
74
+
75
+ timing_test(function() {
76
+ at(3.0, function() {assert_equals(getComputedStyle(target2).getPropertyValue("left"), "100px")});
77
+ }, "Second animation should have later compositing order");
78
+
79
+ // Test compositing order follows AnimationPlayer start time order.
80
+ var target3 = document.getElementById("target3");
81
+ var player1 = document.timeline.play(
82
+ new Animation(target3, leftToRight, 1.0));
83
+ player1.startTime += 1.0;
84
+ var player2 = document.timeline.play(
85
+ new Animation(target3, leftToRightLarge, 2.0));
86
+
87
+ timing_test(function() {
88
+ at(2.0, function() {assert_equals(getComputedStyle(target3).getPropertyValue("left"), "200px")});
89
+ }, "First animation should have latest compositing order");
90
+
91
+ // Test compositing order follows tree order.
92
+ var target4 = document.getElementById("target4");
93
+ var player = document.timeline.play(new AnimationGroup([
94
+ new Animation(target4, leftToRightLarge, 1.0),
95
+ new AnimationSequence([
96
+ new Animation(target4, leftToRightLarge, 1.0),
97
+ new AnimationGroup([
98
+ new Animation(target4, leftToRightLarge, 1.0),
99
+ new Animation(target4, leftToRightLarge, 1.0),
100
+ ]),
101
+ ]),
102
+ new AnimationGroup([
103
+ new Animation(target4, leftToRightLarge, 1.0),
104
+ new Animation(target4, leftToRight, 1.0),
105
+ ]),
106
+ ]));
107
+
108
+ timing_test(function() {
109
+ at(2.0, function() {assert_equals(getComputedStyle(target4).getPropertyValue("left"), "200px")});
110
+ }, "Last animation should have latest compositing order");
111
+
112
+ </script>
@@ -0,0 +1,85 @@
1
+ <!--
2
+ Copyright 2014 Google Inc. All Rights Reserved.
3
+
4
+ Licensed under the Apache License, Version 2.0 (the "License");
5
+ you may not use this file except in compliance with the License.
6
+ You may obtain a copy of the License at
7
+
8
+ http://www.apache.org/licenses/LICENSE-2.0
9
+
10
+ Unless required by applicable law or agreed to in writing, software
11
+ distributed under the License is distributed on an "AS IS" BASIS,
12
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ See the License for the specific language governing permissions and
14
+ limitations under the License.
15
+ -->
16
+
17
+ <!DOCTYPE html><meta charset="UTF-8">
18
+ <script src="../bootstrap.js"></script>
19
+ <script>
20
+ "use strict";
21
+
22
+ var useAncient = function(deprecationDate) {
23
+ _WebAnimationsTestingUtilities._deprecated('Ancient', deprecationDate,
24
+ 'Please use Modern instead.');
25
+ };
26
+
27
+ var useOld = function(deprecationDate) {
28
+ _WebAnimationsTestingUtilities._deprecated('Old', deprecationDate,
29
+ 'Please use New instead.');
30
+ };
31
+
32
+ var useSuperseded = function(deprecationDate) {
33
+ _WebAnimationsTestingUtilities._deprecated('Superseded', deprecationDate,
34
+ 'See Replacement.');
35
+ };
36
+
37
+ test(function() {
38
+ var deprecationDate = new Date();
39
+ deprecationDate.setDate(deprecationDate.getDate() - 85);
40
+ var cutoffDate = new Date(deprecationDate);
41
+ cutoffDate.setMonth(cutoffDate.getMonth() + 3); // 3 months grace period
42
+
43
+ var warnings = [];
44
+ var savedConsoleWarn = console.warn;
45
+ try {
46
+ console.warn = function(message) {
47
+ warnings.push(message);
48
+ };
49
+
50
+ var firstExpectedWarning = 'Web Animations: Old is deprecated and will stop working on ' + cutoffDate.toDateString() + '. Please use New instead.';
51
+ var secondExpectedWarning = 'Web Animations: Superseded is deprecated and will stop working on ' + cutoffDate.toDateString() + '. See Replacement.';
52
+
53
+ useOld(deprecationDate);
54
+ assert_equals(warnings.length, 1);
55
+ assert_equals(warnings[0], firstExpectedWarning);
56
+
57
+ useOld(deprecationDate);
58
+ assert_equals(warnings.length, 1);
59
+
60
+ useSuperseded(deprecationDate);
61
+ assert_equals(warnings.length, 2);
62
+ assert_equals(warnings[1], secondExpectedWarning);
63
+
64
+ useSuperseded(deprecationDate);
65
+ assert_equals(warnings.length, 2);
66
+ } finally {
67
+ console.warn = savedConsoleWarn;
68
+ }
69
+ }, 'Warn the first time each recently deprecated feature is used');
70
+
71
+ test(function() {
72
+ var deprecationDate = new Date(new Date());
73
+ deprecationDate.setDate(deprecationDate.getDate() - 95);
74
+
75
+ for (var i = 0; i < 2; ++i) {
76
+ try {
77
+ useAncient();
78
+ assert_true(false);
79
+ } catch (e) {
80
+ assert_equals(e.message, 'Ancient is no longer supported. Please use Modern instead.');
81
+ }
82
+ }
83
+ }, 'Throw each time an anciently deprecated feature is used');
84
+
85
+ </script>
@@ -0,0 +1,219 @@
1
+ <!--
2
+ Copyright 2013 Google Inc. All Rights Reserved.
3
+
4
+ Licensed under the Apache License, Version 2.0 (the "License");
5
+ you may not use this file except in compliance with the License.
6
+ You may obtain a copy of the License at
7
+
8
+ http://www.apache.org/licenses/LICENSE-2.0
9
+
10
+ Unless required by applicable law or agreed to in writing, software
11
+ distributed under the License is distributed on an "AS IS" BASIS,
12
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ See the License for the specific language governing permissions and
14
+ limitations under the License.
15
+ -->
16
+
17
+ <!DOCTYPE html><meta charset="UTF-8">
18
+ <style>
19
+ div.anim {
20
+ position: relative;
21
+ left: 0px;
22
+ }
23
+ </style>
24
+
25
+ <div id="anim" class="anim"></div>
26
+
27
+ <script src="../bootstrap.js"></script>
28
+ <script>
29
+ 'use strict';
30
+
31
+ test(function() {
32
+
33
+ function assert_object_equals(actual, expected, message) {
34
+ assert_equals(JSON.stringify(actual), JSON.stringify(expected), message);
35
+ }
36
+ function assert_shadow_equals(actual, expected, message) {
37
+ assert_not_equals(typeof actual, 'undefined', 'actual not undefined: ' + message);
38
+ assert_equals(actual.length, expected.length, 'actual and expected lengths match: ' + message);
39
+ for (var i = 0; i < expected.length; i++) {
40
+ var a = actual[i];
41
+ var e = expected[i];
42
+
43
+ // hOffset and vOffset are always required
44
+ assert_object_equals(a['hOffset'], e['hOffset'], 'hOffset matches: ' + message);
45
+ assert_object_equals(a['vOffset'], e['vOffset'], 'vOffset matches: ' + message);
46
+
47
+ // Inset is always set
48
+ if (typeof e['inset'] != 'undefined')
49
+ assert_equals(a['inset'], e['inset'], 'inset matches: ' + message);
50
+
51
+ if (typeof e['color'] != 'undefined')
52
+ assert_array_equals(a['color'], e['color'], 'color matches: ' + message);
53
+
54
+ if (typeof e['blur'] != 'undefined')
55
+ assert_object_equals(a['blur'], e['blur'], 'blur matches: ' + message);
56
+
57
+ if (typeof e['spread'] != 'undefined')
58
+ assert_object_equals(a['spread'], e['spread'], 'spread matches: ' + message);
59
+ }
60
+ }
61
+
62
+ var shadowType = window._WebAnimationsTestingUtilities._types['textShadow'];
63
+
64
+ // Test all the different color types as part of a shadow
65
+ var expected = [{
66
+ color: [255, 0, 0, 1.0],
67
+ hOffset: {px: 10},
68
+ vOffset: {px: 15},
69
+ blur: {px: 5},
70
+ inset: false
71
+ }];
72
+ assert_shadow_equals(shadowType.fromCssValue('10px 15px 5px red'), expected, '10px 15px 5px red');
73
+ assert_shadow_equals(shadowType.fromCssValue('10px 15px 5px rgba(255, 0, 0, 1.0)'), expected, '10px 15px 5px rgba(255, 0, 0, 1.0)');
74
+ assert_shadow_equals(shadowType.fromCssValue('10px 15px 5px rgba(100%, 0, 0, 1.0)'), expected, '10px 15px 5px rgba(100%, 0, 0, 1.0)');
75
+ assert_shadow_equals(shadowType.fromCssValue('10px 15px 5px rgb(255, 0, 0)'), expected, '10px 15px 5px rgb(255, 0, 0)');
76
+ assert_shadow_equals(shadowType.fromCssValue('10px 15px 5px rgb(100%, 0, 0)'), expected, '10px 15px 5px rgb(100%, 0, 0)');
77
+ assert_shadow_equals(shadowType.fromCssValue('10px 15px 5px hsl(0, 100%, 50%)'), expected, '10px 15px 5px hsl(0, 100%, 50%)');
78
+ assert_shadow_equals(shadowType.fromCssValue('10px 15px 5px hsla(0, 100%, 50%, 1.0)'), expected, '10px 15px 5px hsla(0, 100%, 50%, 1.0)');
79
+ assert_shadow_equals(shadowType.fromCssValue('10px 15px 5px #ff0000'), expected, '10px 15px 5px #ff0000');
80
+ assert_shadow_equals(shadowType.fromCssValue('red 10px 15px 5px'), expected, 'red 10px 15px 5px');
81
+ assert_shadow_equals(shadowType.fromCssValue('rgba(255, 0, 0, 1.0) 10px 15px 5px'), expected, 'rgba(255, 0, 0, 1.0) 10px 15px 5px');
82
+ assert_shadow_equals(shadowType.fromCssValue('rgba(100%, 0, 0, 1.0) 10px 15px 5px'), expected, 'rgba(100%, 0, 0, 1.0) 10px 15px 5px');
83
+ assert_shadow_equals(shadowType.fromCssValue('rgb(255, 0, 0) 10px 15px 5px'), expected, 'rgb(255, 0, 0) 10px 15px 5px');
84
+ assert_shadow_equals(shadowType.fromCssValue('rgb(100%, 0, 0) 10px 15px 5px'), expected, 'rgb(100%, 0, 0) 10px 15px 5px');
85
+ assert_shadow_equals(shadowType.fromCssValue('hsl(0, 100%, 50%) 10px 15px 5px'), expected, 'hsl(0, 100%, 50%) 10px 15px 5px');
86
+ assert_shadow_equals(shadowType.fromCssValue('hsla(0, 100%, 50%, 1.0) 10px 15px 5px'), expected, 'hsla(0, 100%, 50%, 1.0) 10px 15px 5px');
87
+ assert_shadow_equals(shadowType.fromCssValue('#ff0000 10px 15px 5px'), expected, '#ff0000 10px 15px 5px');
88
+
89
+
90
+ // [ <color>? <offset-x> <offset-y> <blur-radius>? ]
91
+ // [ <offset-x> <offset-y> <blur-radius>? <color>? ]
92
+ // [inset? && [ <offset-x> <offset-y> <blur-radius>? <spread-radius>? <color>? ] ]
93
+
94
+
95
+ assert_shadow_equals(
96
+ shadowType.fromCssValue('10px 15px'), [{hOffset:{px: 10}, vOffset:{px: 15}}],
97
+ 'just offsets');
98
+ assert_shadow_equals(
99
+ shadowType.fromCssValue('10px 15px 5px'),
100
+ [{hOffset:{px: 10}, vOffset:{px: 15}, blur: {px: 5}}],
101
+ 'no spread');
102
+
103
+ // Test some 'real world examples', taken from the MDN documentation
104
+ assert_shadow_equals(
105
+ shadowType.fromCssValue('1px 2px 3px black, 0 0 1em blue, 0 0 0.2em blue'),
106
+ [{hOffset:{px: 1}, vOffset:{px: 2}, blur: {px: 3}, color: [0, 0, 0, 1.0]},
107
+ {hOffset:{'': 0}, vOffset:{'': 0}, blur: {em: 1}, color: [0, 0, 255, 1.0]},
108
+ {hOffset:{'': 0}, vOffset:{'': 0}, blur: {em: 0.2}, color: [0, 0, 255, 1.0]}],
109
+ 'MDN Example 1');
110
+
111
+ assert_shadow_equals(
112
+ shadowType.fromCssValue('rgba(0,0,0,0.1) -1px 0, rgba(0,0,0,0.1) 0 -1px, rgba(255,255,255,0.1) 1px 0, rgba(255,255,255,0.1) 0 1px, rgba(0,0,0,0.1) -1px -1px, rgba(255,255,255,0.1) 1px 1px'),
113
+ [{hOffset:{px: -1}, vOffset:{'': 0}, color: [0, 0, 0, 0.1]},
114
+ {hOffset:{'': 0}, vOffset:{px: -1}, color: [0, 0, 0, 0.1]},
115
+ {hOffset:{px: 1}, vOffset:{'': 0}, color: [255, 255, 255, 0.1]},
116
+ {hOffset:{'': 0}, vOffset:{px: 1}, color: [255, 255, 255, 0.1]},
117
+ {hOffset:{px: -1}, vOffset:{px: -1}, color: [0, 0, 0, 0.1]},
118
+ {hOffset:{px: 1}, vOffset:{px: 1}, color: [255, 255, 255, 0.1]}],
119
+ 'MDN Example 2');
120
+
121
+ assert_shadow_equals(
122
+ shadowType.fromCssValue('64px 64px 12px 40px rgba(0,0,0,0.4), 12px 12px 0px 8px rgba(0,0,0,0.4) inset'),
123
+ [{hOffset:{px: 64}, vOffset:{px: 64}, blur: {px: 12}, spread: {px: 40}, color: [0, 0, 0, 0.4]},
124
+ {hOffset:{px: 12}, vOffset:{px: 12}, blur: {px: 0}, spread: {px: 8}, color: [0, 0, 0, 0.4], inset: true}],
125
+ 'MDN Example 3');
126
+
127
+ assert_shadow_equals(
128
+ shadowType.fromCssValue('10px 10px 5px #888'),
129
+ [{hOffset:{px: 10}, vOffset:{px: 10}, blur: {px: 5}, color: [136, 136, 136, 1.0]}],
130
+ 'MDN Example 4');
131
+
132
+ }, 'shadowType.cssFromValue');
133
+
134
+ test(function() {
135
+
136
+ var colorType = window._WebAnimationsTestingUtilities._types.color;
137
+
138
+ assert_array_equals(colorType.fromCssValue('#000000'), [0, 0, 0, 1.0], '#000000');
139
+ assert_array_equals(colorType.fromCssValue('#000'), [0, 0, 0, 1.0], '#000');
140
+ assert_array_equals(colorType.fromCssValue('#123456'), [18, 52, 86, 1.0], '#123456');
141
+ assert_array_equals(colorType.fromCssValue('#123'), [17, 34, 51, 1.0], '#123');
142
+ assert_array_equals(colorType.fromCssValue('#ffffff'), [255, 255, 255, 1.0], '#ffffff');
143
+ assert_array_equals(colorType.fromCssValue('#fff'), [255, 255, 255, 1.0], '#fff');
144
+ assert_array_equals(colorType.fromCssValue('#ABCDEF'), [171, 205, 239, 1.0], '#ABCDEF');
145
+ assert_array_equals(colorType.fromCssValue('#ABC'), [170, 187, 204, 1.0], '#ABC');
146
+
147
+ assert_array_equals(colorType.fromCssValue('rgb(0, 0, 0)'), [0, 0, 0, 1.0], 'rgb(0, 0, 0)');
148
+ assert_array_equals(colorType.fromCssValue('rgb(0,0,0)'), [0, 0, 0, 1.0], 'rgb(0,0,0)');
149
+ assert_array_equals(colorType.fromCssValue('rgb(0%, 0%, 0%)'), [0, 0, 0, 1.0], 'rgb(0%, 0%, 0%)');
150
+ assert_array_equals(colorType.fromCssValue('rgb(0%,0%,0%)'), [0, 0, 0, 1.0], 'rgb(0%,0%,0%)');
151
+ assert_array_equals(colorType.fromCssValue('rgb(1, 2, 3)'), [1, 2, 3, 1.0], 'rgb(1, 2, 3)');
152
+ assert_array_equals(colorType.fromCssValue('rgb(10%, 20%, 30%)'), [26, 51, 77, 1.0], 'rgb(10%, 20%, 30%)');
153
+ assert_array_equals(colorType.fromCssValue('rgb(255, 255, 255)'), [255, 255, 255, 1.0], 'rgb(255, 255, 255)');
154
+ assert_array_equals(colorType.fromCssValue('rgb(100%, 100%, 100%)'), [255, 255, 255, 1.0], 'rgb(100%, 100%, 100%)');
155
+
156
+ // Color cliping or RGB - 4.2.1 - RGB color values - Example 6
157
+ // em { color: rgb(300,0,0) } /* clipped to rgb(255,0,0) */
158
+ // em { color: rgb(255,-10,0) } /* clipped to rgb(255,0,0) */
159
+ // em { color: rgb(110%, 0%, 0%) } /* clipped to rgb(100%,0%,0%) */
160
+ assert_array_equals(colorType.fromCssValue('rgb(300, 0, 0)'), [255, 0, 0, 1.0], 'rgb(255, 0, 0)');
161
+ assert_array_equals(colorType.fromCssValue('rgb(255, -10, 0)'), [255, 0, 0, 1.0], 'rgb(255, -10, 0)');
162
+ assert_array_equals(colorType.fromCssValue('rgb(110%, 0%, 0%)'), [255, 0, 0, 1.0], 'rgb(110%, 0, 0)');
163
+
164
+ assert_array_equals(colorType.fromCssValue('rgba(0, 0, 0, 0)'), [0, 0, 0, 0.0], 'rgba(0, 0, 0, 0)');
165
+ assert_array_equals(colorType.fromCssValue('rgba(0,0,0,0)'), [0, 0, 0, 0.0], 'rgba(0,0,0,0)');
166
+ assert_array_equals(colorType.fromCssValue('rgba(1, 2, 3, 0.4)'), [1, 2, 3, 0.4], 'rgba(1, 2, 3, 0.4)');
167
+ assert_array_equals(colorType.fromCssValue('rgba(1,2,3,0.4)'), [1, 2, 3, 0.4], 'rgba(1,2,3,0.4)');
168
+ assert_array_equals(colorType.fromCssValue('rgba(255, 255, 255, 0.5)'), [255, 255, 255, 0.5], 'rgba(255, 255, 255, 0.5)');
169
+
170
+ // hsl and hsla converted to RGB
171
+ var hsl2rgb = window._WebAnimationsTestingUtilities._hsl2rgb;
172
+ assert_array_equals(hsl2rgb(0, 0, 100), [255, 255, 255]);
173
+ assert_array_equals(hsl2rgb(0, 0, 75), [192, 192, 192]);
174
+ assert_array_equals(hsl2rgb(0, 0, 50), [128, 128, 128]);
175
+ assert_array_equals(hsl2rgb(0, 0, 0), [0, 0, 0]);
176
+ assert_array_equals(hsl2rgb(0, 100, 50), [255, 0, 0]);
177
+ assert_array_equals(hsl2rgb(0, 100, 25), [128, 0, 0]);
178
+ assert_array_equals(hsl2rgb(60, 100, 50), [255, 255, 0]);
179
+ assert_array_equals(hsl2rgb(60, 100, 25), [128, 128, 0]);
180
+ assert_array_equals(hsl2rgb(120, 100, 50), [0, 255, 0]);
181
+ assert_array_equals(hsl2rgb(120, 100, 25), [0, 128, 0]);
182
+ assert_array_equals(hsl2rgb(-240, 100, 50), [0, 255, 0]);
183
+ assert_array_equals(hsl2rgb(480, 100, 25), [0, 128, 0]);
184
+ assert_array_equals(hsl2rgb(180, 100, 50), [0, 255, 255]);
185
+ assert_array_equals(hsl2rgb(180, 100, 25), [0, 128, 128]);
186
+ assert_array_equals(hsl2rgb(-180, 100, 50), [0, 255, 255]);
187
+ assert_array_equals(hsl2rgb(540, 100, 25), [0, 128, 128]);
188
+ assert_array_equals(hsl2rgb(240, 100, 50), [0, 0, 255]);
189
+ assert_array_equals(hsl2rgb(240, 100, 25), [0, 0, 128]);
190
+ assert_array_equals(hsl2rgb(300, 100, 50), [255, 0, 255]);
191
+ assert_array_equals(hsl2rgb(300, 100, 25), [128, 0, 128]);
192
+
193
+ // hsl
194
+ // * { color: hsl(0, 100%, 50%) } /* red */
195
+ // * { color: hsl(120, 100%, 50%) } /* lime */
196
+ // * { color: hsl(120, 100%, 25%) } /* dark green */
197
+ // * { color: hsl(120, 100%, 75%) } /* light green */
198
+ // * { color: hsl(120, 75%, 75%) } /* pastel green, and so on */
199
+ assert_array_equals(colorType.fromCssValue('hsl(0, 0%, 100%)'), [255, 255, 255, 1.0], 'hsl(0, 0%, 100%)');
200
+ assert_array_equals(colorType.fromCssValue('hsl(0,0%,75%)'), [192, 192, 192, 1.0], 'hsl(0,0%,75%)');
201
+ assert_array_equals(colorType.fromCssValue('hsl(-0, 100%, 50%)'), [255, 0, 0, 1.0], 'hsl(0, 100%, 50%)');
202
+ assert_array_equals(colorType.fromCssValue('hsla(120, 100%, 50%, 0.0)'), [0, 255, 0, 0.0], 'hsl(120, 100%, 50%, 0.0)');
203
+ assert_array_equals(colorType.fromCssValue('hsla(120, 100%, 25%, 0.25)'), [0, 128, 0, 0.25], 'hsl(120, 100%, 25%, 0.25)');
204
+ assert_array_equals(colorType.fromCssValue('hsla(180, 100%, 50%, 0.5)'), [0, 255, 255, 0.5], 'hsl(180, 100%, 50%, 0.5)');
205
+ assert_array_equals(colorType.fromCssValue('hsla(180, 100%, 25%, 0.75)'), [0, 128, 128, 0.75], 'hsl(180, 100%, 25%, 0.75)');
206
+ assert_array_equals(colorType.fromCssValue('hsla(240, 100%, 50%, 1.0)'), [0, 0, 255, 1.0], 'hsl(240, 100%, 50%, 1.0)');
207
+ assert_array_equals(colorType.fromCssValue('hsla(240, 100%, 25%, 1.25)'), [0, 0, 128, 1.0], 'hsl(240, 100%, 25%, 1.25)');
208
+
209
+ assert_array_equals(colorType.fromCssValue('transparent'), [0, 0, 0, 0], 'transparent');
210
+
211
+ assert_equals(colorType.fromCssValue('#00'), undefined);
212
+ assert_equals(colorType.fromCssValue('#0f0g'), undefined);
213
+ assert_equals(colorType.fromCssValue('rgba(0, abc, 0, 0)'), undefined);
214
+ assert_equals(colorType.fromCssValue('asdf(0, 0, 0, 0)'), undefined);
215
+
216
+ // currentColor ????
217
+ }, 'colorType.cssFromValue');
218
+
219
+ </script>
@@ -0,0 +1,83 @@
1
+ <!--
2
+ Copyright 2013 Google Inc. All Rights Reserved.
3
+
4
+ Licensed under the Apache License, Version 2.0 (the "License");
5
+ you may not use this file except in compliance with the License.
6
+ You may obtain a copy of the License at
7
+
8
+ http://www.apache.org/licenses/LICENSE-2.0
9
+
10
+ Unless required by applicable law or agreed to in writing, software
11
+ distributed under the License is distributed on an "AS IS" BASIS,
12
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ See the License for the specific language governing permissions and
14
+ limitations under the License.
15
+ -->
16
+
17
+ <!DOCTYPE html><meta charset="UTF-8">
18
+
19
+ <svg xmlns="http://www.w3.org/2000/svg" version="1.1">
20
+ <path d="M0,0 L10,0 L30,0 L60,0 L100,0 L150,0" id="path" stroke="black"
21
+ stroke-width="1" fill="none" />
22
+ </svg>
23
+
24
+ <script src="../bootstrap.js"></script>
25
+ <script>
26
+ "use strict";
27
+
28
+ var PacedTimingFunction = _WebAnimationsTestingUtilities._pacedTimingFunction;
29
+
30
+ var effect =
31
+ new MotionPathEffect(document.querySelector('#path').pathSegList);
32
+
33
+ // Line has 5 segments of lengths 10, 20, 30, 40 and 50, giving a total length
34
+ // of 150.
35
+ var fullRangeTimingFunction = new PacedTimingFunction(effect);
36
+ fullRangeTimingFunction.setRange({min: 0, max: 1});
37
+
38
+ // Partial range runs from midpoint of first segment ot midpoint of last
39
+ // segment, giving total length of 5 + 20 + 30 + 40 + 25 = 120.
40
+ var partialRangeTimingFunction = new PacedTimingFunction(effect);
41
+ partialRangeTimingFunction.setRange({min: 0.1, max: 0.9});
42
+
43
+ test(function() {
44
+ assert_equals(fullRangeTimingFunction.scaleTime(0.5), (3 + 15/40) / 5);
45
+ }, 'Full range between bounds');
46
+
47
+ test(function() {
48
+ assert_equals(fullRangeTimingFunction.scaleTime(0), 0);
49
+ }, 'Full range lower bound');
50
+
51
+ test(function() {
52
+ assert_equals(fullRangeTimingFunction.scaleTime(1), 1);
53
+ }, 'Full range upper bound');
54
+
55
+ test(function() {
56
+ assert_equals(fullRangeTimingFunction.scaleTime(-0.5), 0);
57
+ }, 'Full range below lower bound');
58
+
59
+ test(function() {
60
+ assert_equals(fullRangeTimingFunction.scaleTime(1.5), 1);
61
+ }, 'Full range above upper bound');
62
+
63
+ test(function() {
64
+ assert_equals(partialRangeTimingFunction.scaleTime(0.5), (3 + 5/40) / 5);
65
+ }, 'Partial range between bounds');
66
+
67
+ test(function() {
68
+ assert_equals(partialRangeTimingFunction.scaleTime(0), 0.1);
69
+ }, 'Partial range lower bound');
70
+
71
+ test(function() {
72
+ assert_equals(partialRangeTimingFunction.scaleTime(1), 0.9);
73
+ }, 'Partial range upper bound');
74
+
75
+ test(function() {
76
+ assert_equals(partialRangeTimingFunction.scaleTime(-0.5), 0.1);
77
+ }, 'Partial range below lower bound');
78
+
79
+ test(function() {
80
+ assert_equals(partialRangeTimingFunction.scaleTime(1.5), 0.9);
81
+ }, 'Partial range above upper bound');
82
+
83
+ </script>