easycomments 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (379) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +1 -0
  3. data/.rspec +2 -0
  4. data/Gemfile +14 -0
  5. data/LICENSE +21 -0
  6. data/README.md +92 -0
  7. data/Rakefile +49 -0
  8. data/_config.yml +28 -0
  9. data/bin/ec +45 -0
  10. data/config.ru +12 -0
  11. data/dashboard.rb +57 -0
  12. data/easycomments.gemspec +22 -0
  13. data/ec.rb +43 -0
  14. data/lib/easycomments/ec_configuration.rb +42 -0
  15. data/lib/easycomments/ec_dashboard_model.rb +70 -0
  16. data/lib/easycomments/ec_model.rb +47 -0
  17. data/lib/easycomments.rb +14 -0
  18. data/public/bower.json +32 -0
  19. data/public/bower_components/core-a11y-keys/.bower.json +28 -0
  20. data/public/bower_components/core-a11y-keys/README.md +4 -0
  21. data/public/bower_components/core-a11y-keys/bower.json +18 -0
  22. data/public/bower_components/core-a11y-keys/core-a11y-keys.html +335 -0
  23. data/public/bower_components/core-a11y-keys/demo.html +41 -0
  24. data/public/bower_components/core-a11y-keys/index.html +22 -0
  25. data/public/bower_components/core-ajax/.bower.json +22 -0
  26. data/public/bower_components/core-ajax/README.md +4 -0
  27. data/public/bower_components/core-ajax/bower.json +11 -0
  28. data/public/bower_components/core-ajax/core-ajax.html +434 -0
  29. data/public/bower_components/core-ajax/core-xhr.html +116 -0
  30. data/public/bower_components/core-ajax/demo-progress.html +65 -0
  31. data/public/bower_components/core-ajax/demo.html +43 -0
  32. data/public/bower_components/core-ajax/index.html +22 -0
  33. data/public/bower_components/core-ajax/metadata.html +23 -0
  34. data/public/bower_components/core-ajax/test/core-ajax-progress.html +108 -0
  35. data/public/bower_components/core-ajax/test/core-ajax-race.html +81 -0
  36. data/public/bower_components/core-ajax/test/core-ajax.html +287 -0
  37. data/public/bower_components/core-ajax/test/index.html +17 -0
  38. data/public/bower_components/core-collapse/.bower.json +21 -0
  39. data/public/bower_components/core-collapse/README.md +4 -0
  40. data/public/bower_components/core-collapse/bower.json +11 -0
  41. data/public/bower_components/core-collapse/core-collapse.css +16 -0
  42. data/public/bower_components/core-collapse/core-collapse.html +298 -0
  43. data/public/bower_components/core-collapse/demo.html +75 -0
  44. data/public/bower_components/core-collapse/index.html +22 -0
  45. data/public/bower_components/core-collapse/test/basic.html +85 -0
  46. data/public/bower_components/core-collapse/test/index.html +24 -0
  47. data/public/bower_components/core-component-page/.bower.json +19 -0
  48. data/public/bower_components/core-component-page/README.md +6 -0
  49. data/public/bower_components/core-component-page/bowager-logo.png +0 -0
  50. data/public/bower_components/core-component-page/bower.json +9 -0
  51. data/public/bower_components/core-component-page/core-component-page.html +37 -0
  52. data/public/bower_components/core-component-page/demo.html +23 -0
  53. data/public/bower_components/core-component-page/index.html +22 -0
  54. data/public/bower_components/core-drawer-panel/.bower.json +19 -0
  55. data/public/bower_components/core-drawer-panel/README.md +4 -0
  56. data/public/bower_components/core-drawer-panel/bower.json +9 -0
  57. data/public/bower_components/core-drawer-panel/core-drawer-panel.css +160 -0
  58. data/public/bower_components/core-drawer-panel/core-drawer-panel.html +418 -0
  59. data/public/bower_components/core-drawer-panel/demo.html +68 -0
  60. data/public/bower_components/core-drawer-panel/index.html +22 -0
  61. data/public/bower_components/core-drawer-panel/metadata.html +37 -0
  62. data/public/bower_components/core-focusable/.bower.json +18 -0
  63. data/public/bower_components/core-focusable/README.md +6 -0
  64. data/public/bower_components/core-focusable/bower.json +8 -0
  65. data/public/bower_components/core-focusable/core-focusable.html +4 -0
  66. data/public/bower_components/core-focusable/core-focusable.js +134 -0
  67. data/public/bower_components/core-focusable/demo.html +109 -0
  68. data/public/bower_components/core-focusable/polymer-mixin.js +35 -0
  69. data/public/bower_components/core-header-panel/.bower.json +18 -0
  70. data/public/bower_components/core-header-panel/README.md +4 -0
  71. data/public/bower_components/core-header-panel/bower.json +8 -0
  72. data/public/bower_components/core-header-panel/core-header-panel.css +78 -0
  73. data/public/bower_components/core-header-panel/core-header-panel.html +277 -0
  74. data/public/bower_components/core-header-panel/demo.html +100 -0
  75. data/public/bower_components/core-header-panel/index.html +23 -0
  76. data/public/bower_components/core-header-panel/metadata.html +37 -0
  77. data/public/bower_components/core-icon/.bower.json +19 -0
  78. data/public/bower_components/core-icon/README.md +4 -0
  79. data/public/bower_components/core-icon/bower.json +9 -0
  80. data/public/bower_components/core-icon/core-icon.css +16 -0
  81. data/public/bower_components/core-icon/core-icon.html +201 -0
  82. data/public/bower_components/core-icon/demo.html +44 -0
  83. data/public/bower_components/core-icon/index.html +22 -0
  84. data/public/bower_components/core-icon/metadata.html +21 -0
  85. data/public/bower_components/core-icon-button/.bower.json +18 -0
  86. data/public/bower_components/core-icon-button/README.md +4 -0
  87. data/public/bower_components/core-icon-button/bower.json +8 -0
  88. data/public/bower_components/core-icon-button/core-icon-button.css +75 -0
  89. data/public/bower_components/core-icon-button/core-icon-button.html +81 -0
  90. data/public/bower_components/core-icon-button/demo.html +35 -0
  91. data/public/bower_components/core-icon-button/index.html +22 -0
  92. data/public/bower_components/core-icon-button/metadata.html +20 -0
  93. data/public/bower_components/core-icons/.bower.json +24 -0
  94. data/public/bower_components/core-icons/.gitignore +2 -0
  95. data/public/bower_components/core-icons/README.md +8 -0
  96. data/public/bower_components/core-icons/av-icons.html +65 -0
  97. data/public/bower_components/core-icons/bower.json +14 -0
  98. data/public/bower_components/core-icons/communication-icons.html +54 -0
  99. data/public/bower_components/core-icons/core-icons.html +278 -0
  100. data/public/bower_components/core-icons/demo.html +98 -0
  101. data/public/bower_components/core-icons/device-icons.html +90 -0
  102. data/public/bower_components/core-icons/editor-icons.html +67 -0
  103. data/public/bower_components/core-icons/hardware-icons.html +56 -0
  104. data/public/bower_components/core-icons/image-icons.html +152 -0
  105. data/public/bower_components/core-icons/index.html +22 -0
  106. data/public/bower_components/core-icons/maps-icons.html +70 -0
  107. data/public/bower_components/core-icons/notification-icons.html +49 -0
  108. data/public/bower_components/core-icons/social-icons.html +39 -0
  109. data/public/bower_components/core-iconset/.bower.json +20 -0
  110. data/public/bower_components/core-iconset/README.md +4 -0
  111. data/public/bower_components/core-iconset/bower.json +10 -0
  112. data/public/bower_components/core-iconset/core-iconset.html +241 -0
  113. data/public/bower_components/core-iconset/demo.html +62 -0
  114. data/public/bower_components/core-iconset/index.html +22 -0
  115. data/public/bower_components/core-iconset/my-icons-big.png +0 -0
  116. data/public/bower_components/core-iconset/my-icons.png +0 -0
  117. data/public/bower_components/core-iconset-svg/.bower.json +19 -0
  118. data/public/bower_components/core-iconset-svg/README.md +4 -0
  119. data/public/bower_components/core-iconset-svg/bower.json +9 -0
  120. data/public/bower_components/core-iconset-svg/core-iconset-svg.html +168 -0
  121. data/public/bower_components/core-iconset-svg/demo.html +66 -0
  122. data/public/bower_components/core-iconset-svg/index.html +22 -0
  123. data/public/bower_components/core-iconset-svg/svg-sample-icons.html +68 -0
  124. data/public/bower_components/core-input/.bower.json +20 -0
  125. data/public/bower_components/core-input/README.md +2 -0
  126. data/public/bower_components/core-input/bower.json +10 -0
  127. data/public/bower_components/core-input/core-input.css +41 -0
  128. data/public/bower_components/core-input/core-input.html +148 -0
  129. data/public/bower_components/core-input/demo.html +62 -0
  130. data/public/bower_components/core-input/index.html +22 -0
  131. data/public/bower_components/core-input/metadata.html +23 -0
  132. data/public/bower_components/core-input/test/a11y.html +55 -0
  133. data/public/bower_components/core-input/test/basic.html +60 -0
  134. data/public/bower_components/core-input/test/index.html +25 -0
  135. data/public/bower_components/core-item/.bower.json +19 -0
  136. data/public/bower_components/core-item/README.md +4 -0
  137. data/public/bower_components/core-item/bower.json +9 -0
  138. data/public/bower_components/core-item/core-item.css +45 -0
  139. data/public/bower_components/core-item/core-item.html +73 -0
  140. data/public/bower_components/core-item/demo.html +92 -0
  141. data/public/bower_components/core-item/index.html +22 -0
  142. data/public/bower_components/core-item/metadata.html +24 -0
  143. data/public/bower_components/core-media-query/.bower.json +18 -0
  144. data/public/bower_components/core-media-query/README.md +4 -0
  145. data/public/bower_components/core-media-query/bower.json +8 -0
  146. data/public/bower_components/core-media-query/core-media-query.html +87 -0
  147. data/public/bower_components/core-media-query/demo.html +44 -0
  148. data/public/bower_components/core-media-query/index.html +22 -0
  149. data/public/bower_components/core-menu/.bower.json +22 -0
  150. data/public/bower_components/core-menu/README.md +4 -0
  151. data/public/bower_components/core-menu/bower.json +11 -0
  152. data/public/bower_components/core-menu/core-menu.css +18 -0
  153. data/public/bower_components/core-menu/core-menu.html +73 -0
  154. data/public/bower_components/core-menu/core-submenu.css +43 -0
  155. data/public/bower_components/core-menu/core-submenu.html +126 -0
  156. data/public/bower_components/core-menu/demo.html +101 -0
  157. data/public/bower_components/core-menu/index.html +22 -0
  158. data/public/bower_components/core-menu/metadata.html +62 -0
  159. data/public/bower_components/core-meta/.bower.json +18 -0
  160. data/public/bower_components/core-meta/README.md +4 -0
  161. data/public/bower_components/core-meta/bower.json +8 -0
  162. data/public/bower_components/core-meta/core-meta.html +145 -0
  163. data/public/bower_components/core-meta/demo.html +58 -0
  164. data/public/bower_components/core-meta/index.html +22 -0
  165. data/public/bower_components/core-overlay/.bower.json +20 -0
  166. data/public/bower_components/core-overlay/README.md +4 -0
  167. data/public/bower_components/core-overlay/bower.json +10 -0
  168. data/public/bower_components/core-overlay/core-key-helper.html +22 -0
  169. data/public/bower_components/core-overlay/core-overlay-layer.html +116 -0
  170. data/public/bower_components/core-overlay/core-overlay.html +776 -0
  171. data/public/bower_components/core-overlay/demo.html +155 -0
  172. data/public/bower_components/core-overlay/gulpfile.js +2 -0
  173. data/public/bower_components/core-overlay/index.html +22 -0
  174. data/public/bower_components/core-overlay/tests/html/core-overlay-basic.html +127 -0
  175. data/public/bower_components/core-overlay/tests/html/core-overlay-positioning-margin.html +153 -0
  176. data/public/bower_components/core-overlay/tests/html/core-overlay-positioning.html +167 -0
  177. data/public/bower_components/core-overlay/tests/html/core-overlay-quick-close.html +45 -0
  178. data/public/bower_components/core-overlay/tests/html/core-overlay-scroll.html +130 -0
  179. data/public/bower_components/core-overlay/tests/js/htmltests.js +7 -0
  180. data/public/bower_components/core-overlay/tests/runner.html +14 -0
  181. data/public/bower_components/core-overlay/tests/tests.json +6 -0
  182. data/public/bower_components/core-pages/.bower.json +19 -0
  183. data/public/bower_components/core-pages/README.md +4 -0
  184. data/public/bower_components/core-pages/bower.json +8 -0
  185. data/public/bower_components/core-pages/core-pages.css +30 -0
  186. data/public/bower_components/core-pages/core-pages.html +44 -0
  187. data/public/bower_components/core-pages/demo.html +136 -0
  188. data/public/bower_components/core-pages/index.html +22 -0
  189. data/public/bower_components/core-pages/metadata.html +25 -0
  190. data/public/bower_components/core-resizable/.bower.json +18 -0
  191. data/public/bower_components/core-resizable/README.md +4 -0
  192. data/public/bower_components/core-resizable/bower.json +8 -0
  193. data/public/bower_components/core-resizable/core-resizable.html +248 -0
  194. data/public/bower_components/core-resizable/index.html +22 -0
  195. data/public/bower_components/core-resizable/test/basic.html +504 -0
  196. data/public/bower_components/core-resizable/test/index.html +16 -0
  197. data/public/bower_components/core-resizable/test/test-elements.html +66 -0
  198. data/public/bower_components/core-scaffold/.bower.json +22 -0
  199. data/public/bower_components/core-scaffold/README.md +4 -0
  200. data/public/bower_components/core-scaffold/bower.json +11 -0
  201. data/public/bower_components/core-scaffold/core-scaffold.html +252 -0
  202. data/public/bower_components/core-scaffold/demo.html +82 -0
  203. data/public/bower_components/core-scaffold/index.html +22 -0
  204. data/public/bower_components/core-scaffold/metadata.html +52 -0
  205. data/public/bower_components/core-selection/.bower.json +21 -0
  206. data/public/bower_components/core-selection/README.md +4 -0
  207. data/public/bower_components/core-selection/bower.json +11 -0
  208. data/public/bower_components/core-selection/core-selection.html +149 -0
  209. data/public/bower_components/core-selection/demo.html +59 -0
  210. data/public/bower_components/core-selection/index.html +22 -0
  211. data/public/bower_components/core-selection/test/basic.html +62 -0
  212. data/public/bower_components/core-selection/test/index.html +25 -0
  213. data/public/bower_components/core-selection/test/multi.html +63 -0
  214. data/public/bower_components/core-selector/.bower.json +22 -0
  215. data/public/bower_components/core-selector/.gitignore +2 -0
  216. data/public/bower_components/core-selector/README.md +4 -0
  217. data/public/bower_components/core-selector/bower.json +12 -0
  218. data/public/bower_components/core-selector/core-selector.html +548 -0
  219. data/public/bower_components/core-selector/demo.html +106 -0
  220. data/public/bower_components/core-selector/index.html +22 -0
  221. data/public/bower_components/core-selector/metadata.html +20 -0
  222. data/public/bower_components/core-selector/test/activate-event.html +63 -0
  223. data/public/bower_components/core-selector/test/basic.html +126 -0
  224. data/public/bower_components/core-selector/test/content.html +101 -0
  225. data/public/bower_components/core-selector/test/index.html +30 -0
  226. data/public/bower_components/core-selector/test/multi.html +115 -0
  227. data/public/bower_components/core-selector/test/next-previous.html +113 -0
  228. data/public/bower_components/core-selector/test/selected-attr-prop.html +62 -0
  229. data/public/bower_components/core-selector/test/template-repeat.html +63 -0
  230. data/public/bower_components/core-style/.bower.json +18 -0
  231. data/public/bower_components/core-style/README.md +4 -0
  232. data/public/bower_components/core-style/bower.json +8 -0
  233. data/public/bower_components/core-style/core-style.html +387 -0
  234. data/public/bower_components/core-style/demo.html +58 -0
  235. data/public/bower_components/core-style/elements.html +55 -0
  236. data/public/bower_components/core-style/index.html +22 -0
  237. data/public/bower_components/core-style/my-theme.html +73 -0
  238. data/public/bower_components/core-toolbar/.bower.json +19 -0
  239. data/public/bower_components/core-toolbar/README.md +4 -0
  240. data/public/bower_components/core-toolbar/bower.json +9 -0
  241. data/public/bower_components/core-toolbar/core-toolbar.css +117 -0
  242. data/public/bower_components/core-toolbar/core-toolbar.html +155 -0
  243. data/public/bower_components/core-toolbar/demo.html +119 -0
  244. data/public/bower_components/core-toolbar/index.html +22 -0
  245. data/public/bower_components/core-toolbar/metadata.html +28 -0
  246. data/public/bower_components/core-toolbar/test/basic.html +86 -0
  247. data/public/bower_components/core-toolbar/test/index.html +24 -0
  248. data/public/bower_components/core-transition/.bower.json +19 -0
  249. data/public/bower_components/core-transition/README.md +2 -0
  250. data/public/bower_components/core-transition/bower.json +9 -0
  251. data/public/bower_components/core-transition/core-transition-css.html +220 -0
  252. data/public/bower_components/core-transition/core-transition-overlay.css +46 -0
  253. data/public/bower_components/core-transition/core-transition.html +140 -0
  254. data/public/bower_components/core-transition/demo.html +87 -0
  255. data/public/bower_components/core-transition/index.html +22 -0
  256. data/public/bower_components/font-roboto/.bower.json +15 -0
  257. data/public/bower_components/font-roboto/roboto.html +9 -0
  258. data/public/bower_components/paper-button/.bower.json +27 -0
  259. data/public/bower_components/paper-button/README.md +4 -0
  260. data/public/bower_components/paper-button/bower.json +16 -0
  261. data/public/bower_components/paper-button/demo.html +157 -0
  262. data/public/bower_components/paper-button/index.html +22 -0
  263. data/public/bower_components/paper-button/metadata.html +17 -0
  264. data/public/bower_components/paper-button/paper-button-base.html +164 -0
  265. data/public/bower_components/paper-button/paper-button.html +197 -0
  266. data/public/bower_components/paper-button/test/index.html +24 -0
  267. data/public/bower_components/paper-button/test/paper-button.html +112 -0
  268. data/public/bower_components/paper-icon-button/.bower.json +25 -0
  269. data/public/bower_components/paper-icon-button/README.md +4 -0
  270. data/public/bower_components/paper-icon-button/bower.json +15 -0
  271. data/public/bower_components/paper-icon-button/demo.html +150 -0
  272. data/public/bower_components/paper-icon-button/index.html +22 -0
  273. data/public/bower_components/paper-icon-button/metadata.html +21 -0
  274. data/public/bower_components/paper-icon-button/paper-icon-button.html +154 -0
  275. data/public/bower_components/paper-icon-button/test/a11y.html +68 -0
  276. data/public/bower_components/paper-icon-button/test/basic.html +50 -0
  277. data/public/bower_components/paper-icon-button/test/index.html +25 -0
  278. data/public/bower_components/paper-input/.bower.json +26 -0
  279. data/public/bower_components/paper-input/.gitignore +1 -0
  280. data/public/bower_components/paper-input/README.md +4 -0
  281. data/public/bower_components/paper-input/bower.json +15 -0
  282. data/public/bower_components/paper-input/demo.html +236 -0
  283. data/public/bower_components/paper-input/index.html +22 -0
  284. data/public/bower_components/paper-input/metadata.html +20 -0
  285. data/public/bower_components/paper-input/paper-autogrow-textarea.html +162 -0
  286. data/public/bower_components/paper-input/paper-char-counter.html +121 -0
  287. data/public/bower_components/paper-input/paper-input-decorator.css +132 -0
  288. data/public/bower_components/paper-input/paper-input-decorator.html +547 -0
  289. data/public/bower_components/paper-input/paper-input.html +145 -0
  290. data/public/bower_components/paper-input/test/index.html +26 -0
  291. data/public/bower_components/paper-input/test/paper-autogrow-textarea.html +146 -0
  292. data/public/bower_components/paper-input/test/paper-input-decorator.html +240 -0
  293. data/public/bower_components/paper-input/test/paper-input.html +68 -0
  294. data/public/bower_components/paper-input/test/util.js +15 -0
  295. data/public/bower_components/paper-radio-button/.bower.json +22 -0
  296. data/public/bower_components/paper-radio-button/README.md +4 -0
  297. data/public/bower_components/paper-radio-button/bower.json +12 -0
  298. data/public/bower_components/paper-radio-button/demo.html +84 -0
  299. data/public/bower_components/paper-radio-button/index.html +22 -0
  300. data/public/bower_components/paper-radio-button/metadata.html +17 -0
  301. data/public/bower_components/paper-radio-button/paper-radio-button.css +108 -0
  302. data/public/bower_components/paper-radio-button/paper-radio-button.html +166 -0
  303. data/public/bower_components/paper-ripple/.bower.json +23 -0
  304. data/public/bower_components/paper-ripple/README.md +4 -0
  305. data/public/bower_components/paper-ripple/bower.json +13 -0
  306. data/public/bower_components/paper-ripple/demo.html +414 -0
  307. data/public/bower_components/paper-ripple/index.html +22 -0
  308. data/public/bower_components/paper-ripple/metadata.html +20 -0
  309. data/public/bower_components/paper-ripple/paper-ripple.html +477 -0
  310. data/public/bower_components/paper-ripple/test/index.html +24 -0
  311. data/public/bower_components/paper-ripple/test/position.html +109 -0
  312. data/public/bower_components/paper-shadow/.bower.json +22 -0
  313. data/public/bower_components/paper-shadow/README.md +4 -0
  314. data/public/bower_components/paper-shadow/bower.json +11 -0
  315. data/public/bower_components/paper-shadow/demo.html +134 -0
  316. data/public/bower_components/paper-shadow/index.html +22 -0
  317. data/public/bower_components/paper-shadow/metadata.html +17 -0
  318. data/public/bower_components/paper-shadow/paper-shadow.css +66 -0
  319. data/public/bower_components/paper-shadow/paper-shadow.html +86 -0
  320. data/public/bower_components/paper-shadow/test/basic.html +62 -0
  321. data/public/bower_components/paper-shadow/test/index.html +24 -0
  322. data/public/bower_components/paper-tabs/.bower.json +26 -0
  323. data/public/bower_components/paper-tabs/README.md +4 -0
  324. data/public/bower_components/paper-tabs/bower.json +15 -0
  325. data/public/bower_components/paper-tabs/demo.html +242 -0
  326. data/public/bower_components/paper-tabs/index.html +22 -0
  327. data/public/bower_components/paper-tabs/metadata.html +58 -0
  328. data/public/bower_components/paper-tabs/paper-tab.css +59 -0
  329. data/public/bower_components/paper-tabs/paper-tab.html +82 -0
  330. data/public/bower_components/paper-tabs/paper-tabs.css +80 -0
  331. data/public/bower_components/paper-tabs/paper-tabs.html +353 -0
  332. data/public/bower_components/paper-toast/.bower.json +22 -0
  333. data/public/bower_components/paper-toast/README.md +4 -0
  334. data/public/bower_components/paper-toast/bower.json +11 -0
  335. data/public/bower_components/paper-toast/demo.html +63 -0
  336. data/public/bower_components/paper-toast/index.html +22 -0
  337. data/public/bower_components/paper-toast/metadata.html +20 -0
  338. data/public/bower_components/paper-toast/paper-toast.css +80 -0
  339. data/public/bower_components/paper-toast/paper-toast.html +296 -0
  340. data/public/bower_components/paper-toggle-button/.bower.json +20 -0
  341. data/public/bower_components/paper-toggle-button/README.md +4 -0
  342. data/public/bower_components/paper-toggle-button/bower.json +9 -0
  343. data/public/bower_components/paper-toggle-button/demo.html +97 -0
  344. data/public/bower_components/paper-toggle-button/index.html +22 -0
  345. data/public/bower_components/paper-toggle-button/metadata.html +17 -0
  346. data/public/bower_components/paper-toggle-button/paper-toggle-button.css +95 -0
  347. data/public/bower_components/paper-toggle-button/paper-toggle-button.html +179 -0
  348. data/public/bower_components/polymer/.bower.json +32 -0
  349. data/public/bower_components/polymer/README.md +21 -0
  350. data/public/bower_components/polymer/bower.json +23 -0
  351. data/public/bower_components/polymer/build.log +26 -0
  352. data/public/bower_components/polymer/layout.html +286 -0
  353. data/public/bower_components/polymer/polymer.html +12 -0
  354. data/public/bower_components/polymer/polymer.js +11859 -0
  355. data/public/bower_components/polymer/polymer.min.js +14 -0
  356. data/public/bower_components/webcomponentsjs/.bower.json +23 -0
  357. data/public/bower_components/webcomponentsjs/CustomElements.js +634 -0
  358. data/public/bower_components/webcomponentsjs/CustomElements.min.js +11 -0
  359. data/public/bower_components/webcomponentsjs/HTMLImports.js +764 -0
  360. data/public/bower_components/webcomponentsjs/HTMLImports.min.js +11 -0
  361. data/public/bower_components/webcomponentsjs/README.md +73 -0
  362. data/public/bower_components/webcomponentsjs/ShadowDOM.js +4277 -0
  363. data/public/bower_components/webcomponentsjs/ShadowDOM.min.js +13 -0
  364. data/public/bower_components/webcomponentsjs/bower.json +14 -0
  365. data/public/bower_components/webcomponentsjs/build.log +31 -0
  366. data/public/bower_components/webcomponentsjs/package.json +31 -0
  367. data/public/bower_components/webcomponentsjs/webcomponents-lite.js +1728 -0
  368. data/public/bower_components/webcomponentsjs/webcomponents-lite.min.js +11 -0
  369. data/public/bower_components/webcomponentsjs/webcomponents.js +6114 -0
  370. data/public/bower_components/webcomponentsjs/webcomponents.min.js +14 -0
  371. data/public/css/main.css +41 -0
  372. data/public/elements/ec-dashboard/ec-dashboard.html +269 -0
  373. data/public/polymer-loader.html +24 -0
  374. data/public/polymer-loader.vulcanized.html +19 -0
  375. data/spec/ec/ec_dashboard_spec.rb +78 -0
  376. data/spec/ec/ec_spec.rb +78 -0
  377. data/spec/spec_helper.rb +27 -0
  378. data/views/index.html +88 -0
  379. metadata +464 -0
