easycomments 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitignore +1 -0
- data/.rspec +2 -0
- data/Gemfile +14 -0
- data/LICENSE +21 -0
- data/README.md +92 -0
- data/Rakefile +49 -0
- data/_config.yml +28 -0
- data/bin/ec +45 -0
- data/config.ru +12 -0
- data/dashboard.rb +57 -0
- data/easycomments.gemspec +22 -0
- data/ec.rb +43 -0
- data/lib/easycomments/ec_configuration.rb +42 -0
- data/lib/easycomments/ec_dashboard_model.rb +70 -0
- data/lib/easycomments/ec_model.rb +47 -0
- data/lib/easycomments.rb +14 -0
- data/public/bower.json +32 -0
- data/public/bower_components/core-a11y-keys/.bower.json +28 -0
- data/public/bower_components/core-a11y-keys/README.md +4 -0
- data/public/bower_components/core-a11y-keys/bower.json +18 -0
- data/public/bower_components/core-a11y-keys/core-a11y-keys.html +335 -0
- data/public/bower_components/core-a11y-keys/demo.html +41 -0
- data/public/bower_components/core-a11y-keys/index.html +22 -0
- data/public/bower_components/core-ajax/.bower.json +22 -0
- data/public/bower_components/core-ajax/README.md +4 -0
- data/public/bower_components/core-ajax/bower.json +11 -0
- data/public/bower_components/core-ajax/core-ajax.html +434 -0
- data/public/bower_components/core-ajax/core-xhr.html +116 -0
- data/public/bower_components/core-ajax/demo-progress.html +65 -0
- data/public/bower_components/core-ajax/demo.html +43 -0
- data/public/bower_components/core-ajax/index.html +22 -0
- data/public/bower_components/core-ajax/metadata.html +23 -0
- data/public/bower_components/core-ajax/test/core-ajax-progress.html +108 -0
- data/public/bower_components/core-ajax/test/core-ajax-race.html +81 -0
- data/public/bower_components/core-ajax/test/core-ajax.html +287 -0
- data/public/bower_components/core-ajax/test/index.html +17 -0
- data/public/bower_components/core-collapse/.bower.json +21 -0
- data/public/bower_components/core-collapse/README.md +4 -0
- data/public/bower_components/core-collapse/bower.json +11 -0
- data/public/bower_components/core-collapse/core-collapse.css +16 -0
- data/public/bower_components/core-collapse/core-collapse.html +298 -0
- data/public/bower_components/core-collapse/demo.html +75 -0
- data/public/bower_components/core-collapse/index.html +22 -0
- data/public/bower_components/core-collapse/test/basic.html +85 -0
- data/public/bower_components/core-collapse/test/index.html +24 -0
- data/public/bower_components/core-component-page/.bower.json +19 -0
- data/public/bower_components/core-component-page/README.md +6 -0
- data/public/bower_components/core-component-page/bowager-logo.png +0 -0
- data/public/bower_components/core-component-page/bower.json +9 -0
- data/public/bower_components/core-component-page/core-component-page.html +37 -0
- data/public/bower_components/core-component-page/demo.html +23 -0
- data/public/bower_components/core-component-page/index.html +22 -0
- data/public/bower_components/core-drawer-panel/.bower.json +19 -0
- data/public/bower_components/core-drawer-panel/README.md +4 -0
- data/public/bower_components/core-drawer-panel/bower.json +9 -0
- data/public/bower_components/core-drawer-panel/core-drawer-panel.css +160 -0
- data/public/bower_components/core-drawer-panel/core-drawer-panel.html +418 -0
- data/public/bower_components/core-drawer-panel/demo.html +68 -0
- data/public/bower_components/core-drawer-panel/index.html +22 -0
- data/public/bower_components/core-drawer-panel/metadata.html +37 -0
- data/public/bower_components/core-focusable/.bower.json +18 -0
- data/public/bower_components/core-focusable/README.md +6 -0
- data/public/bower_components/core-focusable/bower.json +8 -0
- data/public/bower_components/core-focusable/core-focusable.html +4 -0
- data/public/bower_components/core-focusable/core-focusable.js +134 -0
- data/public/bower_components/core-focusable/demo.html +109 -0
- data/public/bower_components/core-focusable/polymer-mixin.js +35 -0
- data/public/bower_components/core-header-panel/.bower.json +18 -0
- data/public/bower_components/core-header-panel/README.md +4 -0
- data/public/bower_components/core-header-panel/bower.json +8 -0
- data/public/bower_components/core-header-panel/core-header-panel.css +78 -0
- data/public/bower_components/core-header-panel/core-header-panel.html +277 -0
- data/public/bower_components/core-header-panel/demo.html +100 -0
- data/public/bower_components/core-header-panel/index.html +23 -0
- data/public/bower_components/core-header-panel/metadata.html +37 -0
- data/public/bower_components/core-icon/.bower.json +19 -0
- data/public/bower_components/core-icon/README.md +4 -0
- data/public/bower_components/core-icon/bower.json +9 -0
- data/public/bower_components/core-icon/core-icon.css +16 -0
- data/public/bower_components/core-icon/core-icon.html +201 -0
- data/public/bower_components/core-icon/demo.html +44 -0
- data/public/bower_components/core-icon/index.html +22 -0
- data/public/bower_components/core-icon/metadata.html +21 -0
- data/public/bower_components/core-icon-button/.bower.json +18 -0
- data/public/bower_components/core-icon-button/README.md +4 -0
- data/public/bower_components/core-icon-button/bower.json +8 -0
- data/public/bower_components/core-icon-button/core-icon-button.css +75 -0
- data/public/bower_components/core-icon-button/core-icon-button.html +81 -0
- data/public/bower_components/core-icon-button/demo.html +35 -0
- data/public/bower_components/core-icon-button/index.html +22 -0
- data/public/bower_components/core-icon-button/metadata.html +20 -0
- data/public/bower_components/core-icons/.bower.json +24 -0
- data/public/bower_components/core-icons/.gitignore +2 -0
- data/public/bower_components/core-icons/README.md +8 -0
- data/public/bower_components/core-icons/av-icons.html +65 -0
- data/public/bower_components/core-icons/bower.json +14 -0
- data/public/bower_components/core-icons/communication-icons.html +54 -0
- data/public/bower_components/core-icons/core-icons.html +278 -0
- data/public/bower_components/core-icons/demo.html +98 -0
- data/public/bower_components/core-icons/device-icons.html +90 -0
- data/public/bower_components/core-icons/editor-icons.html +67 -0
- data/public/bower_components/core-icons/hardware-icons.html +56 -0
- data/public/bower_components/core-icons/image-icons.html +152 -0
- data/public/bower_components/core-icons/index.html +22 -0
- data/public/bower_components/core-icons/maps-icons.html +70 -0
- data/public/bower_components/core-icons/notification-icons.html +49 -0
- data/public/bower_components/core-icons/social-icons.html +39 -0
- data/public/bower_components/core-iconset/.bower.json +20 -0
- data/public/bower_components/core-iconset/README.md +4 -0
- data/public/bower_components/core-iconset/bower.json +10 -0
- data/public/bower_components/core-iconset/core-iconset.html +241 -0
- data/public/bower_components/core-iconset/demo.html +62 -0
- data/public/bower_components/core-iconset/index.html +22 -0
- data/public/bower_components/core-iconset/my-icons-big.png +0 -0
- data/public/bower_components/core-iconset/my-icons.png +0 -0
- data/public/bower_components/core-iconset-svg/.bower.json +19 -0
- data/public/bower_components/core-iconset-svg/README.md +4 -0
- data/public/bower_components/core-iconset-svg/bower.json +9 -0
- data/public/bower_components/core-iconset-svg/core-iconset-svg.html +168 -0
- data/public/bower_components/core-iconset-svg/demo.html +66 -0
- data/public/bower_components/core-iconset-svg/index.html +22 -0
- data/public/bower_components/core-iconset-svg/svg-sample-icons.html +68 -0
- data/public/bower_components/core-input/.bower.json +20 -0
- data/public/bower_components/core-input/README.md +2 -0
- data/public/bower_components/core-input/bower.json +10 -0
- data/public/bower_components/core-input/core-input.css +41 -0
- data/public/bower_components/core-input/core-input.html +148 -0
- data/public/bower_components/core-input/demo.html +62 -0
- data/public/bower_components/core-input/index.html +22 -0
- data/public/bower_components/core-input/metadata.html +23 -0
- data/public/bower_components/core-input/test/a11y.html +55 -0
- data/public/bower_components/core-input/test/basic.html +60 -0
- data/public/bower_components/core-input/test/index.html +25 -0
- data/public/bower_components/core-item/.bower.json +19 -0
- data/public/bower_components/core-item/README.md +4 -0
- data/public/bower_components/core-item/bower.json +9 -0
- data/public/bower_components/core-item/core-item.css +45 -0
- data/public/bower_components/core-item/core-item.html +73 -0
- data/public/bower_components/core-item/demo.html +92 -0
- data/public/bower_components/core-item/index.html +22 -0
- data/public/bower_components/core-item/metadata.html +24 -0
- data/public/bower_components/core-media-query/.bower.json +18 -0
- data/public/bower_components/core-media-query/README.md +4 -0
- data/public/bower_components/core-media-query/bower.json +8 -0
- data/public/bower_components/core-media-query/core-media-query.html +87 -0
- data/public/bower_components/core-media-query/demo.html +44 -0
- data/public/bower_components/core-media-query/index.html +22 -0
- data/public/bower_components/core-menu/.bower.json +22 -0
- data/public/bower_components/core-menu/README.md +4 -0
- data/public/bower_components/core-menu/bower.json +11 -0
- data/public/bower_components/core-menu/core-menu.css +18 -0
- data/public/bower_components/core-menu/core-menu.html +73 -0
- data/public/bower_components/core-menu/core-submenu.css +43 -0
- data/public/bower_components/core-menu/core-submenu.html +126 -0
- data/public/bower_components/core-menu/demo.html +101 -0
- data/public/bower_components/core-menu/index.html +22 -0
- data/public/bower_components/core-menu/metadata.html +62 -0
- data/public/bower_components/core-meta/.bower.json +18 -0
- data/public/bower_components/core-meta/README.md +4 -0
- data/public/bower_components/core-meta/bower.json +8 -0
- data/public/bower_components/core-meta/core-meta.html +145 -0
- data/public/bower_components/core-meta/demo.html +58 -0
- data/public/bower_components/core-meta/index.html +22 -0
- data/public/bower_components/core-overlay/.bower.json +20 -0
- data/public/bower_components/core-overlay/README.md +4 -0
- data/public/bower_components/core-overlay/bower.json +10 -0
- data/public/bower_components/core-overlay/core-key-helper.html +22 -0
- data/public/bower_components/core-overlay/core-overlay-layer.html +116 -0
- data/public/bower_components/core-overlay/core-overlay.html +776 -0
- data/public/bower_components/core-overlay/demo.html +155 -0
- data/public/bower_components/core-overlay/gulpfile.js +2 -0
- data/public/bower_components/core-overlay/index.html +22 -0
- data/public/bower_components/core-overlay/tests/html/core-overlay-basic.html +127 -0
- data/public/bower_components/core-overlay/tests/html/core-overlay-positioning-margin.html +153 -0
- data/public/bower_components/core-overlay/tests/html/core-overlay-positioning.html +167 -0
- data/public/bower_components/core-overlay/tests/html/core-overlay-quick-close.html +45 -0
- data/public/bower_components/core-overlay/tests/html/core-overlay-scroll.html +130 -0
- data/public/bower_components/core-overlay/tests/js/htmltests.js +7 -0
- data/public/bower_components/core-overlay/tests/runner.html +14 -0
- data/public/bower_components/core-overlay/tests/tests.json +6 -0
- data/public/bower_components/core-pages/.bower.json +19 -0
- data/public/bower_components/core-pages/README.md +4 -0
- data/public/bower_components/core-pages/bower.json +8 -0
- data/public/bower_components/core-pages/core-pages.css +30 -0
- data/public/bower_components/core-pages/core-pages.html +44 -0
- data/public/bower_components/core-pages/demo.html +136 -0
- data/public/bower_components/core-pages/index.html +22 -0
- data/public/bower_components/core-pages/metadata.html +25 -0
- data/public/bower_components/core-resizable/.bower.json +18 -0
- data/public/bower_components/core-resizable/README.md +4 -0
- data/public/bower_components/core-resizable/bower.json +8 -0
- data/public/bower_components/core-resizable/core-resizable.html +248 -0
- data/public/bower_components/core-resizable/index.html +22 -0
- data/public/bower_components/core-resizable/test/basic.html +504 -0
- data/public/bower_components/core-resizable/test/index.html +16 -0
- data/public/bower_components/core-resizable/test/test-elements.html +66 -0
- data/public/bower_components/core-scaffold/.bower.json +22 -0
- data/public/bower_components/core-scaffold/README.md +4 -0
- data/public/bower_components/core-scaffold/bower.json +11 -0
- data/public/bower_components/core-scaffold/core-scaffold.html +252 -0
- data/public/bower_components/core-scaffold/demo.html +82 -0
- data/public/bower_components/core-scaffold/index.html +22 -0
- data/public/bower_components/core-scaffold/metadata.html +52 -0
- data/public/bower_components/core-selection/.bower.json +21 -0
- data/public/bower_components/core-selection/README.md +4 -0
- data/public/bower_components/core-selection/bower.json +11 -0
- data/public/bower_components/core-selection/core-selection.html +149 -0
- data/public/bower_components/core-selection/demo.html +59 -0
- data/public/bower_components/core-selection/index.html +22 -0
- data/public/bower_components/core-selection/test/basic.html +62 -0
- data/public/bower_components/core-selection/test/index.html +25 -0
- data/public/bower_components/core-selection/test/multi.html +63 -0
- data/public/bower_components/core-selector/.bower.json +22 -0
- data/public/bower_components/core-selector/.gitignore +2 -0
- data/public/bower_components/core-selector/README.md +4 -0
- data/public/bower_components/core-selector/bower.json +12 -0
- data/public/bower_components/core-selector/core-selector.html +548 -0
- data/public/bower_components/core-selector/demo.html +106 -0
- data/public/bower_components/core-selector/index.html +22 -0
- data/public/bower_components/core-selector/metadata.html +20 -0
- data/public/bower_components/core-selector/test/activate-event.html +63 -0
- data/public/bower_components/core-selector/test/basic.html +126 -0
- data/public/bower_components/core-selector/test/content.html +101 -0
- data/public/bower_components/core-selector/test/index.html +30 -0
- data/public/bower_components/core-selector/test/multi.html +115 -0
- data/public/bower_components/core-selector/test/next-previous.html +113 -0
- data/public/bower_components/core-selector/test/selected-attr-prop.html +62 -0
- data/public/bower_components/core-selector/test/template-repeat.html +63 -0
- data/public/bower_components/core-style/.bower.json +18 -0
- data/public/bower_components/core-style/README.md +4 -0
- data/public/bower_components/core-style/bower.json +8 -0
- data/public/bower_components/core-style/core-style.html +387 -0
- data/public/bower_components/core-style/demo.html +58 -0
- data/public/bower_components/core-style/elements.html +55 -0
- data/public/bower_components/core-style/index.html +22 -0
- data/public/bower_components/core-style/my-theme.html +73 -0
- data/public/bower_components/core-toolbar/.bower.json +19 -0
- data/public/bower_components/core-toolbar/README.md +4 -0
- data/public/bower_components/core-toolbar/bower.json +9 -0
- data/public/bower_components/core-toolbar/core-toolbar.css +117 -0
- data/public/bower_components/core-toolbar/core-toolbar.html +155 -0
- data/public/bower_components/core-toolbar/demo.html +119 -0
- data/public/bower_components/core-toolbar/index.html +22 -0
- data/public/bower_components/core-toolbar/metadata.html +28 -0
- data/public/bower_components/core-toolbar/test/basic.html +86 -0
- data/public/bower_components/core-toolbar/test/index.html +24 -0
- data/public/bower_components/core-transition/.bower.json +19 -0
- data/public/bower_components/core-transition/README.md +2 -0
- data/public/bower_components/core-transition/bower.json +9 -0
- data/public/bower_components/core-transition/core-transition-css.html +220 -0
- data/public/bower_components/core-transition/core-transition-overlay.css +46 -0
- data/public/bower_components/core-transition/core-transition.html +140 -0
- data/public/bower_components/core-transition/demo.html +87 -0
- data/public/bower_components/core-transition/index.html +22 -0
- data/public/bower_components/font-roboto/.bower.json +15 -0
- data/public/bower_components/font-roboto/roboto.html +9 -0
- data/public/bower_components/paper-button/.bower.json +27 -0
- data/public/bower_components/paper-button/README.md +4 -0
- data/public/bower_components/paper-button/bower.json +16 -0
- data/public/bower_components/paper-button/demo.html +157 -0
- data/public/bower_components/paper-button/index.html +22 -0
- data/public/bower_components/paper-button/metadata.html +17 -0
- data/public/bower_components/paper-button/paper-button-base.html +164 -0
- data/public/bower_components/paper-button/paper-button.html +197 -0
- data/public/bower_components/paper-button/test/index.html +24 -0
- data/public/bower_components/paper-button/test/paper-button.html +112 -0
- data/public/bower_components/paper-icon-button/.bower.json +25 -0
- data/public/bower_components/paper-icon-button/README.md +4 -0
- data/public/bower_components/paper-icon-button/bower.json +15 -0
- data/public/bower_components/paper-icon-button/demo.html +150 -0
- data/public/bower_components/paper-icon-button/index.html +22 -0
- data/public/bower_components/paper-icon-button/metadata.html +21 -0
- data/public/bower_components/paper-icon-button/paper-icon-button.html +154 -0
- data/public/bower_components/paper-icon-button/test/a11y.html +68 -0
- data/public/bower_components/paper-icon-button/test/basic.html +50 -0
- data/public/bower_components/paper-icon-button/test/index.html +25 -0
- data/public/bower_components/paper-input/.bower.json +26 -0
- data/public/bower_components/paper-input/.gitignore +1 -0
- data/public/bower_components/paper-input/README.md +4 -0
- data/public/bower_components/paper-input/bower.json +15 -0
- data/public/bower_components/paper-input/demo.html +236 -0
- data/public/bower_components/paper-input/index.html +22 -0
- data/public/bower_components/paper-input/metadata.html +20 -0
- data/public/bower_components/paper-input/paper-autogrow-textarea.html +162 -0
- data/public/bower_components/paper-input/paper-char-counter.html +121 -0
- data/public/bower_components/paper-input/paper-input-decorator.css +132 -0
- data/public/bower_components/paper-input/paper-input-decorator.html +547 -0
- data/public/bower_components/paper-input/paper-input.html +145 -0
- data/public/bower_components/paper-input/test/index.html +26 -0
- data/public/bower_components/paper-input/test/paper-autogrow-textarea.html +146 -0
- data/public/bower_components/paper-input/test/paper-input-decorator.html +240 -0
- data/public/bower_components/paper-input/test/paper-input.html +68 -0
- data/public/bower_components/paper-input/test/util.js +15 -0
- data/public/bower_components/paper-radio-button/.bower.json +22 -0
- data/public/bower_components/paper-radio-button/README.md +4 -0
- data/public/bower_components/paper-radio-button/bower.json +12 -0
- data/public/bower_components/paper-radio-button/demo.html +84 -0
- data/public/bower_components/paper-radio-button/index.html +22 -0
- data/public/bower_components/paper-radio-button/metadata.html +17 -0
- data/public/bower_components/paper-radio-button/paper-radio-button.css +108 -0
- data/public/bower_components/paper-radio-button/paper-radio-button.html +166 -0
- data/public/bower_components/paper-ripple/.bower.json +23 -0
- data/public/bower_components/paper-ripple/README.md +4 -0
- data/public/bower_components/paper-ripple/bower.json +13 -0
- data/public/bower_components/paper-ripple/demo.html +414 -0
- data/public/bower_components/paper-ripple/index.html +22 -0
- data/public/bower_components/paper-ripple/metadata.html +20 -0
- data/public/bower_components/paper-ripple/paper-ripple.html +477 -0
- data/public/bower_components/paper-ripple/test/index.html +24 -0
- data/public/bower_components/paper-ripple/test/position.html +109 -0
- data/public/bower_components/paper-shadow/.bower.json +22 -0
- data/public/bower_components/paper-shadow/README.md +4 -0
- data/public/bower_components/paper-shadow/bower.json +11 -0
- data/public/bower_components/paper-shadow/demo.html +134 -0
- data/public/bower_components/paper-shadow/index.html +22 -0
- data/public/bower_components/paper-shadow/metadata.html +17 -0
- data/public/bower_components/paper-shadow/paper-shadow.css +66 -0
- data/public/bower_components/paper-shadow/paper-shadow.html +86 -0
- data/public/bower_components/paper-shadow/test/basic.html +62 -0
- data/public/bower_components/paper-shadow/test/index.html +24 -0
- data/public/bower_components/paper-tabs/.bower.json +26 -0
- data/public/bower_components/paper-tabs/README.md +4 -0
- data/public/bower_components/paper-tabs/bower.json +15 -0
- data/public/bower_components/paper-tabs/demo.html +242 -0
- data/public/bower_components/paper-tabs/index.html +22 -0
- data/public/bower_components/paper-tabs/metadata.html +58 -0
- data/public/bower_components/paper-tabs/paper-tab.css +59 -0
- data/public/bower_components/paper-tabs/paper-tab.html +82 -0
- data/public/bower_components/paper-tabs/paper-tabs.css +80 -0
- data/public/bower_components/paper-tabs/paper-tabs.html +353 -0
- data/public/bower_components/paper-toast/.bower.json +22 -0
- data/public/bower_components/paper-toast/README.md +4 -0
- data/public/bower_components/paper-toast/bower.json +11 -0
- data/public/bower_components/paper-toast/demo.html +63 -0
- data/public/bower_components/paper-toast/index.html +22 -0
- data/public/bower_components/paper-toast/metadata.html +20 -0
- data/public/bower_components/paper-toast/paper-toast.css +80 -0
- data/public/bower_components/paper-toast/paper-toast.html +296 -0
- data/public/bower_components/paper-toggle-button/.bower.json +20 -0
- data/public/bower_components/paper-toggle-button/README.md +4 -0
- data/public/bower_components/paper-toggle-button/bower.json +9 -0
- data/public/bower_components/paper-toggle-button/demo.html +97 -0
- data/public/bower_components/paper-toggle-button/index.html +22 -0
- data/public/bower_components/paper-toggle-button/metadata.html +17 -0
- data/public/bower_components/paper-toggle-button/paper-toggle-button.css +95 -0
- data/public/bower_components/paper-toggle-button/paper-toggle-button.html +179 -0
- data/public/bower_components/polymer/.bower.json +32 -0
- data/public/bower_components/polymer/README.md +21 -0
- data/public/bower_components/polymer/bower.json +23 -0
- data/public/bower_components/polymer/build.log +26 -0
- data/public/bower_components/polymer/layout.html +286 -0
- data/public/bower_components/polymer/polymer.html +12 -0
- data/public/bower_components/polymer/polymer.js +11859 -0
- data/public/bower_components/polymer/polymer.min.js +14 -0
- data/public/bower_components/webcomponentsjs/.bower.json +23 -0
- data/public/bower_components/webcomponentsjs/CustomElements.js +634 -0
- data/public/bower_components/webcomponentsjs/CustomElements.min.js +11 -0
- data/public/bower_components/webcomponentsjs/HTMLImports.js +764 -0
- data/public/bower_components/webcomponentsjs/HTMLImports.min.js +11 -0
- data/public/bower_components/webcomponentsjs/README.md +73 -0
- data/public/bower_components/webcomponentsjs/ShadowDOM.js +4277 -0
- data/public/bower_components/webcomponentsjs/ShadowDOM.min.js +13 -0
- data/public/bower_components/webcomponentsjs/bower.json +14 -0
- data/public/bower_components/webcomponentsjs/build.log +31 -0
- data/public/bower_components/webcomponentsjs/package.json +31 -0
- data/public/bower_components/webcomponentsjs/webcomponents-lite.js +1728 -0
- data/public/bower_components/webcomponentsjs/webcomponents-lite.min.js +11 -0
- data/public/bower_components/webcomponentsjs/webcomponents.js +6114 -0
- data/public/bower_components/webcomponentsjs/webcomponents.min.js +14 -0
- data/public/css/main.css +41 -0
- data/public/elements/ec-dashboard/ec-dashboard.html +269 -0
- data/public/polymer-loader.html +24 -0
- data/public/polymer-loader.vulcanized.html +19 -0
- data/spec/ec/ec_dashboard_spec.rb +78 -0
- data/spec/ec/ec_spec.rb +78 -0
- data/spec/spec_helper.rb +27 -0
- data/views/index.html +88 -0
- 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
|
+
}
|