summaryrefslogtreecommitdiffstats
path: root/third_party/webkit/PerformanceTests/Speedometer/resources/todomvc/labs/architecture-examples/react/js/footer.jsx
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/webkit/PerformanceTests/Speedometer/resources/todomvc/labs/architecture-examples/react/js/footer.jsx')
-rw-r--r--third_party/webkit/PerformanceTests/Speedometer/resources/todomvc/labs/architecture-examples/react/js/footer.jsx58
1 files changed, 58 insertions, 0 deletions
diff --git a/third_party/webkit/PerformanceTests/Speedometer/resources/todomvc/labs/architecture-examples/react/js/footer.jsx b/third_party/webkit/PerformanceTests/Speedometer/resources/todomvc/labs/architecture-examples/react/js/footer.jsx
new file mode 100644
index 0000000000..5a896553da
--- /dev/null
+++ b/third_party/webkit/PerformanceTests/Speedometer/resources/todomvc/labs/architecture-examples/react/js/footer.jsx
@@ -0,0 +1,58 @@
+/**
+ * @jsx React.DOM
+ */
+/*jshint quotmark:false */
+/*jshint white:false */
+/*jshint trailing:false */
+/*jshint newcap:false */
+/*global React, ALL_TODOS, ACTIVE_TODOS, Utils, COMPLETED_TODOS */
+(function (window) {
+ 'use strict';
+
+ window.TodoFooter = React.createClass({
+ render: function () {
+ var activeTodoWord = Utils.pluralize(this.props.count, 'item');
+ var clearButton = null;
+
+ if (this.props.completedCount > 0) {
+ clearButton = (
+ <button
+ id="clear-completed"
+ onClick={this.props.onClearCompleted}>
+ {''}Clear completed ({this.props.completedCount}){''}
+ </button>
+ );
+ }
+
+ var show = {
+ ALL_TODOS: '',
+ ACTIVE_TODOS: '',
+ COMPLETED_TODOS: ''
+ };
+ show[this.props.nowShowing] = 'selected';
+
+ return (
+ <footer id="footer">
+ <span id="todo-count">
+ <strong>{this.props.count}</strong>
+ {' '}{activeTodoWord}{' '}left{''}
+ </span>
+ <ul id="filters">
+ <li>
+ <a href="#/" class={show[ALL_TODOS]}>All</a>
+ </li>
+ {' '}
+ <li>
+ <a href="#/active" class={show[ACTIVE_TODOS]}>Active</a>
+ </li>
+ {' '}
+ <li>
+ <a href="#/completed" class={show[COMPLETED_TODOS]}>Completed</a>
+ </li>
+ </ul>
+ {clearButton}
+ </footer>
+ );
+ }
+ });
+})(window);