@@ -0,0 +1,63 @@
1
+ <!doctype html>
2
+ <!--
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
+ <html>
11
+ <head>
12
+ <meta charset="UTF-8">
13
+ <title>core-selector-activate-event</title>
14
+
15
+ <script src="../../webcomponentsjs/webcomponents.js"></script>
16
+ <script src="../../web-component-tester/browser.js"></script>
17
+
18
+ <link rel="import" href="../core-selector.html">
19
+
20
+ <style>
21
+ .core-selected {
22
+ background: #ccc;
23
+ }
24
+ </style>
25
+
26
+ </head>
27
+ <body>
28
+
29
+ <core-selector id="selector" selected="0">
30
+ <div>Item 1</div>
31
+ <div>Item 2</div>
32
+ <div>Item 3</div>
33
+ <div>Item 4</div>
34
+ <div>Item 5</div>
35
+ </core-selector>
36
+
37
+ <script>
38
+
39
+ var s = document.querySelector('#selector');
40
+
41
+ suite('activate event', function() {
42
+
43
+ test('activates on tap', function(done) {
44
+ assert.equal(s.selected, '0');
45
+
46
+ async.nextTick(function() {
47
+ // select Item 2
48
+ s.children[1].dispatchEvent(new CustomEvent('tap', {bubbles: true}));
49
+ });
50
+
51
+ s.addEventListener("core-activate", function(event) {
52
+ assert.equal(event.detail.item, s.children[1]);
53
+ assert.equal(s.selected, 1);
54
+ done();
55
+ });
56
+ });
57
+
58
+ });
59
+
60
+ </script>
61
+
62
+ </body>
63
+ </html>
@@ -0,0 +1,126 @@
1
+ <!doctype html>
2
+ <!--
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
+ <html>
11
+ <head>
12
+ <meta charset="UTF-8">
13
+ <title>core-selector-basic</title>
14
+ <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
15
+
16
+ <script src="../../webcomponentsjs/webcomponents.js"></script>
17
+ <script src="../../web-component-tester/browser.js"></script>
18
+
19
+ <link rel="import" href="../core-selector.html">
20
+
21
+ <style>
22
+ .core-selected {
23
+ background: #ccc;
24
+ }
25
+
26
+ .my-selected {
27
+ background: red;
28
+ }
29
+ </style>
30
+
31
+ </head>
32
+ <body>
33
+
34
+ <core-selector id="selector1">
35
+ <div>Item 1</div>
36
+ <div>Item 2</div>
37
+ <div>Item 3</div>
38
+ <div>Item 4</div>
39
+ <div>Item 5</div>
40
+ </core-selector>
41
+
42
+ <br><br>
43
+
44
+ <core-selector id="selector2" selected="item3" selectedClass="my-selected" valueattr="id">
45
+ <div id="item1">Item 1</div>
46
+ <div id="item2">Item 2</div>
47
+ <div id="item3">Item 3</div>
48
+ <div id="item4">Item 4</div>
49
+ <div id="item5">Item 5</div>
50
+ </core-selector>
51
+
52
+ <script>
53
+
54
+ var s1 = document.querySelector('#selector1');
55
+ var s2 = document.querySelector('#selector2');
56
+
57
+ suite('basic', function() {
58
+
59
+ suite('defaults', function() {
60
+ test('to nothing selected', function() {
61
+ assert.equal(s1.selected, null);
62
+ });
63
+
64
+ test('to core-selected as selectedClass', function() {
65
+ assert.equal(s1.selectedClass, 'core-selected');
66
+ });
67
+
68
+ test('to a single-select', function() {
69
+ assert.isFalse(s1.multi);
70
+ });
71
+
72
+ test('to name as valueattr', function() {
73
+ assert.equal(s1.valueattr, 'name');
74
+ });
75
+
76
+ test('as many items as children', function() {
77
+ assert.equal(s1.items.length, 5);
78
+ });
79
+ });
80
+
81
+ test('honors the selected attribute', function() {
82
+ assert.equal(s2.selected, 'item3');
83
+ assert.equal(s2.selectedIndex, 2);
84
+ assert.equal(s2.selectedItem, document.querySelector('#item3'));
85
+ });
86
+
87
+ test('honors the selectedClass attribute', function() {
88
+ assert.equal(s2.selectedClass, 'my-selected');
89
+ assert.isTrue(document.querySelector('#item3').classList.contains('my-selected'));
90
+ });
91
+
92
+ test('allows assignment to selected', function(done) {
93
+ // setup listener for core-select event
94
+ var selectEventCounter = 0;
95
+ s2.addEventListener('core-select', function(e) {
96
+ if (e.detail.isSelected) {
97
+ selectEventCounter++;
98
+ // selectedItem and detail.item should be the same
99
+ assert.equal(e.detail.item, s2.selectedItem);
100
+ }
101
+ });
102
+ // set selected
103
+ s2.selected = 'item5';
104
+ asyncPlatformFlush(function() {
105
+ // check core-select event
106
+ assert.equal(selectEventCounter, 1);
107
+ // check selected class
108
+ assert.isTrue(s2.children[4].classList.contains('my-selected'));
109
+ // check selectedItem
110
+ assert.equal(s2.selectedItem, s2.children[4]);
111
+ // selecting the same value shouldn't fire core-select
112
+ selectEventCounter = 0;
113
+ s2.selected = 'item5';
114
+ flush(function() {
115
+ assert.equal(selectEventCounter, 0);
116
+ done();
117
+ });
118
+ });
119
+ });
120
+
121
+ });
122
+
123
+ </script>
124
+
125
+ </body>
126
+ </html>
@@ -0,0 +1,101 @@
1
+ <!doctype html>
2
+ <!--
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
+ <html>
11
+ <head>
12
+ <meta charset="UTF-8">
13
+ <title>core-selector-content</title>
14
+ <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
15
+
16
+ <script src="../../webcomponentsjs/webcomponents.js"></script>
17
+ <script src="../../web-component-tester/browser.js"></script>
18
+
19
+ <link rel="import" href="../core-selector.html">
20
+
21
+ <style>
22
+ .core-selected {
23
+ background: #ccc;
24
+ }
25
+ </style>
26
+
27
+ </head>
28
+ <body>
29
+
30
+ <polymer-element name="test-core-selector" noscript attributes="selected">
31
+ <template>
32
+ <core-selector id="selector" selected="{{selected}}" valueattr="id">
33
+ <content></content>
34
+ </core-selector>
35
+ </template>
36
+ </polymer-element>
37
+
38
+ <test-core-selector selected="item0">
39
+ <div id="item0">item0</div>
40
+ <div id="item1">item1</div>
41
+ <div id="item2">item2</div>
42
+ <div id="item3">item3</div>
43
+ </test-core-selector>
44
+
45
+ <script>
46
+
47
+ var s = document.querySelector('test-core-selector');
48
+
49
+ suite('content', function() {
50
+
51
+ test('get selected', function(done) {
52
+ asyncPlatformFlush(function() {
53
+ // check selected class
54
+ assert.isTrue(s.children[0].classList.contains('core-selected'));
55
+ done();
56
+ });
57
+ });
58
+
59
+ test('set selected', function(done) {
60
+ // set selected
61
+ s.selected = 'item1';
62
+ asyncPlatformFlush(function() {
63
+ // check selected class
64
+ assert.isTrue(s.children[1].classList.contains('core-selected'));
65
+ done();
66
+ });
67
+ });
68
+
69
+ test('get items', function() {
70
+ assert.equal(s.$.selector.items.length, s.children.length);
71
+ });
72
+
73
+ test('activate event', function(done) {
74
+ s.children[2].dispatchEvent(new CustomEvent('tap', {bubbles: true}));
75
+ asyncPlatformFlush(function() {
76
+ // check selected class
77
+ assert.isTrue(s.children[2].classList.contains('core-selected'));
78
+ done();
79
+ });
80
+ });
81
+
82
+ test('add item dynamically', function(done) {
83
+ var item = document.createElement('div');
84
+ item.id = 'item4';
85
+ item.textContent = 'item4';
86
+ s.appendChild(item);
87
+ // set selected
88
+ s.selected = 'item4';
89
+ asyncPlatformFlush(function() {
90
+ // check selected class
91
+ assert.isTrue(s.children[4].classList.contains('core-selected'));
92
+ done();
93
+ });
94
+ });
95
+
96
+ });
97
+
98
+ </script>
99
+
100
+ </body>
101
+ </html>
@@ -0,0 +1,30 @@
1
+ <!doctype html>
2
+ <!--
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
+ <html>
11
+ <head>
12
+ <meta charset="UTF-8">
13
+ <meta name="viewport" content="width=device-width, minimum-scale=1.0, initial-scale=1.0, user-scalable=yes">
14
+ <title>Tests</title>
15
+ <script src="../../web-component-tester/browser.js"></script>
16
+ </head>
17
+ <body>
18
+ <script>
19
+ WCT.loadSuites([
20
+ 'activate-event.html',
21
+ 'basic.html',
22
+ 'multi.html',
23
+ 'next-previous.html',
24
+ 'selected-attr-prop.html',
25
+ 'template-repeat.html',
26
+ 'content.html'
27
+ ]);
28
+ </script>
29
+ </body>
30
+ </html>
@@ -0,0 +1,115 @@
1
+ <!doctype html>
2
+ <!--
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
+ <html>
11
+ <head>
12
+ <meta charset="UTF-8">
13
+ <title>core-selector-multi</title>
14
+
15
+ <script src="../../webcomponentsjs/webcomponents.js"></script>
16
+ <script src="../../web-component-tester/browser.js"></script>
17
+
18
+ <link rel="import" href="../core-selector.html">
19
+
20
+ <style>
21
+ .core-selected {
22
+ background: #ccc;
23
+ }
24
+ </style>
25
+
26
+ </head>
27
+ <body>
28
+
29
+ <core-selector id="selector" multi>
30
+ <div>Item 1</div>
31
+ <div>Item 2</div>
32
+ <div>Item 3</div>
33
+ <div>Item 4</div>
34
+ <div>Item 5</div>
35
+ </core-selector>
36
+
37
+ <script>
38
+
39
+ var s = document.querySelector('#selector');
40
+
41
+ suite('multi', function() {
42
+
43
+ test('honors the multi attribute', function() {
44
+ assert.isTrue(s.multi);
45
+ });
46
+
47
+ test('has sane defaults', function() {
48
+ assert.equal(s.selected, null);
49
+ assert.equal(s.selectedClass, 'core-selected');
50
+ assert.equal(s.valueattr, 'name');
51
+ assert.equal(s.items.length, 5);
52
+ });
53
+
54
+ test('allows multi-selection', function(done) {
55
+ // setup listener for core-select event
56
+ var selectEventCounter = 0;
57
+ s.addEventListener('core-select', function(e) {
58
+ if (e.detail.isSelected) {
59
+ selectEventCounter++;
60
+ } else {
61
+ selectEventCounter--;
62
+ }
63
+ });
64
+ // set selected
65
+ s.selected = [0, 2];
66
+ asyncPlatformFlush(function() {
67
+ // check core-select event
68
+ assert.equal(selectEventCounter, 2);
69
+ // check selected class
70
+ assert.isTrue(s.children[0].classList.contains('core-selected'));
71
+ assert.isTrue(s.children[2].classList.contains('core-selected'));
72
+ // check selectedItem
73
+ assert.equal(s.selectedItem.length, 2);
74
+ assert.equal(s.selectedItem[0], s.children[0]);
75
+ assert.equal(s.selectedItem[1], s.children[2]);
76
+ // tap on already selected element should unselect it
77
+ s.children[0].dispatchEvent(new CustomEvent('tap', {bubbles: true}));
78
+ // check selected
79
+ assert.equal(s.selected.length, 1);
80
+ asyncPlatformFlush(function() {
81
+ assert.equal(selectEventCounter, 1);
82
+ assert.isFalse(s.children[0].classList.contains('core-selected'));
83
+ // add selected
84
+ s.selected.push(3);
85
+ s.selected.push(4);
86
+ // check core-select event
87
+ asyncPlatformFlush(function() {
88
+ assert.equal(selectEventCounter, 3);
89
+ done();
90
+ });
91
+ });
92
+ });
93
+ });
94
+
95
+ test('toggle multi to false', function(done) {
96
+ // set selected
97
+ s.selected = [0, 2];
98
+ var first = s.selected[0];
99
+ // set mutli to false, so to make it single-selection
100
+ s.multi = false;
101
+ asyncPlatformFlush(function() {
102
+ // selected should not be an array
103
+ assert.isNotArray(s.selected);
104
+ // selected should be the first value in the old array
105
+ assert.equal(s.selected, first);
106
+ done();
107
+ });
108
+ });
109
+
110
+ });
111
+
112
+ </script>
113
+
114
+ </body>
115
+ </html>
@@ -0,0 +1,113 @@
1
+ <!doctype html>
2
+ <!--
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
+ <html>
11
+ <head>
12
+ <meta charset="UTF-8">
13
+ <title>core-selector-next-previous-wrap</title>
14
+ <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
15
+
16
+ <script src="../../webcomponentsjs/webcomponents.js"></script>
17
+ <script src="../../web-component-tester/browser.js"></script>
18
+
19
+ <link rel="import" href="../core-selector.html">
20
+
21
+ <style>
22
+ .core-selected {
23
+ background: #ccc;
24
+ }
25
+ </style>
26
+
27
+ </head>
28
+ <body unresolved>
29
+
30
+ <core-selector id="selector" selected="0">
31
+ <div>Item 1</div>
32
+ <div>Item 2</div>
33
+ <div>Item 3</div>
34
+ </core-selector>
35
+
36
+ <script>
37
+
38
+ var s = document.querySelector('#selector');
39
+
40
+ function assertAndSelect(method, expectedIndex, wrap) {
41
+ return function(done) {
42
+ assert.equal(s.selected, expectedIndex);
43
+ s[method](wrap);
44
+ flush(done);
45
+ }
46
+ }
47
+
48
+ suite('next/previous', function() {
49
+
50
+ test('selectNext(true) wraps', function(done) {
51
+ assert.equal(s.selected, 0);
52
+
53
+ async.series([
54
+ assertAndSelect('selectNext', 0, true),
55
+ assertAndSelect('selectNext', 1, true),
56
+ assertAndSelect('selectNext', 2, true),
57
+ function(done) {
58
+ assert.equal(s.selected, 0);
59
+ done();
60
+ }
61
+ ], done);
62
+ });
63
+
64
+ test('selectPrevious(true) wraps', function(done) {
65
+ assert.equal(s.selected, 0);
66
+
67
+ async.series([
68
+ assertAndSelect('selectPrevious', 0, true),
69
+ assertAndSelect('selectPrevious', 2, true),
70
+ assertAndSelect('selectPrevious', 1, true),
71
+ function(done) {
72
+ assert.equal(s.selected, 0);
73
+ done();
74
+ }
75
+ ], done);
76
+ });
77
+
78
+ test('selectNext() does not wrap', function(done) {
79
+ assert.equal(s.selected, 0);
80
+
81
+ async.series([
82
+ assertAndSelect('selectNext', 0),
83
+ assertAndSelect('selectNext', 1),
84
+ assertAndSelect('selectNext', 2),
85
+ assertAndSelect('selectNext', 2),
86
+ assertAndSelect('selectNext', 2),
87
+ function(done) {
88
+ s.selected = 0;
89
+ asyncPlatformFlush(done);
90
+ }
91
+ ], done);
92
+ });
93
+
94
+ test('selectPrevious() does not wrap', function(done) {
95
+ assert.equal(s.selected, 0);
96
+ s.selected = 2;
97
+
98
+ async.series([
99
+ asyncPlatformFlush,
100
+ assertAndSelect('selectPrevious', 2),
101
+ assertAndSelect('selectPrevious', 1),
102
+ assertAndSelect('selectPrevious', 0),
103
+ assertAndSelect('selectPrevious', 0),
104
+ assertAndSelect('selectPrevious', 0),
105
+ ], done);
106
+ });
107
+
108
+ });
109
+
110
+ </script>
111
+
112
+ </body>
113
+ </html>
@@ -0,0 +1,62 @@
1
+ <!doctype html>
2
+ <!--
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
+ <html>
11
+ <head>
12
+ <meta charset="UTF-8">
13
+ <title>core-selector-selected-attr-prop</title>
14
+ <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
15
+
16
+ <script src="../../webcomponentsjs/webcomponents.js"></script>
17
+ <script src="../../web-component-tester/browser.js"></script>
18
+
19
+ <link rel="import" href="../core-selector.html">
20
+
21
+ <style>
22
+ .core-selected {
23
+ background: #ccc;
24
+ }
25
+ </style>
26
+
27
+ </head>
28
+ <body>
29
+
30
+ <core-selector id="selector" selected="2" selectedProperty="myprop">
31
+ <div>Item 1</div>
32
+ <div>Item 2</div>
33
+ <div>Item 3</div>
34
+ <div>Item 4</div>
35
+ <div>Item 5</div>
36
+ </core-selector>
37
+
38
+ <script>
39
+
40
+ var s = document.querySelector('#selector');
41
+
42
+ suite('selected attributes', function() {
43
+
44
+ test('custom selectedProperty', function(done) {
45
+ s.selected = 4;
46
+ asyncPlatformFlush(function() {
47
+ // check Item2's attribute and property (should be unselect)
48
+ assert.isFalse(s.children[2].hasAttribute('active'));
49
+ assert.notEqual(s.children[2].myprop, true);
50
+ // check Item4's attribute and property
51
+ assert.isTrue(s.children[4].hasAttribute('active'));
52
+ assert.isTrue(s.children[4].myprop);
53
+ done();
54
+ });
55
+ });
56
+
57
+ });
58
+
59
+ </script>
60
+
61
+ </body>
62
+ </html>
@@ -0,0 +1,63 @@
1
+ <!doctype html>
2
+ <!--
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
+ <html>
11
+ <head>
12
+ <meta charset="UTF-8">
13
+ <title>core-selector-template-repeat</title>
14
+ <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
15
+
16
+ <script src="../../webcomponentsjs/webcomponents.js"></script>
17
+ <script src="../../web-component-tester/browser.js"></script>
18
+
19
+ <link rel="import" href="../core-selector.html">
20
+
21
+ <style>
22
+ .core-selected {
23
+ background: #ccc;
24
+ }
25
+ </style>
26
+
27
+ </head>
28
+ <body>
29
+
30
+ <core-selector id="selector" selected="1">
31
+ <template id="itemsTemplate" repeat="{{items}}">
32
+ <div name="{{}}">{{}}</div>
33
+ </template>
34
+ </core-selector>
35
+
36
+ <script>
37
+
38
+ var s = document.querySelector('#selector');
39
+ var t = document.querySelector('#itemsTemplate');
40
+
41
+ suite('<template repeat...>', function() {
42
+
43
+ test('supports repeated children', function(done) {
44
+ t.model = {items: ['Item1', 'Item2', 'Item3', "Item4"]};
45
+ asyncPlatformFlush(function() {
46
+ // check items
47
+ assert.equal(s.items.length, 4);
48
+ assert.equal(s.selected, 1);
49
+ // check selectedItem
50
+ var item = s.selectedItem;
51
+ assert.equal(s.items[1], item);
52
+ // check selected class
53
+ assert.isTrue(item.classList.contains('core-selected'));
54
+ done();
55
+ });
56
+ });
57
+
58
+ });
59
+
60
+ </script>
61
+
62
+ </body>
63
+ </html>
@@ -0,0 +1,18 @@
1
+ {
2
+ "name": "core-style",
3
+ "private": true,
4
+ "dependencies": {
5
+ "polymer": "Polymer/polymer#^0.5"
6
+ },
7
+ "version": "0.5.5",
8
+ "homepage": "https://github.com/Polymer/core-style",
9
+ "_release": "0.5.5",
10
+ "_resolution": {
11
+ "type": "version",
12
+ "tag": "0.5.5",
13
+ "commit": "f4ecd52d5def71f9368b43b77f3b98a36ad1d893"
14
+ },
15
+ "_source": "git://github.com/Polymer/core-style.git",
16
+ "_target": "^0.5",
17
+ "_originalSource": "Polymer/core-style"
18
+ }