fauxton commit: updated refs/heads/master to c0c0c1c

2016-06-06 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master eb5fae626 -> c0c0c1c54


only set query options tray visibility on initialize


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/c0c0c1c5
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/c0c0c1c5
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/c0c0c1c5

Branch: refs/heads/master
Commit: c0c0c1c54d39a3d2b81d42df388aa2e0d1f54025
Parents: eb5fae6
Author: Ben Keen 
Authored: Mon Jun 6 14:41:23 2016 +
Committer: Ben Keen 
Committed: Mon Jun 6 14:41:23 2016 +

--
 app/addons/documents/queryoptions/stores.js | 6 ++
 1 file changed, 2 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/c0c0c1c5/app/addons/documents/queryoptions/stores.js
--
diff --git a/app/addons/documents/queryoptions/stores.js 
b/app/addons/documents/queryoptions/stores.js
index 42e9ef2..19834e3 100644
--- a/app/addons/documents/queryoptions/stores.js
+++ b/app/addons/documents/queryoptions/stores.js
@@ -19,6 +19,7 @@ const Stores = {};
 Stores.QueryOptionsStore = FauxtonAPI.Store.extend({
 
   initialize () {
+this._trayVisible = false;
 this.reset();
   },
 
@@ -29,11 +30,8 @@ Stores.QueryOptionsStore = FauxtonAPI.Store.extend({
 this._showBetweenKeys = false;
 this._includeDocs = false;
 this._betweenKeys = {
-  include: true,
+  include: true
 };
-
-this._trayVisible = false;
-
 this._byKeys = '';
 this._descending = false;
 this._skip = '';



fauxton commit: updated refs/heads/master to 1ff9e0d

2016-06-01 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master 870ab72f0 -> 1ff9e0dbd


Style fix for menu dropdown in left header

This fixes the styles for the ellipsis and the placement of the
dropdown that appears when you click it.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/1ff9e0db
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/1ff9e0db
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/1ff9e0db

Branch: refs/heads/master
Commit: 1ff9e0dbdcf838c6759aa2660fa13f155bc91853
Parents: 870ab72
Author: Ben Keen 
Authored: Tue May 31 13:40:19 2016 +
Committer: Ben Keen 
Committed: Wed Jun 1 13:08:24 2016 +

--
 .../components/assets/less/components.less  |  1 +
 .../components/assets/less/left-header.less | 26 
 2 files changed, 27 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/1ff9e0db/app/addons/components/assets/less/components.less
--
diff --git a/app/addons/components/assets/less/components.less 
b/app/addons/components/assets/less/components.less
index 1cfb2ae..0600d39 100644
--- a/app/addons/components/assets/less/components.less
+++ b/app/addons/components/assets/less/components.less
@@ -21,3 +21,4 @@
 @import "badges.less";
 @import "modals.less";
 @import "tab-element.less";
+@import "left-header.less";

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/1ff9e0db/app/addons/components/assets/less/left-header.less
--
diff --git a/app/addons/components/assets/less/left-header.less 
b/app/addons/components/assets/less/left-header.less
new file mode 100644
index 000..16bb8ea
--- /dev/null
+++ b/app/addons/components/assets/less/left-header.less
@@ -0,0 +1,26 @@
+@import "../../../../../assets/less/variables.less";
+
+.header-left #header-dropdown-menu {
+  top: 0;
+  height: 64px;
+  border-left: 1px solid #cc;
+  padding: 20px 0;
+
+  .dropdown {
+font-size: 20px;
+.dropdown-toggle {
+  padding: 10px 16px;
+  color: #55;
+  &:before {
+width: 10px;
+  }
+  &:hover {
+color: @red;
+  }
+}
+  }
+  .dropdown-menu {
+left: -115px;
+top: 34px;
+  }
+}



fauxton commit: updated refs/heads/master to 2ac9c93

2016-05-31 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master a8561349d -> 2ac9c9336


Style fix for doc ID block

When you typed in something in the document ID typeahead field
it would look a little odd if there were no results (the grey
block would be fixed at 291px). This changes that to a max height
so it only ever appears as tall as it needs to be (and looks nice
when you're typing and honing in on a doc).

It also adjusts the width to fill as much room as is available
when used in the header.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/2ac9c933
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/2ac9c933
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/2ac9c933

Branch: refs/heads/master
Commit: 2ac9c9336ff8c0f9d321303f49a93556ee9dd1f1
Parents: a856134
Author: Ben Keen 
Authored: Tue May 31 13:53:37 2016 +
Committer: Ben Keen 
Committed: Tue May 31 14:43:24 2016 +

--
 app/addons/documents/assets/less/jumptodoc.less | 17 +
 app/addons/documents/jumptodoc.react.jsx|  2 +-
 assets/less/fauxton.less|  2 +-
 3 files changed, 19 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/2ac9c933/app/addons/documents/assets/less/jumptodoc.less
--
diff --git a/app/addons/documents/assets/less/jumptodoc.less 
b/app/addons/documents/assets/less/jumptodoc.less
index 6302ec7..778b8ab 100644
--- a/app/addons/documents/assets/less/jumptodoc.less
+++ b/app/addons/documents/assets/less/jumptodoc.less
@@ -20,3 +20,20 @@
   overflow: visible;
   position: absolute;
 }
+
+#jump-to-doc {
+  .Select-control, .Select-menu-outer {
+width: 210px;
+  }
+}
+
+/* this allows the jump-to-doc results expand as much as need be when the 
component is used in the header */
+#right-header #jump-to-doc .Select-menu-outer {
+  &>div>div {
+padding-right: 25px; /* prevents overlapping of auto-generated scrollbar */
+  }
+  min-width: 210px;
+  max-width: 450px;
+  width: auto;
+  overflow: hidden; /* for 450px max widths, enough is visible not to require 
scrolling */
+}

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/2ac9c933/app/addons/documents/jumptodoc.react.jsx
--
diff --git a/app/addons/documents/jumptodoc.react.jsx 
b/app/addons/documents/jumptodoc.react.jsx
index 64b2691..d0ef5e4 100644
--- a/app/addons/documents/jumptodoc.react.jsx
+++ b/app/addons/documents/jumptodoc.react.jsx
@@ -29,7 +29,7 @@ const JumpToDoc = ({database, allDocs}) => {
{

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/2ac9c933/assets/less/fauxton.less
--
diff --git a/assets/less/fauxton.less b/assets/less/fauxton.less
index 439a1a3..63cf183 100644
--- a/assets/less/fauxton.less
+++ b/assets/less/fauxton.less
@@ -528,7 +528,7 @@ body #dashboard .flex-body#breadcrumbs {
 }
 
 .Select .Select-menu {
-  min-height: 291px;
+  max-height: 291px;
   background-color: #33;
 }
 



fauxton commit: updated refs/heads/master to a856134

2016-05-31 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master 0ca35da7c -> a8561349d


Update the Changes page

- removes the tab
- updates to ES6


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/a8561349
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/a8561349
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/a8561349

Branch: refs/heads/master
Commit: a8561349d892d0c80b19744090951de45886b13b
Parents: 0ca35da
Author: Ben Keen 
Authored: Thu May 19 13:00:41 2016 -0700
Committer: Ben Keen 
Committed: Tue May 31 11:50:25 2016 +

--
 app/addons/components/assets/less/badges.less   |   8 +-
 .../components/react-components.react.jsx   |  28 +-
 app/addons/documents/assets/less/changes.less   |  51 +-
 app/addons/documents/changes/actions.js |  24 +-
 app/addons/documents/changes/actiontypes.js |   1 -
 .../documents/changes/components.react.jsx  | 468 ---
 app/addons/documents/changes/stores.js  |  24 +-
 .../tests/changes.componentsSpec.react.jsx  |  74 +--
 .../changes/tests/changes.storesSpec.js |  13 +-
 app/addons/documents/routes-documents.js|   4 +-
 .../documents/tests/nightwatch/changes.js   |   1 -
 .../documents/tests/nightwatch/changesFilter.js |   1 -
 12 files changed, 291 insertions(+), 406 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/a8561349/app/addons/components/assets/less/badges.less
--
diff --git a/app/addons/components/assets/less/badges.less 
b/app/addons/components/assets/less/badges.less
index 0712417..a049758 100644
--- a/app/addons/components/assets/less/badges.less
+++ b/app/addons/components/assets/less/badges.less
@@ -9,11 +9,9 @@
 // WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
 // License for the specific language governing permissions and limitations 
under
 // the License.
-
-.component-badgelist {
-  ul {
-margin-left: 0;
-  }
+ul.component-badgelist {
+  margin: 0;
+  display: inline-block;
   li {
 list-style-type: none;
 float: left;

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/a8561349/app/addons/components/react-components.react.jsx
--
diff --git a/app/addons/components/react-components.react.jsx 
b/app/addons/components/react-components.react.jsx
index f963dbb..34ec668 100644
--- a/app/addons/components/react-components.react.jsx
+++ b/app/addons/components/react-components.react.jsx
@@ -85,7 +85,7 @@ var Badge = React.createClass({
 {this.props.label}
 
   
@@ -111,21 +111,17 @@ var ToggleHeaderButton = React.createClass({
   },
 
   render: function () {
-var iconClasses = this.props.iconDefaultClass + ' ' + this.props.fonticon 
+ ' ' + this.props.innerClasses,
-containerClasses = 'button ' + this.props.containerClasses;
-
-if (this.props.selected) {
-  containerClasses = containerClasses + ' 
js-headerbar-togglebutton-selected';
-}
+const { iconDefaultClass, fonticon, innerClasses, selected, 
containerClasses, title, disabled, text, toggleCallback } = this.props;
+const selectedBtnClass = (selected) ? 'js-headerbar-togglebutton-selected' 
: '';
 
 return (
   
-{this.props.text}
+{text}
   
 );
   }
@@ -1219,9 +1215,9 @@ var MenuDropDown = React.createClass({
 return (
   
 
+  data-toggle="dropdown"
+  href="#"
+  data-bypass="true">
 
   {this.createSection()}
 
@@ -1571,7 +1567,7 @@ const TabElement = ({selected, text, onChange, 
iconClass}) => {
 checked={selected}
 onChange={onChange} />
 
-{text}
+  {text}
 
   
 

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/a8561349/app/addons/documents/assets/less/changes.less
--
diff --git a/app/addons/documents/assets/less/changes.less 
b/app/addons/documents/assets/less/changes.less
index a42a26d..c86e016 100644
--- a/app/addons/documents/assets/less/changes.less
+++ b/app/addons/documents/assets/less/changes.less
@@ -38,20 +38,56 @@
   .span2 {
 font-weight: bold;
   }
+  .clipboard-copy-element {
+color: #66;
+  }
 }
 
 .changes-header {
-  padding: 30px;
-  height: 160px;
+  text-align: center;
+  padding: 26px 20px 0;
   border-bottom: 1px solid #99;
   .label {
 float: left;
 margin-right: 5px;
   }
-  .js-filter-form {
-padding-right: 15px;
+  fieldset {
+text-align: left;
+display: inline-block;
+  

fauxton commit: updated refs/heads/master to 30fdd49

2016-05-19 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master 05183749e -> 30fdd4958


Deleting cors domain moved to modal

This is part of the death-to-all-window.confirms that Justin's
leading. The delete origin is now a modal.

Two related things:
- The cors page wasn't scrolling, hence the addition of the flex-body
class on the page element.
- the ConfirmationModal component now lets you pass in a class
for the main button to change the style.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/30fdd495
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/30fdd495
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/30fdd495

Branch: refs/heads/master
Commit: 30fdd4958b734d1b727abe1ddebc1efd216abb5d
Parents: 0518374
Author: Ben Keen 
Authored: Thu Mar 31 14:36:57 2016 -0700
Committer: Ben Keen 
Committed: Thu May 19 08:20:28 2016 -0700

--
 .../components/react-components.react.jsx   |  15 +-
 app/addons/cors/actions.js  | 318 ++-
 app/addons/cors/actiontypes.js  |   4 +-
 app/addons/cors/components.react.jsx|  78 ++---
 app/addons/cors/stores.js   |  42 ++-
 app/addons/cors/tests/componentsSpec.react.jsx  |  24 +-
 app/addons/fauxton/components.react.jsx |   1 +
 7 files changed, 263 insertions(+), 219 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/30fdd495/app/addons/components/react-components.react.jsx
--
diff --git a/app/addons/components/react-components.react.jsx 
b/app/addons/components/react-components.react.jsx
index 3f46b37..7ec7f8a 100644
--- a/app/addons/components/react-components.react.jsx
+++ b/app/addons/components/react-components.react.jsx
@@ -1125,6 +1125,7 @@ define([
   style: React.PropTypes.object,
   buttonType: React.PropTypes.string,
   'data-id': React.PropTypes.string,
+  onClick: React.PropTypes.func
 },
 
 getDefaultProps: function () {
@@ -1133,7 +1134,8 @@ define([
 customIcon: 'fonticon-ok-circled',
 buttonType: 'btn-success',
 style: {},
-'data-id': null
+'data-id': null,
+onClick: function () { }
   };
 },
 
@@ -1147,17 +1149,18 @@ define([
 },
 
 render: function () {
+  const { onClick, buttonType, id, style, text } = this.props;
   return (
 
   {this.getIcon()}
-  {this.props.text}
+  {text}
 
   );
 }

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/30fdd495/app/addons/cors/actions.js
--
diff --git a/app/addons/cors/actions.js b/app/addons/cors/actions.js
index 0202a33..7773bd5 100644
--- a/app/addons/cors/actions.js
+++ b/app/addons/cors/actions.js
@@ -13,170 +13,186 @@ define([
   '../../core/api',
   './actiontypes',
   './resources'
-  ], function (FauxtonAPI, ActionTypes, Resources) {
-return {
-  fetchAndEditCors: function (node) {
-var cors = new Resources.Config({node: node});
-var httpd = new Resources.Httpd({node: node});
-
-FauxtonAPI.when([cors.fetch(), httpd.fetch()]).then(function () {
-  this.editCors({
-origins: cors.get('origins'),
-isEnabled: httpd.corsEnabled(),
-node: node
-  });
-}.bind(this));
-  },
-
-  editCors: function (options) {
-FauxtonAPI.dispatch({
-  type: ActionTypes.EDIT_CORS,
-  options: options
-});
-  },
-
-  toggleEnableCors: function () {
-FauxtonAPI.dispatch({
-  type: ActionTypes.TOGGLE_ENABLE_CORS
-});
-  },
-
-  addOrigin: function (origin) {
-FauxtonAPI.dispatch({
-  type: ActionTypes.CORS_ADD_ORIGIN,
-  origin: origin
-});
-  },
-
-  originChange: function (isAllOrigins) {
-FauxtonAPI.dispatch({
-  type: ActionTypes.CORS_IS_ALL_ORIGINS,
-  isAllOrigins: isAllOrigins
-});
-  },
+], function (FauxtonAPI, ActionTypes, Resources) {
 
-  deleteOrigin: function (origin) {
-FauxtonAPI.dispatch({
-  type: ActionTypes.CORS_DELETE_ORIGIN,
-  origin: origin
-});
-  },
-
-  updateOrigin: function (updatedOrigin, originalOrigin) {
-FauxtonAPI.dispatch({
-  type: ActionTypes.CORS_UPDATE_ORIGIN,
-  updatedOrigin: updatedOrigin,
-  originalOrigin: originalOrigin
-});
-  },
-
-  methodChange: function (httpMethod) {
-FauxtonAPI.dispatch({
-  type: ActionTypes.CORS_METHOD_CHANGE,
- 

fauxton commit: updated refs/heads/master to 0518374

2016-05-18 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master 5b718dd71 -> 05183749e


Notifications Update

This updates the global notifications to use the same store
as the notification panel and drop Backbone.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/05183749
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/05183749
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/05183749

Branch: refs/heads/master
Commit: 05183749e53f173b8f2fff52c9c2d93a053c3bca
Parents: 5b718dd
Author: Ben Keen 
Authored: Wed Mar 30 14:35:50 2016 -0700
Committer: Ben Keen 
Committed: Wed May 18 08:50:55 2016 -0700

--
 .../databases/tests/nightwatch/zeroclipboard.js |   3 +-
 .../tests/nightwatch/uploadAttachment.js|   4 +-
 app/addons/fauxton/base.js  | 111 +---
 app/addons/fauxton/notifications/actions.js |  27 +-
 app/addons/fauxton/notifications/actiontypes.js |   5 +-
 .../notifications/notifications.react.jsx   | 282 ---
 app/addons/fauxton/notifications/stores.js  |  46 +++
 .../fauxton/notifications/tests/actionsSpec.jsx |  58 
 .../tests/componentsSpec.react.jsx  | 115 +---
 app/addons/fauxton/templates/notification.html  |  19 --
 app/addons/fauxton/tests/baseSpec.js|  62 
 assets/index.underscore |   3 +-
 assets/less/fauxton.less|   3 +-
 assets/less/templates.less  |   7 +-
 package.json|   1 +
 .../custom-commands/closeNotification.js|   2 +-
 16 files changed, 464 insertions(+), 284 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/05183749/app/addons/databases/tests/nightwatch/zeroclipboard.js
--
diff --git a/app/addons/databases/tests/nightwatch/zeroclipboard.js 
b/app/addons/databases/tests/nightwatch/zeroclipboard.js
index 708bb64..cd83582 100644
--- a/app/addons/databases/tests/nightwatch/zeroclipboard.js
+++ b/app/addons/databases/tests/nightwatch/zeroclipboard.js
@@ -24,10 +24,9 @@ module.exports = {
 }
 
 client
+  .deleteDatabase(newDatabaseName)
   .loginToGUI()
-  .deleteDatabase(newDatabaseName) //need to delete the automatic database 
'fauxton-selenium-tests' that has been set up before each test
   .url(baseUrl)
-
   .clickWhenVisible('.control-toggle-api-url')
   .pause(1000) // needed for reliability. The tray slides in from the top 
so the pos of the copy button changes
   .waitForElementVisible('.copy-button', waitTime, false)

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/05183749/app/addons/documents/tests/nightwatch/uploadAttachment.js
--
diff --git a/app/addons/documents/tests/nightwatch/uploadAttachment.js 
b/app/addons/documents/tests/nightwatch/uploadAttachment.js
index 4005984..b534823 100644
--- a/app/addons/documents/tests/nightwatch/uploadAttachment.js
+++ b/app/addons/documents/tests/nightwatch/uploadAttachment.js
@@ -27,8 +27,8 @@ module.exports = {
   .waitForElementVisible('input[name="_attachments"]', waitTime)
   .setValue('input[name="_attachments"]', 
require('path').resolve(__dirname + '/uploadAttachment.js'))
   .clickWhenVisible('#upload-btn')
-  .waitForElementVisible('#global-notification-id', waitTime, false)
-  .getText('#global-notification-id', function (result) {
+  .waitForElementVisible('.global-notification', waitTime, false)
+  .getText('.global-notification', function (result) {
 var data = result.value;
 this.verify.ok(data, 'Document saved successfully.');
   })

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/05183749/app/addons/fauxton/base.js
--
diff --git a/app/addons/fauxton/base.js b/app/addons/fauxton/base.js
index 83fb727..7d22bb1 100644
--- a/app/addons/fauxton/base.js
+++ b/app/addons/fauxton/base.js
@@ -29,17 +29,14 @@ function (app, FauxtonAPI, Components, 
NotificationComponents, Actions, NavbarRe
   var Fauxton = FauxtonAPI.addon();
   FauxtonAPI.addNotification = function (options) {
 options = _.extend({
-  msg: "Notification Event Triggered!",
-  type: "info",
-  selector: "#global-notifications",
-  escape: true
+  msg: 'Notification Event Triggered!',
+  type: 'info',
+  escape: true,
+  clear: false
 }, options);
 
 // log all notifications in a store
 Actions.addNotification(options);
-
-var view = new Fauxton.Notification(options);
-return 

[3/9] fauxton commit: updated refs/heads/master to 5b718dd

2016-05-17 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/5b718dd7/assets/fonts/styleguide/fauxtonicon5-preview.html
--
diff --git a/assets/fonts/styleguide/fauxtonicon5-preview.html 
b/assets/fonts/styleguide/fauxtonicon5-preview.html
new file mode 100644
index 000..17a3d63
--- /dev/null
+++ b/assets/fonts/styleguide/fauxtonicon5-preview.html
@@ -0,0 +1,2003 @@
+
+
+  
+fauxtonicon5 glyphs preview
+
+
+  /* Page Styles */
+
+  * {
+-moz-box-sizing: border-box;
+-webkit-box-sizing: border-box;
+box-sizing: border-box;
+margin: 0;
+padding: 0;
+  }
+
+  body {
+background: #fff;
+color: #444;
+font: 16px/1.5 "Helvetica Neue", Helvetica, Arial, sans-serif;
+  }
+
+  a,
+  a:visited {
+color: #888;
+text-decoration: underline;
+  }
+  a:hover,
+  a:focus { color: #000; }
+
+  header {
+border-bottom: 2px solid #ddd;
+margin-bottom: 20px;
+overflow: hidden;
+padding: 20px 0;
+  }
+
+  header h1 {
+color: #888;
+float: left;
+font-size: 36px;
+font-weight: 300;
+  }
+
+  header a {
+float: right;
+font-size: 14px;
+  }
+
+  .container {
+margin: 0 auto;
+max-width: 1200px;
+min-width: 960px;
+padding: 0 40px;
+width: 90%;
+  }
+
+  .glyph {
+border-bottom: 1px dotted #ccc;
+padding: 10px 0 20px;
+margin-bottom: 20px;
+  }
+
+  .preview-glyphs { vertical-align: bottom; }
+
+  .preview-scale {
+color: #888;
+font-size: 12px;
+margin-top: 5px;
+  }
+
+  .step {
+display: inline-block;
+line-height: 1;
+position: relative;
+width: 10%;
+  }
+
+  .step .letters,
+  .step i {
+-webkit-transition: opacity .3s;
+-moz-transition: opacity .3s;
+-ms-transition: opacity .3s;
+-o-transition: opacity .3s;
+transition: opacity .3s;
+  }
+
+  .step:hover .letters { opacity: 1; }
+  .step:hover i { opacity: .3; }
+
+  .letters {
+opacity: .3;
+position: absolute;
+  }
+
+  .characters-off .letters { display: none; }
+  .characters-off .step:hover i { opacity: 1; }
+
+  
+  .size-12 { font-size: 12px; }
+  
+  .size-14 { font-size: 14px; }
+  
+  .size-16 { font-size: 16px; }
+  
+  .size-18 { font-size: 18px; }
+  
+  .size-21 { font-size: 21px; }
+  
+  .size-24 { font-size: 24px; }
+  
+  .size-36 { font-size: 36px; }
+  
+  .size-48 { font-size: 48px; }
+  
+  .size-60 { font-size: 60px; }
+  
+  .size-72 { font-size: 72px; }
+  
+
+  .usage { margin-top: 10px; }
+
+  .usage input {
+font-family: monospace;
+margin-right: 3px;
+padding: 2px 5px;
+text-align: center;
+  }
+
+  .usage .point { width: 150px; }
+
+  .usage .class { width: 250px; }
+
+  footer {
+color: #888;
+font-size: 12px;
+padding: 20px 0;
+  }
+
+  /* Icon Font: fauxtonicon5 */
+
+  @font-face {
+  font-family: "fauxtonicon5";
+  src: url("../fauxtonicon5.eot");
+  src: url("../fauxtonicon5.eot?#iefix") format("embedded-opentype"),
+   url("../fauxtonicon5.woff") format("woff"),
+   url("../fauxtonicon5.ttf") format("truetype"),
+   url("../fauxtonicon5.svg#fauxtonicon5") format("svg");
+  font-weight: normal;
+  font-style: normal;
+}
+
+@media screen and (-webkit-min-device-pixel-ratio:0) {
+  @font-face {
+font-family: "fauxtonicon5";
+src: url("../fauxtonicon5.svg#fauxtonicon5") format("svg");
+  }
+}
+
+  [data-icon]:before { content: attr(data-icon); }
+
+  [data-icon]:before,
+  .fonticon-activetasks:before,
+.fonticon-arrow-box-down:before,
+.fonticon-arrow-box-up:before,
+.fonticon-arrow_left:before,
+.fonticon-arrow_right:before,
+.fonticon-arrows-cw:before,
+.fonticon-article:before,
+.fonticon-attention-alt:before,
+.fonticon-attention-circled:before,
+.fonticon-bell:before,
+.fonticon-block:before,
+.fonticon-bookmark:before,
+.fonticon-bookmark-ribbon-wplus:before,
+.fonticon-burger:before,
+.fonticon-cancel:before,
+.fonticon-cancel-circled:before,
+.fonticon-cancel-circled2:before,
+.fonticon-circle-empty:before,
+.fonticon-clipboard:before,
+.fonticon-clock:before,
+.fonticon-cog:before,
+.fonticon-collapse:before,
+.fonticon-cw:before,
+.fonticon-dashboard:before,
+.fonticon-database:before,
+.fonticon-deselect-all:before,
+.fonticon-document:before,
+.fonticon-documents:before,
+.fonticon-dot-circled:before,
+.fonticon-down:before,
+.fonticon-down-1:before,
+.fonticon-down-circled:before,
+.fonticon-down-dir:before,
+.fonticon-down-open:before,
+.fonticon-drop-down-dots:before,

[5/9] fauxton commit: updated refs/heads/master to 5b718dd

2016-05-17 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/5b718dd7/assets/fonts/fauxtonicon5.woff
--
diff --git a/assets/fonts/fauxtonicon5.woff b/assets/fonts/fauxtonicon5.woff
new file mode 100644
index 000..104a3d7
Binary files /dev/null and b/assets/fonts/fauxtonicon5.woff differ

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/5b718dd7/assets/fonts/fontcustom.yml
--
diff --git a/assets/fonts/fontcustom.yml b/assets/fonts/fontcustom.yml
index 71e3afd..619adf8 100644
--- a/assets/fonts/fontcustom.yml
+++ b/assets/fonts/fontcustom.yml
@@ -4,7 +4,7 @@
 #   `fontcustom help` or visiting .
 # --- #
 
-font_name: fauxtonicon3
+font_name: fauxtonicon5
 css_selector: .fonticon-{{glyph}}
 preprocessor_path: "../fonts/"
 autowidth: false



[1/9] fauxton commit: updated refs/heads/master to 5b718dd

2016-05-17 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master 906f13852 -> 5b718dd71


Standardizing modal btn order

This standardizes the modal button order: cancel link first,
action button second.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/e3443a25
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/e3443a25
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/e3443a25

Branch: refs/heads/master
Commit: e3443a25a2fbf757c78d7ce4287e648657cd4944
Parents: 906f138
Author: Ben Keen 
Authored: Mon May 16 09:28:34 2016 -0700
Committer: Ben Keen 
Committed: Mon May 16 09:28:34 2016 -0700

--
 app/addons/components/assets/less/modals.less| 2 +-
 app/addons/components/react-components.react.jsx | 2 +-
 app/addons/documents/doc-editor/components.react.jsx | 4 ++--
 app/addons/documents/sidebar/sidebar.react.jsx   | 2 +-
 app/addons/fauxton/components.react.jsx  | 2 +-
 5 files changed, 6 insertions(+), 6 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/e3443a25/app/addons/components/assets/less/modals.less
--
diff --git a/app/addons/components/assets/less/modals.less 
b/app/addons/components/assets/less/modals.less
index 7d51966..fa32141 100644
--- a/app/addons/components/assets/less/modals.less
+++ b/app/addons/components/assets/less/modals.less
@@ -1,7 +1,7 @@
 @import "../../../../../assets/less/variables.less";
 
 .modal .cancel-link {
-  margin: 0 5px 0 15px;
+  margin: 0 15px;
   font-size: 14px;
   color: @defaultText;
   &:hover {

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/e3443a25/app/addons/components/react-components.react.jsx
--
diff --git a/app/addons/components/react-components.react.jsx 
b/app/addons/components/react-components.react.jsx
index bf30b52..3f46b37 100644
--- a/app/addons/components/react-components.react.jsx
+++ b/app/addons/components/react-components.react.jsx
@@ -1541,13 +1541,13 @@ define([
   autoFocus={true} />
   
   
+Cancel
 
Delete
 
-Cancel
   
 
   );

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/e3443a25/app/addons/documents/doc-editor/components.react.jsx
--
diff --git a/app/addons/documents/doc-editor/components.react.jsx 
b/app/addons/documents/doc-editor/components.react.jsx
index 188e8c5..8062dd7 100644
--- a/app/addons/documents/doc-editor/components.react.jsx
+++ b/app/addons/documents/doc-editor/components.react.jsx
@@ -362,10 +362,10 @@ define([
 
   
   
+Cancel
 
   Upload Attachment
 
-Cancel
   
 
   );
@@ -431,10 +431,10 @@ define([
 
   
   
+Cancel
 
Clone Document
 
-Cancel
   
 
   );

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/e3443a25/app/addons/documents/sidebar/sidebar.react.jsx
--
diff --git a/app/addons/documents/sidebar/sidebar.react.jsx 
b/app/addons/documents/sidebar/sidebar.react.jsx
index 53725fe..ce38840 100644
--- a/app/addons/documents/sidebar/sidebar.react.jsx
+++ b/app/addons/documents/sidebar/sidebar.react.jsx
@@ -653,9 +653,9 @@ function (app, FauxtonAPI, React, ReactDOM, Stores, 
Actions, Components, Compone
 
   
   
+Cancel
 
Clone 
{this.props.indexLabel}
-Cancel
   
 
   );

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/e3443a25/app/addons/fauxton/components.react.jsx
--
diff --git a/app/addons/fauxton/components.react.jsx 
b/app/addons/fauxton/components.react.jsx
index af5d50f..0ac61da 100644
--- a/app/addons/fauxton/components.react.jsx
+++ b/app/addons/fauxton/components.react.jsx
@@ -407,10 +407,10 @@ function (app, FauxtonAPI, React, ReactDOM, 
ZeroClipboard, ReactBootstrap) {
 {content}
   
   
+Cancel
 

{this.props.successButtonLabel}
 
-Cancel
   
 
   );



[8/9] fauxton commit: updated refs/heads/master to 5b718dd

2016-05-17 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/5b718dd7/assets/fonts/fauxtonicon4.svg
--
diff --git a/assets/fonts/fauxtonicon4.svg b/assets/fonts/fauxtonicon4.svg
deleted file mode 100644
index ebe3931..000
--- a/assets/fonts/fauxtonicon4.svg
+++ /dev/null
@@ -1,726 +0,0 @@
-
-http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd; >
-
-http://www.w3.org/2000/svg; 
xmlns:xlink="http://www.w3.org/1999/xlink; version="1.1">
-
-Created by FontForge 20150302 at Thu Mar  3 11:44:26 2016
- By Ben Keen
-Copyright (c) 2016, Ben Keen
-
-
-
-  
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/5b718dd7/assets/fonts/fauxtonicon4.ttf
--
diff --git a/assets/fonts/fauxtonicon4.ttf b/assets/fonts/fauxtonicon4.ttf
deleted file mode 100644
index dfe12fc..000
Binary files a/assets/fonts/fauxtonicon4.ttf and /dev/null differ



[2/9] fauxton commit: updated refs/heads/master to 5b718dd

2016-05-17 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/5b718dd7/assets/icons/filter.svg
--
diff --git a/assets/icons/filter.svg b/assets/icons/filter.svg
new file mode 100644
index 000..f979c94
--- /dev/null
+++ b/assets/icons/filter.svg
@@ -0,0 +1 @@
+http://www.w3.org/2000/svg;>

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/5b718dd7/assets/less/icons.less
--
diff --git a/assets/less/icons.less b/assets/less/icons.less
index 6fc3cc9..1dcdc10 100644
--- a/assets/less/icons.less
+++ b/assets/less/icons.less
@@ -1,5 +1,5 @@
 /*
-*  Icon Font: fauxtonicon4
+*  Icon Font: fauxtonicon5
 */
 
 /*  Licensed under the Apache License, Version 2.0 (the "License"); you may not
@@ -18,7 +18,7 @@
 /* had to add a custom template to the generator to get this to compile to 
append the proper path and specify  "url" instead of "font-url":
 
https://github.com/seanbarclay/fontcustom/blob/1c3ad3d2633d3a8add39e8827115394e9ec02d88/lib/fontcustom/generator/template.rb
 */
-@fauxtonFont: "fauxtonicon4";
+@fauxtonFont: "fauxtonicon5";
 @icon-activetasks: "\f100";
 @icon-arrow-box-down: "\f101";
 @icon-arrow-box-up: "\f102";
@@ -59,101 +59,102 @@ 
https://github.com/seanbarclay/fontcustom/blob/1c3ad3d2633d3a8add39e8827115394e9
 @icon-eye: "\f125";
 @icon-file-code-o: "\f126";
 @icon-files-o: "\f127";
-@icon-gears: "\f128";
-@icon-help: "\f129";
-@icon-help-circled: "\f12a";
-@icon-info-circled: "\f12b";
-@icon-json: "\f12c";
-@icon-key: "\f12d";
-@icon-left: "\f12e";
-@icon-left-1: "\f12f";
-@icon-left-circled: "\f130";
-@icon-left-dir: "\f131";
-@icon-left-open: "\f132";
-@icon-link: "\f133";
-@icon-list-alt: "\f134";
-@icon-lock: "\f135";
-@icon-mail: "\f136";
-@icon-mail-alt: "\f137";
-@icon-map: "\f138";
-@icon-map2: "\f139";
-@icon-megaphone: "\f13a";
-@icon-minus: "\f13b";
-@icon-minus-circled: "\f13c";
-@icon-minus-circled2: "\f13d";
-@icon-minus-squared: "\f13e";
-@icon-minus-squared-alt: "\f13f";
-@icon-mixer: "\f140";
-@icon-new-database: "\f141";
-@icon-ok: "\f142";
-@icon-ok-circled: "\f143";
-@icon-ok-circled-2: "\f144";
-@icon-paperclip: "\f145";
-@icon-pencil: "\f146";
-@icon-picture: "\f147";
-@icon-play: "\f148";
-@icon-plus: "\f149";
-@icon-plus-circled: "\f14a";
-@icon-plus-circled2: "\f14b";
-@icon-plus-squared: "\f14c";
-@icon-plus-squared-alt: "\f14d";
-@icon-popin: "\f14e";
-@icon-popout: "\f14f";
-@icon-profile: "\f150";
-@icon-replicate: "\f151";
-@icon-reply: "\f152";
-@icon-reply-all: "\f153";
-@icon-resize-full: "\f154";
-@icon-resize-full-reverse: "\f155";
-@icon-resize-small: "\f156";
-@icon-resize-small-reverse: "\f157";
-@icon-right: "\f158";
-@icon-right-1: "\f159";
-@icon-right-circled: "\f15a";
-@icon-right-dir: "\f15b";
-@icon-right-open: "\f15c";
-@icon-save: "\f15d";
-@icon-search: "\f15e";
-@icon-select-all: "\f15f";
-@icon-sidenav-filter-function: "\f160";
-@icon-sidenav-info: "\f161";
-@icon-sidenav-list-function: "\f162";
-@icon-sidenav-map-reduce: "\f163";
-@icon-sidenav-search: "\f164";
-@icon-sidenav-show-function: "\f165";
-@icon-sidenav-update-function: "\f166";
-@icon-sitemap: "\f167";
-@icon-stats: "\f168";
-@icon-support: "\f169";
-@icon-swap-arrows: "\f16a";
-@icon-table: "\f16b";
-@icon-trash: "\f16c";
-@icon-up: "\f16d";
-@icon-up-1: "\f16e";
-@icon-up-circled: "\f16f";
-@icon-up-dir: "\f170";
-@icon-up-open: "\f171";
-@icon-user: "\f172";
-@icon-users: "\f173";
-@icon-vertical-ellipsis: "\f174";
-@icon-wrench: "\f175";
-@icon-wrench2: "\f176";
+@icon-filter: "\f128";
+@icon-gears: "\f129";
+@icon-help: "\f12a";
+@icon-help-circled: "\f12b";
+@icon-info-circled: "\f12c";
+@icon-json: "\f12d";
+@icon-key: "\f12e";
+@icon-left: "\f12f";
+@icon-left-1: "\f130";
+@icon-left-circled: "\f131";
+@icon-left-dir: "\f132";
+@icon-left-open: "\f133";
+@icon-link: "\f134";
+@icon-list-alt: "\f135";
+@icon-lock: "\f136";
+@icon-mail: "\f137";
+@icon-mail-alt: "\f138";
+@icon-map: "\f139";
+@icon-map2: "\f13a";
+@icon-megaphone: "\f13b";
+@icon-minus: "\f13c";
+@icon-minus-circled: "\f13d";
+@icon-minus-circled2: "\f13e";
+@icon-minus-squared: "\f13f";
+@icon-minus-squared-alt: "\f140";
+@icon-mixer: "\f141";
+@icon-new-database: "\f142";
+@icon-ok: "\f143";
+@icon-ok-circled: "\f144";
+@icon-ok-circled-2: "\f145";
+@icon-paperclip: "\f146";
+@icon-pencil: "\f147";
+@icon-picture: "\f148";
+@icon-play: "\f149";
+@icon-plus: "\f14a";
+@icon-plus-circled: "\f14b";
+@icon-plus-circled2: "\f14c";
+@icon-plus-squared: "\f14d";
+@icon-plus-squared-alt: "\f14e";
+@icon-popin: "\f14f";
+@icon-popout: "\f150";
+@icon-profile: "\f151";
+@icon-replicate: "\f152";
+@icon-reply: "\f153";
+@icon-reply-all: "\f154";
+@icon-resize-full: "\f155";
+@icon-resize-full-reverse: "\f156";
+@icon-resize-small: "\f157";
+@icon-resize-small-reverse: "\f158";
+@icon-right: "\f159";
+@icon-right-1: "\f15a";
+@icon-right-circled: "\f15b";

[6/9] fauxton commit: updated refs/heads/master to 5b718dd

2016-05-17 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/5b718dd7/assets/fonts/fauxtonicon5.svg
--
diff --git a/assets/fonts/fauxtonicon5.svg b/assets/fonts/fauxtonicon5.svg
new file mode 100644
index 000..7a9d1a7
--- /dev/null
+++ b/assets/fonts/fauxtonicon5.svg
@@ -0,0 +1,729 @@
+
+http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd; >
+
+http://www.w3.org/2000/svg; 
xmlns:xlink="http://www.w3.org/1999/xlink; version="1.1">
+
+Created by FontForge 20150302 at Mon May 16 09:51:56 2016
+ By Ben Keen
+Copyright (c) 2016, Ben Keen
+
+
+
+  
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/5b718dd7/assets/fonts/fauxtonicon5.ttf
--
diff --git a/assets/fonts/fauxtonicon5.ttf b/assets/fonts/fauxtonicon5.ttf
new file mode 100644
index 000..9a382e9
Binary files /dev/null and b/assets/fonts/fauxtonicon5.ttf differ



[9/9] fauxton commit: updated refs/heads/master to 5b718dd

2016-05-17 Thread benkeen
Added filter fonticon


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/5b718dd7
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/5b718dd7
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/5b718dd7

Branch: refs/heads/master
Commit: 5b718dd71ce8f31baf94f5697d2164e2274c76c0
Parents: e3443a2
Author: Ben Keen 
Authored: Mon May 16 09:55:27 2016 -0700
Committer: Ben Keen 
Committed: Mon May 16 09:55:27 2016 -0700

--
 assets/fonts/fauxtonicon4.eot   |  Bin 19518 -> 0 bytes
 assets/fonts/fauxtonicon4.svg   |  726 ---
 assets/fonts/fauxtonicon4.ttf   |  Bin 19324 -> 0 bytes
 assets/fonts/fauxtonicon4.woff  |  Bin 11148 -> 0 bytes
 assets/fonts/fauxtonicon5.eot   |  Bin 0 -> 19606 bytes
 assets/fonts/fauxtonicon5.svg   |  729 +++
 assets/fonts/fauxtonicon5.ttf   |  Bin 0 -> 19412 bytes
 assets/fonts/fauxtonicon5.woff  |  Bin 0 -> 11208 bytes
 assets/fonts/fontcustom.yml |2 +-
 .../fonts/styleguide/fauxtonicon4-preview.html  | 1988 -
 .../fonts/styleguide/fauxtonicon5-preview.html  | 2003 ++
 assets/icons/filter.svg |1 +
 assets/less/icons.less  |  341 +--
 13 files changed, 2906 insertions(+), 2884 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/5b718dd7/assets/fonts/fauxtonicon4.eot
--
diff --git a/assets/fonts/fauxtonicon4.eot b/assets/fonts/fauxtonicon4.eot
deleted file mode 100644
index 40f7fbf..000
Binary files a/assets/fonts/fauxtonicon4.eot and /dev/null differ



[4/9] fauxton commit: updated refs/heads/master to 5b718dd

2016-05-17 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/5b718dd7/assets/fonts/styleguide/fauxtonicon4-preview.html
--
diff --git a/assets/fonts/styleguide/fauxtonicon4-preview.html 
b/assets/fonts/styleguide/fauxtonicon4-preview.html
deleted file mode 100644
index e169232..000
--- a/assets/fonts/styleguide/fauxtonicon4-preview.html
+++ /dev/null
@@ -1,1988 +0,0 @@
-
-
-  
-fauxtonicon4 glyphs preview
-
-
-  /* Page Styles */
-
-  * {
--moz-box-sizing: border-box;
--webkit-box-sizing: border-box;
-box-sizing: border-box;
-margin: 0;
-padding: 0;
-  }
-
-  body {
-background: #fff;
-color: #444;
-font: 16px/1.5 "Helvetica Neue", Helvetica, Arial, sans-serif;
-  }
-
-  a,
-  a:visited {
-color: #888;
-text-decoration: underline;
-  }
-  a:hover,
-  a:focus { color: #000; }
-
-  header {
-border-bottom: 2px solid #ddd;
-margin-bottom: 20px;
-overflow: hidden;
-padding: 20px 0;
-  }
-
-  header h1 {
-color: #888;
-float: left;
-font-size: 36px;
-font-weight: 300;
-  }
-
-  header a {
-float: right;
-font-size: 14px;
-  }
-
-  .container {
-margin: 0 auto;
-max-width: 1200px;
-min-width: 960px;
-padding: 0 40px;
-width: 90%;
-  }
-
-  .glyph {
-border-bottom: 1px dotted #ccc;
-padding: 10px 0 20px;
-margin-bottom: 20px;
-  }
-
-  .preview-glyphs { vertical-align: bottom; }
-
-  .preview-scale {
-color: #888;
-font-size: 12px;
-margin-top: 5px;
-  }
-
-  .step {
-display: inline-block;
-line-height: 1;
-position: relative;
-width: 10%;
-  }
-
-  .step .letters,
-  .step i {
--webkit-transition: opacity .3s;
--moz-transition: opacity .3s;
--ms-transition: opacity .3s;
--o-transition: opacity .3s;
-transition: opacity .3s;
-  }
-
-  .step:hover .letters { opacity: 1; }
-  .step:hover i { opacity: .3; }
-
-  .letters {
-opacity: .3;
-position: absolute;
-  }
-
-  .characters-off .letters { display: none; }
-  .characters-off .step:hover i { opacity: 1; }
-
-  
-  .size-12 { font-size: 12px; }
-  
-  .size-14 { font-size: 14px; }
-  
-  .size-16 { font-size: 16px; }
-  
-  .size-18 { font-size: 18px; }
-  
-  .size-21 { font-size: 21px; }
-  
-  .size-24 { font-size: 24px; }
-  
-  .size-36 { font-size: 36px; }
-  
-  .size-48 { font-size: 48px; }
-  
-  .size-60 { font-size: 60px; }
-  
-  .size-72 { font-size: 72px; }
-  
-
-  .usage { margin-top: 10px; }
-
-  .usage input {
-font-family: monospace;
-margin-right: 3px;
-padding: 2px 5px;
-text-align: center;
-  }
-
-  .usage .point { width: 150px; }
-
-  .usage .class { width: 250px; }
-
-  footer {
-color: #888;
-font-size: 12px;
-padding: 20px 0;
-  }
-
-  /* Icon Font: fauxtonicon4 */
-
-  @font-face {
-  font-family: "fauxtonicon4";
-  src: url("../fauxtonicon4.eot");
-  src: url("../fauxtonicon4.eot?#iefix") format("embedded-opentype"),
-   url("../fauxtonicon4.woff") format("woff"),
-   url("../fauxtonicon4.ttf") format("truetype"),
-   url("../fauxtonicon4.svg#fauxtonicon4") format("svg");
-  font-weight: normal;
-  font-style: normal;
-}
-
-@media screen and (-webkit-min-device-pixel-ratio:0) {
-  @font-face {
-font-family: "fauxtonicon4";
-src: url("../fauxtonicon4.svg#fauxtonicon4") format("svg");
-  }
-}
-
-  [data-icon]:before { content: attr(data-icon); }
-
-  [data-icon]:before,
-  .fonticon-activetasks:before,
-.fonticon-arrow-box-down:before,
-.fonticon-arrow-box-up:before,
-.fonticon-arrow_left:before,
-.fonticon-arrow_right:before,
-.fonticon-arrows-cw:before,
-.fonticon-article:before,
-.fonticon-attention-alt:before,
-.fonticon-attention-circled:before,
-.fonticon-bell:before,
-.fonticon-block:before,
-.fonticon-bookmark:before,
-.fonticon-bookmark-ribbon-wplus:before,
-.fonticon-burger:before,
-.fonticon-cancel:before,
-.fonticon-cancel-circled:before,
-.fonticon-cancel-circled2:before,
-.fonticon-circle-empty:before,
-.fonticon-clipboard:before,
-.fonticon-clock:before,
-.fonticon-cog:before,
-.fonticon-collapse:before,
-.fonticon-cw:before,
-.fonticon-dashboard:before,
-.fonticon-database:before,
-.fonticon-deselect-all:before,
-.fonticon-document:before,
-.fonticon-documents:before,
-.fonticon-dot-circled:before,
-.fonticon-down:before,
-.fonticon-down-1:before,
-.fonticon-down-circled:before,
-.fonticon-down-dir:before,
-.fonticon-down-open:before,
-.fonticon-drop-down-dots:before,

[7/9] fauxton commit: updated refs/heads/master to 5b718dd

2016-05-17 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/5b718dd7/assets/fonts/fauxtonicon4.woff
--
diff --git a/assets/fonts/fauxtonicon4.woff b/assets/fonts/fauxtonicon4.woff
deleted file mode 100644
index 66b7a0f..000
Binary files a/assets/fonts/fauxtonicon4.woff and /dev/null differ

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/5b718dd7/assets/fonts/fauxtonicon5.eot
--
diff --git a/assets/fonts/fauxtonicon5.eot b/assets/fonts/fauxtonicon5.eot
new file mode 100644
index 000..2db254f
Binary files /dev/null and b/assets/fonts/fauxtonicon5.eot differ



fauxton commit: updated refs/heads/master to 9d95c6f

2016-04-25 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master 3f46050d3 -> 9d95c6f7f


Tweak tableViewConflicts NW test

This test fails occasionally. This softens is a little to
ensure the expected parent DOM element is there before
asserting stuff on it.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/9d95c6f7
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/9d95c6f7
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/9d95c6f7

Branch: refs/heads/master
Commit: 9d95c6f7fee69d32f19235dd1108c04370eb9a6f
Parents: 3f46050
Author: Ben Keen 
Authored: Mon Apr 25 08:41:45 2016 -0700
Committer: Ben Keen 
Committed: Mon Apr 25 09:08:41 2016 -0700

--
 app/addons/documents/tests/nightwatch/tableViewConflicts.js | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/9d95c6f7/app/addons/documents/tests/nightwatch/tableViewConflicts.js
--
diff --git a/app/addons/documents/tests/nightwatch/tableViewConflicts.js 
b/app/addons/documents/tests/nightwatch/tableViewConflicts.js
index b5740bf..aaeb964 100644
--- a/app/addons/documents/tests/nightwatch/tableViewConflicts.js
+++ b/app/addons/documents/tests/nightwatch/tableViewConflicts.js
@@ -24,11 +24,12 @@ module.exports = {
   .url(baseUrl + '/#/database/' + newDatabaseName + '/_all_docs')
 
   .clickWhenVisible('.alternative-header .two-sides-toggle-button 
button:last-child')
-  .waitForElementVisible('.table', client.globals.maxWaitTime, false)
+  .waitForElementVisible('.table', waitTime, false)
 
   .clickWhenVisible('.control-toggle-include-docs')
 
-  .waitForElementVisible('.table-container-autocomplete', 
client.globals.maxWaitTime, false)
+  .waitForElementVisible('.table-container-autocomplete', waitTime, false)
+  .waitForElementVisible('.tableview-conflict', waitTime, false)
 
   .assert.visible('.table [data-conflicts-indicator="true"]')
 



fauxton commit: updated refs/heads/master to bd7205f

2016-04-15 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master d5d4acb28 -> bd7205f45


Minor text/btn changes

This makes a few further additions to buttons / text / styles,
as per Justin's recommendations.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/bd7205f4
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/bd7205f4
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/bd7205f4

Branch: refs/heads/master
Commit: bd7205f45c2c2448da7e8e06f743f2d0444177f9
Parents: d5d4acb
Author: Ben Keen 
Authored: Tue Mar 8 10:50:02 2016 -0800
Committer: Ben Keen 
Committed: Fri Apr 15 12:13:03 2016 -0700

--
 .../components/react-components.react.jsx   | 26 +---
 app/addons/cors/components.react.jsx|  2 +-
 .../documents/doc-editor/components.react.jsx   |  4 ++-
 .../documents/mango/mango.components.react.jsx  |  2 +-
 .../queryoptions/queryoptions.react.jsx |  2 +-
 .../tests/nightwatch/deletesDocuments.js|  3 ++-
 .../documents/tests/nightwatch/viewDelete.js|  5 ++--
 app/addons/fauxton/components.react.jsx |  7 --
 8 files changed, 27 insertions(+), 24 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/bd7205f4/app/addons/components/react-components.react.jsx
--
diff --git a/app/addons/components/react-components.react.jsx 
b/app/addons/components/react-components.react.jsx
index 8baffe1..dcf9a75 100644
--- a/app/addons/components/react-components.react.jsx
+++ b/app/addons/components/react-components.react.jsx
@@ -1449,7 +1449,11 @@ define([
   modalProps: React.PropTypes.object
 },
 
-close: function () {
+close: function (e) {
+  if (e) {
+e.preventDefault();
+  }
+
   this.setState({
 inputValue: '',
 disableSubmit: true
@@ -1494,7 +1498,6 @@ define([
   var isSystemDatabase = this.props.modalProps.isSystemDatabase;
   var showDeleteModal = this.props.modalProps.showDeleteModal;
   var dbId = this.props.modalProps.dbId;
-  var errorMessage = this.state.errorMessage;
 
   var warning = isSystemDatabase ? (
 
@@ -1510,9 +1513,9 @@ define([
   
 {warning}
 
-Warning: This action will permanently delete {dbId}.
-To confirm the deletion of the database and all of the
-database's documents, you must enter the database's name.
+  Warning: This action will permanently delete {dbId}.
+  To confirm the deletion of the database and all of the
+  database's documents, you must enter the database's name.
 
 
   
   
-
-  Cancel
-
 
-   Delete
+  className="btn btn-danger delete">
+   Delete
 
+Cancel
   
 
   );

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/bd7205f4/app/addons/cors/components.react.jsx
--
diff --git a/app/addons/cors/components.react.jsx 
b/app/addons/cors/components.react.jsx
index 620e2b6..8411b49 100644
--- a/app/addons/cors/components.react.jsx
+++ b/app/addons/cors/components.react.jsx
@@ -340,7 +340,7 @@ define([
   
   

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/bd7205f4/app/addons/documents/doc-editor/components.react.jsx
--
diff --git a/app/addons/documents/doc-editor/components.react.jsx 
b/app/addons/documents/doc-editor/components.react.jsx
index af211b9..116a7b7 100644
--- a/app/addons/documents/doc-editor/components.react.jsx
+++ b/app/addons/documents/doc-editor/components.react.jsx
@@ -143,12 +143,14 @@ define([
 },
 
 render: function () {
+  var saveButtonLabel = (this.props.isNewDoc) ? 'Create Document' : 'Save 
Changes';
+
   return (
 
   
 
   
- Save Changes
+ {saveButtonLabel}
   
   
 Cancel

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/bd7205f4/app/addons/documents/mango/mango.components.react.jsx
--
diff --git a/app/addons/documents/mango/mango.components.react.jsx 
b/app/addons/documents/mango/mango.components.react.jsx
index 5bffecc..e88a05b 100644
--- a/app/addons/documents/mango/mango.components.react.jsx
+++ b/app/addons/documents/mango/mango.components.react.jsx
@@ -156,7 +156,7 

fauxton commit: updated refs/heads/master to 2e89462

2016-04-15 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master d44aa93a9 -> 2e894627d


More minor fixes

- minor style fix for view attachments dropdown
- autofocus for delete db panel input field
- changes clipboard item to show notification when copied to
clipboard
- Now the API Bar tray only closes once you click outside of
it (not within it)


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/2e894627
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/2e894627
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/2e894627

Branch: refs/heads/master
Commit: 2e894627d031247d9213fc746cdd6f54e93c9f01
Parents: d44aa93
Author: Ben Keen 
Authored: Tue Apr 5 14:16:49 2016 -0700
Committer: Ben Keen 
Committed: Fri Apr 15 10:03:47 2016 -0700

--
 .../components/react-components.react.jsx   | 10 
 .../documents/assets/less/doc-editor.less   |  5 
 .../documents/changes/components.react.jsx  | 25 ++--
 app/addons/documents/changes/stores.js  | 22 -
 .../tests/changes.componentsSpec.react.jsx  |  8 +++
 .../documents/doc-editor/components.react.jsx   |  3 ++-
 6 files changed, 60 insertions(+), 13 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/2e894627/app/addons/components/react-components.react.jsx
--
diff --git a/app/addons/components/react-components.react.jsx 
b/app/addons/components/react-components.react.jsx
index 0ad9b85..8baffe1 100644
--- a/app/addons/components/react-components.react.jsx
+++ b/app/addons/components/react-components.react.jsx
@@ -1381,8 +1381,10 @@ define([
 },
 
 componentDidMount: function () {
-  $('body').on('click.APIBar', function () {
-Actions.toggleApiBarVisibility(false);
+  $('body').on('click.APIBar', function (e) {
+if 
($(e.target).closest('.api-bar-tray,.control-toggle-api-url').length === 0) {
+  Actions.toggleApiBarVisibility(false);
+}
   }.bind(this));
 },
 
@@ -1516,8 +1518,8 @@ define([
   type="text"
   className="input-block-level"
   onKeyUp={this.onInputKeypress}
-  onChange={this.onInputChange} />
-
+  onChange={this.onInputChange}
+  autoFocus={true} />
   
   
 http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/2e894627/app/addons/documents/assets/less/doc-editor.less
--
diff --git a/app/addons/documents/assets/less/doc-editor.less 
b/app/addons/documents/assets/less/doc-editor.less
index ab0cc4a..82ef9d2 100644
--- a/app/addons/documents/assets/less/doc-editor.less
+++ b/app/addons/documents/assets/less/doc-editor.less
@@ -181,3 +181,8 @@
   height: inherit;
   max-height: 600px;
 }
+
+.attachment-delimiter {
+  color: #99;
+  margin: 0 4px;
+}

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/2e894627/app/addons/documents/changes/components.react.jsx
--
diff --git a/app/addons/documents/changes/components.react.jsx 
b/app/addons/documents/changes/components.react.jsx
index 960077a..9c6f90e 100644
--- a/app/addons/documents/changes/components.react.jsx
+++ b/app/addons/documents/changes/components.react.jsx
@@ -273,6 +273,7 @@ define([
 getStoreState: function () {
   return {
 changes: changesStore.getChanges(),
+loaded: changesStore.isLoaded(),
 databaseName: changesStore.getDatabaseName(),
 isShowingSubset: changesStore.isShowingSubset()
   };
@@ -300,6 +301,14 @@ define([
 },
 
 getRows: function () {
+  if (!this.state.changes.length && this.state.loaded) {
+return (
+  
+No document changes have occurred in this database.
+  
+);
+  }
+
   return _.map(this.state.changes, function (change) {
 var key = change.id + '-' + change.seq;
 return ;
@@ -351,6 +360,18 @@ define([
   };
 },
 
+onClipboardClick: function (target) {
+  var msg = 'The document ID has been copied to your clipboard.';
+  if (target === 'seq') {
+msg = 'The document seq number has been copied to your clipboard.';
+  }
+  FauxtonAPI.addNotification({
+msg: msg,
+type: 'info',
+clear: true
+  });
+},
+
 render: function () {
   var jsonBtnClasses = 'btn btn-small' + (this.state.codeVisible ? ' 
btn-secondary' : ' btn-primary');
   var wrapperClass = 'change-wrapper' + (this.props.change.isNew ? ' 
new-change-row' : '');

fauxton commit: updated refs/heads/master to 429a6bd

2016-04-06 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master ae1313126 -> 429a6bd29


Disable strict SSL for npm

phantomJS fails to download pretty frequently. This should
patch it.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/429a6bd2
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/429a6bd2
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/429a6bd2

Branch: refs/heads/master
Commit: 429a6bd29fef52a5060cd0da01fc8a5d53270c18
Parents: ae13131
Author: Ben Keen 
Authored: Wed Apr 6 12:11:19 2016 -0700
Committer: Ben Keen 
Committed: Wed Apr 6 13:18:41 2016 -0700

--
 .travis.yml | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/429a6bd2/.travis.yml
--
diff --git a/.travis.yml b/.travis.yml
index e971b59..db8d848 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -7,12 +7,13 @@ git:
 addons:
   firefox: "38.0.1"
 before_install:
+  - npm config set strict-ssl false
+
   - sudo apt-get update -qq
   - sudo apt-get install -qq flashplugin-installer
   - sudo apt-get -y install libicu-dev libmozjs-dev pkg-config help2man 
libcurl4-openssl-dev
   - sudo apt-get -y install libtool automake autoconf autoconf-archive
   - sudo apt-get -y install haproxy
-
   - nvm install 4 && nvm use 4
 
   - cd ..



fauxton commit: updated refs/heads/master to b28a844

2016-04-05 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master f6a1f8201 -> b28a844bd


Minor fixes

Three unrelated small changes:
- typo fix on doc page
- fix for absolute URLs for APIs setup and config pages
- spacing tweak for icons on db page


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/b28a844b
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/b28a844b
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/b28a844b

Branch: refs/heads/master
Commit: b28a844bd52da25418b7220ac696c0b72148e23b
Parents: f6a1f82
Author: Ben Keen 
Authored: Thu Mar 31 09:44:23 2016 -0700
Committer: Ben Keen 
Committed: Tue Apr 5 07:46:22 2016 -0700

--
 app/addons/cluster/resources.js | 8 ++--
 app/addons/cluster/routes.js| 6 +++---
 app/addons/databases/assets/less/databases.less | 3 +--
 app/addons/documentation/stores.js  | 4 ++--
 app/addons/setup/resources.js   | 8 ++--
 app/addons/setup/route.js   | 5 ++---
 6 files changed, 20 insertions(+), 14 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/b28a844b/app/addons/cluster/resources.js
--
diff --git a/app/addons/cluster/resources.js b/app/addons/cluster/resources.js
index bc692b0..ed17d3a 100644
--- a/app/addons/cluster/resources.js
+++ b/app/addons/cluster/resources.js
@@ -19,8 +19,12 @@ function (app, FauxtonAPI) {
   var Cluster = FauxtonAPI.addon();
 
   Cluster.ClusterNodes = Backbone.Model.extend({
-url: function () {
-  return app.host + '/_membership';
+url: function (context) {
+  if (context === 'apiurl') {
+return window.location.origin + '/_membership';
+  } else {
+return app.host + '/_membership';
+  }
 },
 
 parse: function (res) {

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/b28a844b/app/addons/cluster/routes.js
--
diff --git a/app/addons/cluster/routes.js b/app/addons/cluster/routes.js
index a3555a2..69d632a 100644
--- a/app/addons/cluster/routes.js
+++ b/app/addons/cluster/routes.js
@@ -15,7 +15,7 @@ define([
   '../../core/api',
   './resources',
   './cluster.react',
-  './cluster.actions',
+  './cluster.actions'
 ],
 
 function (app, FauxtonAPI, Cluster, ClusterComponents, ClusterActions) {
@@ -25,7 +25,7 @@ function (app, FauxtonAPI, Cluster, ClusterComponents, 
ClusterActions) {
 layout: 'one_pane',
 
 routes: {
-  'cluster/disabled': 'showDisabledFeatureScreen',
+  'cluster/disabled': 'showDisabledFeatureScreen'
 },
 
 crumbs: [
@@ -33,7 +33,7 @@ function (app, FauxtonAPI, Cluster, ClusterComponents, 
ClusterActions) {
 ],
 
 apiUrl: function () {
-  return [this.memberships.url(), this.memberships.documentation];
+  return [this.memberships.url('apiurl'), this.memberships.documentation];
 },
 
 initialize: function () {

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/b28a844b/app/addons/databases/assets/less/databases.less
--
diff --git a/app/addons/databases/assets/less/databases.less 
b/app/addons/databases/assets/less/databases.less
index 4ada93c..0d27d75 100644
--- a/app/addons/databases/assets/less/databases.less
+++ b/app/addons/databases/assets/less/databases.less
@@ -27,7 +27,6 @@
 .border-radius(6px);
 text-decoration: none;
 font-size: 19px;
-margin-left: 10px;
   }
   td {
 vertical-align: middle;
@@ -73,5 +72,5 @@
 }
 
 .database-actions > * {
-  margin-right: 4px;
+  margin-right: 10px;
 }

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/b28a844b/app/addons/documentation/stores.js
--
diff --git a/app/addons/documentation/stores.js 
b/app/addons/documentation/stores.js
index a669cd5..1f79c01 100644
--- a/app/addons/documentation/stores.js
+++ b/app/addons/documentation/stores.js
@@ -19,12 +19,12 @@ define([
 getLinks: function () {
   return [
 {
-  title: 'CouchDB Offical Documentation -- Online',
+  title: 'CouchDB Official Documentation -- Online',
   link: 'http://docs.couchdb.org/en/latest/',
   iconClassName: 'couchdb-icon'
 },
 {
-  title: 'CouchDB Offical Documentation -- Offline',
+  title: 'CouchDB Official Documentation -- Offline',
   link: '/_utils/docs/contents.html',
   iconClassName: 'couchdb-icon'
 },


fauxton commit: updated refs/heads/master to f6a1f82

2016-04-04 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master 2e825dda4 -> f6a1f8201


Style update for metadata page

The metadata page was kinda ugly, and Tim White recently made
a few aesthetic changes to the page. This implements them and
generally smartens up the page a bit.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/f6a1f820
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/f6a1f820
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/f6a1f820

Branch: refs/heads/master
Commit: f6a1f8201d9baedca2e7869d51953da4389d85c3
Parents: 2e825dd
Author: Ben Keen 
Authored: Tue Mar 8 13:11:47 2016 -0800
Committer: Ben Keen 
Committed: Mon Apr 4 08:18:37 2016 -0700

--
 app/addons/documents/assets/less/documents.less |  32 +
 .../designdocinfo/components.react.jsx  | 139 ---
 assets/less/fauxton.less|   4 +
 3 files changed, 121 insertions(+), 54 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/f6a1f820/app/addons/documents/assets/less/documents.less
--
diff --git a/app/addons/documents/assets/less/documents.less 
b/app/addons/documents/assets/less/documents.less
index e068946..787b775 100644
--- a/app/addons/documents/assets/less/documents.less
+++ b/app/addons/documents/assets/less/documents.less
@@ -88,7 +88,39 @@ button.beautify {
 }
 
 .metadata-page {
+  font-size: 14px;
   padding: 20px;
+
+  .preheading {
+font-size: 14px;
+  }
+  h2 {
+margin: 5px 0 15px;
+  }
+  h3 {
+font-size: 22px;
+margin-top: 12px;
+  }
+  header {
+border-bottom: 1px solid #cc;
+padding-bottom: 10px;
+  }
+  .icon-question-sign {
+margin-left: 4px;
+  }
+  section {
+line-height: 21px;
+width: 100%;
+
+ul {
+  list-style-type: none;
+  margin: 0 0 15px;
+  padding: 0;
+}
+.item-title {
+  margin-right: 6px;
+}
+  }
 }
 
 button.delete {

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/f6a1f820/app/addons/documents/designdocinfo/components.react.jsx
--
diff --git a/app/addons/documents/designdocinfo/components.react.jsx 
b/app/addons/documents/designdocinfo/components.react.jsx
index 1ee03f6..c877dc4 100644
--- a/app/addons/documents/designdocinfo/components.react.jsx
+++ b/app/addons/documents/designdocinfo/components.react.jsx
@@ -16,12 +16,14 @@ define([
   'react',
   './stores',
   './actions',
-  '../../components/react-components.react'
+  '../../components/react-components.react',
+  '../../fauxton/components.react'
 ],
 
-function (app, FauxtonAPI, React, Stores, Actions, ReactComponents) {
+function (app, FauxtonAPI, React, Stores, Actions, ReactComponents, 
GeneralComponents) {
   var designDocInfoStore = Stores.designDocInfoStore;
   var LoadLines = ReactComponents.LoadLines;
+  var Clipboard = GeneralComponents.Clipboard;
 
 
   var DesignDocInfo = React.createClass({
@@ -50,8 +52,15 @@ function (app, FauxtonAPI, React, Stores, Actions, 
ReactComponents) {
   this.setState(this.getStoreState());
 },
 
+showCopiedMessage: function () {
+  FauxtonAPI.addNotification({
+type: 'success',
+msg: 'The MD5 sha has been copied to your clipboard.',
+clear: true
+  });
+},
+
 render: function () {
-  var formatSize = app.helpers.formatSize;
   var getDocUrl = app.helpers.getDocUrl;
   var viewIndex = this.state.viewIndex;
 
@@ -59,66 +68,88 @@ function (app, FauxtonAPI, React, Stores, Actions, 
ReactComponents) {
 return ;
   }
 
+  var actualSize = (viewIndex.data_size) ? 
viewIndex.data_size.toLocaleString('en') : 0;
+  var dataSize = (viewIndex.disk_size) ? 
viewIndex.disk_size.toLocaleString('en') : 0;
+
   return (
-  
-
-  Design Document Metadata: _design/{this.state.ddocName} 
-  Information about the specified design document, 
including the index,
-index size and current status of the design document and 
associated index information.
-
-  
+
+  
+Design Document Metadata
+_design/{this.state.ddocName}
+
+
+  Information about the specified design document, including the 
index, index size and current status of the
+  design document and associated index information.
+  
+
   
-  
-
-
-  
-
-  Status
-
-
-  Updater
-  {viewIndex.updater_running}
-

couchdb commit: updated refs/heads/master to 1a91fe5

2016-03-31 Thread benkeen
Repository: couchdb
Updated Branches:
  refs/heads/master 3ac6fe38b -> 1a91fe591


adding velocity-react license for Fauxton


Project: http://git-wip-us.apache.org/repos/asf/couchdb/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb/commit/1a91fe59
Tree: http://git-wip-us.apache.org/repos/asf/couchdb/tree/1a91fe59
Diff: http://git-wip-us.apache.org/repos/asf/couchdb/diff/1a91fe59

Branch: refs/heads/master
Commit: 1a91fe591d7a5c607a5c00ff5e85747c18af6f0e
Parents: 3ac6fe3
Author: Ben Keen 
Authored: Tue Mar 15 11:53:39 2016 -0700
Committer: Ben Keen 
Committed: Thu Mar 31 12:55:18 2016 -0700

--
 LICENSE | 25 +
 NOTICE  |  4 
 2 files changed, 29 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/couchdb/blob/1a91fe59/LICENSE
--
diff --git a/LICENSE b/LICENSE
index 6ad7e26..f3b4673 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1432,3 +1432,28 @@ for src/fauxton/assets/js/libs/react-bootstrap.js
 LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 
FROM,
 OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 THE SOFTWARE.
+
+For velocity-react: NPM dependency for Fauxton
+https://github.com/twitter-fabric/velocity-react
+
+The MIT License (MIT)
+
+Copyright (c) 2015 Twitter and other contributors
+
+Permission is hereby granted, free of charge, to any person obtaining a 
copy of
+this software and associated documentation files (the "Software"), to deal 
in
+the Software without restriction, including without limitation the rights 
to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell 
copies
+of the Software, and to permit persons to whom the Software is furnished 
to do
+so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in 
all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 
FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 
THE
+SOFTWARE.

http://git-wip-us.apache.org/repos/asf/couchdb/blob/1a91fe59/NOTICE
--
diff --git a/NOTICE b/NOTICE
index 978ee6e..1442158 100644
--- a/NOTICE
+++ b/NOTICE
@@ -197,3 +197,7 @@ This product also includes the following third-party 
components:
 * react-bootstrap.js
 
   Copyright (c) 2014 Stephen J. Collings, Matthew Honnibal, Pieter Vanderwerff
+
+* velocity-react
+
+  Copyright (c) 2015 Twitter, Inc.



fauxton commit: updated refs/heads/master to adaf1d3

2016-03-24 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master 87487ec89 -> adaf1d300


Update NW to 0.8.18; asyncHookTimeout increased

This updates NW to use the latest version. Occasionally async
requests can fail to return by the default NW 10 second timeout;
this increases the value to 20 seconds to reduce the likelihood
of that occurring.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/adaf1d30
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/adaf1d30
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/adaf1d30

Branch: refs/heads/master
Commit: adaf1d30018a5aa4d4cc69262bb2e10f4b2d9a45
Parents: 87487ec
Author: Ben Keen 
Authored: Wed Mar 23 16:00:29 2016 -0700
Committer: Ben Keen 
Committed: Thu Mar 24 10:45:03 2016 -0700

--
 app/addons/databases/tests/nightwatch/createsDatabase.js |  4 ++--
 .../documents/tests/nightwatch/deleteDatabaseModal.js|  4 ++--
 package.json |  4 ++--
 .../custom-commands/checkForDatabaseCreated.js   |  2 +-
 .../custom-commands/checkForDatabaseDeleted.js   |  2 +-
 .../custom-commands/checkForDocumentCreated.js   |  2 +-
 .../custom-commands/checkForStringNotPresent.js  |  3 +--
 .../custom-commands/checkForStringPresent.js |  3 +--
 test/nightwatch_tests/custom-commands/createDatabase.js  |  2 +-
 test/nightwatch_tests/custom-commands/createDocument.js  |  2 +-
 .../custom-commands/createManyDocuments.js   |  2 +-
 test/nightwatch_tests/custom-commands/deleteDatabase.js  |  2 +-
 test/nightwatch_tests/custom-commands/deleteDocument.js  |  2 +-
 .../nightwatch_tests/custom-commands/populateDatabase.js | 11 ++-
 .../custom-commands/replicateDatabase.js |  2 +-
 test/nightwatch_tests/helpers/helpers.js |  9 +
 16 files changed, 28 insertions(+), 28 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/adaf1d30/app/addons/databases/tests/nightwatch/createsDatabase.js
--
diff --git a/app/addons/databases/tests/nightwatch/createsDatabase.js 
b/app/addons/databases/tests/nightwatch/createsDatabase.js
index 74496ff..4e7c99b 100644
--- a/app/addons/databases/tests/nightwatch/createsDatabase.js
+++ b/app/addons/databases/tests/nightwatch/createsDatabase.js
@@ -15,14 +15,14 @@ var helpers = 
require('../../../../../test/nightwatch_tests/helpers/helpers.js')
 module.exports = {
 
   before: function (client, done) {
-var nano = helpers.getNanoInstance();
+var nano = helpers.getNanoInstance(client.globals.test_settings.db_url);
 nano.db.destroy(newDatabaseName, function (err, body, header) {
   done();
 });
   },
 
   after: function (client, done) {
-var nano = helpers.getNanoInstance();
+var nano = helpers.getNanoInstance(client.globals.test_settings.db_url);
 nano.db.destroy(newDatabaseName, function (err, body, header) {
   done();
 });

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/adaf1d30/app/addons/documents/tests/nightwatch/deleteDatabaseModal.js
--
diff --git a/app/addons/documents/tests/nightwatch/deleteDatabaseModal.js 
b/app/addons/documents/tests/nightwatch/deleteDatabaseModal.js
index 77b3a1c..26f659a 100644
--- a/app/addons/documents/tests/nightwatch/deleteDatabaseModal.js
+++ b/app/addons/documents/tests/nightwatch/deleteDatabaseModal.js
@@ -14,14 +14,14 @@ var helpers = 
require('../../../../../test/nightwatch_tests/helpers/helpers.js')
 module.exports = {
 
   before: function (client, done) {
-var nano = helpers.getNanoInstance();
+var nano = helpers.getNanoInstance(client.globals.test_settings.db_url);
 nano.db.create('_replicator', function (err, body, header) {
   done();
 });
   },
 
   after: function (client, done) {
-var nano = helpers.getNanoInstance();
+var nano = helpers.getNanoInstance(client.globals.test_settings.db_url);
 nano.db.destroy('_replicator', function (err, body, header) {
   done();
 });

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/adaf1d30/package.json
--
diff --git a/package.json b/package.json
index 4b4d356..71ff1ce 100644
--- a/package.json
+++ b/package.json
@@ -20,8 +20,8 @@
 "imports-loader": "^0.6.5",
 "mocha": "^2.4.5",
 "mocha-phantomjs": "~4.0.2",
-"nightwatch": "^0.6.0",
-"phantomjs": "~1.9.1",
+"nightwatch": "~0.8.18",
+"phantomjs": "^1.9.1",
 "react-addons-test-utils": "^0.14.7",
 "sinon": 

fauxton commit: updated refs/heads/master to aa52e40

2016-03-21 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master 3ff6ff622 -> aa52e40d4


QueryButtons component now passed close handler

Needed to be able to reuse the component elsewhere.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/aa52e40d
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/aa52e40d
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/aa52e40d

Branch: refs/heads/master
Commit: aa52e40d432ecaeeaf04e31ed2597efd6d51078c
Parents: 3ff6ff6
Author: Ben Keen 
Authored: Wed Mar 9 12:36:54 2016 -0800
Committer: Ben Keen 
Committed: Mon Mar 21 11:03:11 2016 -0700

--
 .../queryoptions/queryoptions.react.jsx | 12 ++--
 .../tests/queryoptions.componentsSpec.react.jsx | 20 
 2 files changed, 30 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/aa52e40d/app/addons/documents/queryoptions/queryoptions.react.jsx
--
diff --git a/app/addons/documents/queryoptions/queryoptions.react.jsx 
b/app/addons/documents/queryoptions/queryoptions.react.jsx
index 74e8dd2..aab20b6 100644
--- a/app/addons/documents/queryoptions/queryoptions.react.jsx
+++ b/app/addons/documents/queryoptions/queryoptions.react.jsx
@@ -274,8 +274,12 @@ A key value is the first parameter emitted in a map 
function. For example emit("
   });
 
   var QueryButtons = React.createClass({
+propTypes: {
+  onCancel: React.PropTypes.func.isRequired
+},
+
 hideTray: function (e) {
-  Actions.toggleQueryBarVisibility(false);
+  this.props.onCancel();
 },
 
 render: function () {
@@ -343,6 +347,10 @@ A key value is the first parameter emitted in a map 
function. For example emit("
   Actions.toggleQueryBarVisibility(!this.props.contentVisible);
 },
 
+closeTray: function () {
+  Actions.toggleQueryBarVisibility(false);
+},
+
 componentDidMount: function () {
   $('body').on('click.QueryTray', function (e) {
 if ($(e.target).closest('#query-options').length) {
@@ -396,7 +404,7 @@ A key value is the first parameter emitted in a map 
function. For example emit("
   updateSkip={Actions.updateSkip}
   updateLimit={Actions.updateLimit}
   limit={this.props.limit} />
-
+
   
 
   );

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/aa52e40d/app/addons/documents/queryoptions/tests/queryoptions.componentsSpec.react.jsx
--
diff --git 
a/app/addons/documents/queryoptions/tests/queryoptions.componentsSpec.react.jsx 
b/app/addons/documents/queryoptions/tests/queryoptions.componentsSpec.react.jsx
index 47ed9c8..66ebea4 100644
--- 
a/app/addons/documents/queryoptions/tests/queryoptions.componentsSpec.react.jsx
+++ 
b/app/addons/documents/queryoptions/tests/queryoptions.componentsSpec.react.jsx
@@ -170,6 +170,26 @@ define([
 assert.equal(val, '3');
   });
 });
+
   });
 
+  describe('QueryButtons', function () {
+var container;
+
+beforeEach(function () {
+  container = document.createElement('div');
+});
+
+afterEach(function () {
+  ReactDOM.unmountComponentAtNode(container);
+});
+
+describe('cancel event fires', function () {
+  var spy = sinon.spy();
+  var component = TestUtils.renderIntoDocument(, container);
+  
TestUtils.Simulate.click($(ReactDOM.findDOMNode(component)).find('a')[0]);
+  assert.ok(spy.calledOnce);
+});
+
+  });
 });



[01/10] fauxton commit: updated refs/heads/master to 3ff6ff6

2016-03-20 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master 0c07ddc43 -> 3ff6ff622


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/c1ea1b6f/assets/icons/wrench2.svg
--
diff --git a/assets/icons/wrench2.svg b/assets/icons/wrench2.svg
new file mode 100644
index 000..6caa1ea
--- /dev/null
+++ b/assets/icons/wrench2.svg
@@ -0,0 +1 @@
+http://www.w3.org/2000/svg;>

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/c1ea1b6f/assets/less/icons.less
--
diff --git a/assets/less/icons.less b/assets/less/icons.less
index b71d7ea..6fc3cc9 100644
--- a/assets/less/icons.less
+++ b/assets/less/icons.less
@@ -1,5 +1,5 @@
 /*
-*  Icon Font: fauxtonicon3
+*  Icon Font: fauxtonicon4
 */
 
 /*  Licensed under the Apache License, Version 2.0 (the "License"); you may not
@@ -18,7 +18,7 @@
 /* had to add a custom template to the generator to get this to compile to 
append the proper path and specify  "url" instead of "font-url":
 
https://github.com/seanbarclay/fontcustom/blob/1c3ad3d2633d3a8add39e8827115394e9ec02d88/lib/fontcustom/generator/template.rb
 */
-@fauxtonFont: "fauxtonicon3";
+@fauxtonFont: "fauxtonicon4";
 @icon-activetasks: "\f100";
 @icon-arrow-box-down: "\f101";
 @icon-arrow-box-up: "\f102";
@@ -137,22 +137,23 @@ 
https://github.com/seanbarclay/fontcustom/blob/1c3ad3d2633d3a8add39e8827115394e9
 @icon-users: "\f173";
 @icon-vertical-ellipsis: "\f174";
 @icon-wrench: "\f175";
+@icon-wrench2: "\f176";
 
 @font-face {
-  font-family: "fauxtonicon3";
-  src: url("../fonts/fauxtonicon3.eot");
-  src: url("../fonts/fauxtonicon3.eot?#iefix") format("embedded-opentype"),
-   url("../fonts/fauxtonicon3.woff") format("woff"),
-   url("../fonts/fauxtonicon3.ttf") format("truetype"),
-   url("../fonts/fauxtonicon3.svg#fauxtonicon3") format("svg");
+  font-family: "fauxtonicon4";
+  src: url("../fonts/fauxtonicon4.eot");
+  src: url("../fonts/fauxtonicon4.eot?#iefix") format("embedded-opentype"),
+   url("../fonts/fauxtonicon4.woff") format("woff"),
+   url("../fonts/fauxtonicon4.ttf") format("truetype"),
+   url("../fonts/fauxtonicon4.svg#fauxtonicon4") format("svg");
   font-weight: normal;
   font-style: normal;
 }
 
 @media screen and (-webkit-min-device-pixel-ratio:0) {
   @font-face {
-font-family: "fauxtonicon3";
-src: url("../fonts/fauxtonicon3.svg#fauxtonicon3") format("svg");
+font-family: "fauxtonicon4";
+src: url("../fonts/fauxtonicon4.svg#fauxtonicon4") format("svg");
   }
 }
 
@@ -276,9 +277,10 @@ 
https://github.com/seanbarclay/fontcustom/blob/1c3ad3d2633d3a8add39e8827115394e9
 .fonticon-user:before,
 .fonticon-users:before,
 .fonticon-vertical-ellipsis:before,
-.fonticon-wrench:before {
+.fonticon-wrench:before,
+.fonticon-wrench2:before {
   display: inline-block;
-  font-family: "fauxtonicon3";
+  font-family: "fauxtonicon4";
   font-style: normal;
   font-weight: normal;
   font-variant: normal;
@@ -409,3 +411,4 @@ 
https://github.com/seanbarclay/fontcustom/blob/1c3ad3d2633d3a8add39e8827115394e9
 .fonticon-users { &:before { content: "\f173"; }}
 .fonticon-vertical-ellipsis { &:before { content: "\f174"; }}
 .fonticon-wrench { &:before { content: "\f175"; }}
+.fonticon-wrench2 { &:before { content: "\f176"; }}



[04/10] fauxton commit: updated refs/heads/master to 3ff6ff6

2016-03-19 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/c1ea1b6f/assets/fonts/fauxtonicon4.woff
--
diff --git a/assets/fonts/fauxtonicon4.woff b/assets/fonts/fauxtonicon4.woff
new file mode 100644
index 000..66b7a0f
Binary files /dev/null and b/assets/fonts/fauxtonicon4.woff differ

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/c1ea1b6f/assets/fonts/fontcustom.yml
--
diff --git a/assets/fonts/fontcustom.yml b/assets/fonts/fontcustom.yml
index 41bc4e4..71e3afd 100644
--- a/assets/fonts/fontcustom.yml
+++ b/assets/fonts/fontcustom.yml
@@ -4,7 +4,7 @@
 #   `fontcustom help` or visiting .
 # --- #
 
-font_name: fauxtonicon
+font_name: fauxtonicon3
 css_selector: .fonticon-{{glyph}}
 preprocessor_path: "../fonts/"
 autowidth: false
@@ -19,8 +19,8 @@ quiet: false
 # --- #
 
 input:
-  vectors: PUT_YOUR_PATH_HERE/couchdb-fauxton/assets/icons # required
-  templates: PUT_YOUR_PATH_HERE/couchdb-fauxton/assets/fonts/templates
+  vectors: /Applications/MAMP/htdocs/couchdb-fauxton/assets/icons # 
required
+  templates: /Applications/MAMP/htdocs/couchdb-fauxton/assets/fonts/templates
 
 
 # --- #
@@ -28,10 +28,10 @@ input:
 # --- #
 
 output:
-  fonts: PUT_YOUR_PATH_HERE/couchdb-fauxton/assets/fonts   
   # required
+  fonts: /Applications/MAMP/htdocs/couchdb-fauxton/assets/fonts
  # required
   # css: PUT_YOUR_PATH_HERE/couchdb-fauxton/assets/less
-  preview: PUT_YOUR_PATH_HERE/couchdb-fauxton/assets/fonts/styleguide
-  icons.less: PUT_YOUR_PATH_HERE/couchdb-fauxton/assets/less 
+  preview: /Applications/MAMP/htdocs/couchdb-fauxton/assets/fonts/styleguide
+  icons.less: /Applications/MAMP/htdocs/couchdb-fauxton/assets/less
   #my-custom-template.yml: path/to/template/output
 
 



[07/10] fauxton commit: updated refs/heads/master to 3ff6ff6

2016-03-19 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/c1ea1b6f/assets/fonts/fauxtonicon3.svg
--
diff --git a/assets/fonts/fauxtonicon3.svg b/assets/fonts/fauxtonicon3.svg
deleted file mode 100644
index 4a92486..000
--- a/assets/fonts/fauxtonicon3.svg
+++ /dev/null
@@ -1,718 +0,0 @@
-
-http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd; >
-
-http://www.w3.org/2000/svg; 
xmlns:xlink="http://www.w3.org/1999/xlink; version="1.1">
-
-Created by FontForge 20150302 at Mon Feb 22 19:53:52 2016
- By Ben Keen
-Copyright (c) 2016, Ben Keen
-
-
-
-  
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/c1ea1b6f/assets/fonts/fauxtonicon3.ttf
--
diff --git a/assets/fonts/fauxtonicon3.ttf b/assets/fonts/fauxtonicon3.ttf
deleted file mode 100644
index 08ddb2b..000
Binary files a/assets/fonts/fauxtonicon3.ttf and /dev/null differ



[10/10] fauxton commit: updated refs/heads/master to 3ff6ff6

2016-03-19 Thread benkeen
Update Views

This is a big update to the Views pages.
- now uses standard 2 panel layout for adding/editing/viewing
Views (includes the sidebar)
- New menu added to all Views, containing [Edit, Clone, Delete]
options. Clone and Delete are their own modals. This modal is
extensible, so can be used for different types of indexes added
via extensions.
- sidebar now properly selects views and highlights them to
show current location + view.
- Renaming a view no longer creates a second view, just renames
it. The clone feature lets you copy/clone a View. It also properly
removes the old view from the old location, be it a separate
design doc or the current one. If it removes it from another
design doc, it deletes the old design doc if it's empty.
- Auto-deleting logic of design docs has been rewritten. Before,
we were overloading the hasViews() method on the backbone object
to determine if the design doc was now empty (this didn't
actually work, btw). Now any code that extends Fauxton's index
types, registers the design doc properly name for the index
groups. That is then used in the deletion code to properly
identify an empty design doc.

N.B. the new menu uses React Bootstrap so it's very similar
but not identical to our current menu dropdowns. The latter
will be replaced in subsquent PRs.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/3ff6ff62
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/3ff6ff62
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/3ff6ff62

Branch: refs/heads/master
Commit: 3ff6ff622bf22bc019a585b8285e03af94ec0650
Parents: c1ea1b6
Author: Ben Keen 
Authored: Wed Feb 17 17:10:42 2016 -0800
Committer: Ben Keen 
Committed: Fri Mar 18 11:51:44 2016 -0700

--
 app/addons/components/assets/less/docs.less |   4 +
 .../components/react-components.react.jsx   |   2 +-
 app/addons/components/stores.js |   1 -
 app/addons/documents/assets/less/documents.less |   1 +
 app/addons/documents/assets/less/sidenav.less   |  95 -
 .../documents/assets/less/view-editor.less  |  52 +--
 app/addons/documents/base.js|  20 +-
 app/addons/documents/index-editor/actions.js| 354 +--
 .../documents/index-editor/actiontypes.js   |   2 +-
 .../documents/index-editor/components.react.jsx | 222 +---
 app/addons/documents/index-editor/stores.js |  52 +--
 .../documents/index-editor/tests/actionsSpec.js |  93 +++--
 .../documents/index-editor/tests/storesSpec.js  |   4 +-
 .../tests/viewIndex.componentsSpec.react.jsx|   3 +-
 app/addons/documents/index-results/stores.js|   2 +-
 .../index-results.componentsSpec.react.jsx  |   2 +-
 .../documents/mango/mango.components.react.jsx  |   4 +-
 app/addons/documents/routes-documents.js|   4 +-
 app/addons/documents/routes-index-editor.js |  88 +++--
 app/addons/documents/shared-resources.js|  32 --
 app/addons/documents/sidebar/actions.js | 170 ++---
 app/addons/documents/sidebar/actiontypes.js |  10 +-
 app/addons/documents/sidebar/sidebar.react.jsx  | 302 ++--
 app/addons/documents/sidebar/stores.js  | 191 --
 app/addons/documents/sidebar/stores.react.jsx   | 345 ++
 .../tests/sidebar.componentsSpec.react.jsx  |  55 ++-
 .../sidebar/tests/sidebar.storesSpec.js |   2 +-
 .../tests/nightwatch/deletesDocuments.js|   2 +-
 .../tests/nightwatch/doubleEmitResults.js   |   2 +-
 .../tests/nightwatch/previousButton.js  |  20 +-
 .../documents/tests/nightwatch/viewClone.js |  37 ++
 .../documents/tests/nightwatch/viewCreate.js|  17 +-
 .../documents/tests/nightwatch/viewDelete.js|  40 +++
 .../documents/tests/nightwatch/viewEdit.js  | 159 ++---
 .../tests/nightwatch/viewQueryOptions.js|  14 +-
 app/addons/fauxton/components.react.jsx |  13 +-
 app/addons/permissions/routes.js|   7 +-
 app/core/api.js |   8 +
 assets/less/fauxton.less|   8 +
 39 files changed, 1605 insertions(+), 834 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/3ff6ff62/app/addons/components/assets/less/docs.less
--
diff --git a/app/addons/components/assets/less/docs.less 
b/app/addons/components/assets/less/docs.less
index 04b79f8..d5020c6 100644
--- a/app/addons/components/assets/less/docs.less
+++ b/app/addons/components/assets/less/docs.less
@@ -61,6 +61,10 @@
   }
 }
 
+.view #doc-list {
+  padding-top: 12px;
+}
+
 .show-select {
   #doc-list {
 padding: 0px 0 30px 0;


[02/10] fauxton commit: updated refs/heads/master to 3ff6ff6

2016-03-19 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/c1ea1b6f/assets/fonts/styleguide/fauxtonicon4-preview.html
--
diff --git a/assets/fonts/styleguide/fauxtonicon4-preview.html 
b/assets/fonts/styleguide/fauxtonicon4-preview.html
new file mode 100644
index 000..e169232
--- /dev/null
+++ b/assets/fonts/styleguide/fauxtonicon4-preview.html
@@ -0,0 +1,1988 @@
+
+
+  
+fauxtonicon4 glyphs preview
+
+
+  /* Page Styles */
+
+  * {
+-moz-box-sizing: border-box;
+-webkit-box-sizing: border-box;
+box-sizing: border-box;
+margin: 0;
+padding: 0;
+  }
+
+  body {
+background: #fff;
+color: #444;
+font: 16px/1.5 "Helvetica Neue", Helvetica, Arial, sans-serif;
+  }
+
+  a,
+  a:visited {
+color: #888;
+text-decoration: underline;
+  }
+  a:hover,
+  a:focus { color: #000; }
+
+  header {
+border-bottom: 2px solid #ddd;
+margin-bottom: 20px;
+overflow: hidden;
+padding: 20px 0;
+  }
+
+  header h1 {
+color: #888;
+float: left;
+font-size: 36px;
+font-weight: 300;
+  }
+
+  header a {
+float: right;
+font-size: 14px;
+  }
+
+  .container {
+margin: 0 auto;
+max-width: 1200px;
+min-width: 960px;
+padding: 0 40px;
+width: 90%;
+  }
+
+  .glyph {
+border-bottom: 1px dotted #ccc;
+padding: 10px 0 20px;
+margin-bottom: 20px;
+  }
+
+  .preview-glyphs { vertical-align: bottom; }
+
+  .preview-scale {
+color: #888;
+font-size: 12px;
+margin-top: 5px;
+  }
+
+  .step {
+display: inline-block;
+line-height: 1;
+position: relative;
+width: 10%;
+  }
+
+  .step .letters,
+  .step i {
+-webkit-transition: opacity .3s;
+-moz-transition: opacity .3s;
+-ms-transition: opacity .3s;
+-o-transition: opacity .3s;
+transition: opacity .3s;
+  }
+
+  .step:hover .letters { opacity: 1; }
+  .step:hover i { opacity: .3; }
+
+  .letters {
+opacity: .3;
+position: absolute;
+  }
+
+  .characters-off .letters { display: none; }
+  .characters-off .step:hover i { opacity: 1; }
+
+  
+  .size-12 { font-size: 12px; }
+  
+  .size-14 { font-size: 14px; }
+  
+  .size-16 { font-size: 16px; }
+  
+  .size-18 { font-size: 18px; }
+  
+  .size-21 { font-size: 21px; }
+  
+  .size-24 { font-size: 24px; }
+  
+  .size-36 { font-size: 36px; }
+  
+  .size-48 { font-size: 48px; }
+  
+  .size-60 { font-size: 60px; }
+  
+  .size-72 { font-size: 72px; }
+  
+
+  .usage { margin-top: 10px; }
+
+  .usage input {
+font-family: monospace;
+margin-right: 3px;
+padding: 2px 5px;
+text-align: center;
+  }
+
+  .usage .point { width: 150px; }
+
+  .usage .class { width: 250px; }
+
+  footer {
+color: #888;
+font-size: 12px;
+padding: 20px 0;
+  }
+
+  /* Icon Font: fauxtonicon4 */
+
+  @font-face {
+  font-family: "fauxtonicon4";
+  src: url("../fauxtonicon4.eot");
+  src: url("../fauxtonicon4.eot?#iefix") format("embedded-opentype"),
+   url("../fauxtonicon4.woff") format("woff"),
+   url("../fauxtonicon4.ttf") format("truetype"),
+   url("../fauxtonicon4.svg#fauxtonicon4") format("svg");
+  font-weight: normal;
+  font-style: normal;
+}
+
+@media screen and (-webkit-min-device-pixel-ratio:0) {
+  @font-face {
+font-family: "fauxtonicon4";
+src: url("../fauxtonicon4.svg#fauxtonicon4") format("svg");
+  }
+}
+
+  [data-icon]:before { content: attr(data-icon); }
+
+  [data-icon]:before,
+  .fonticon-activetasks:before,
+.fonticon-arrow-box-down:before,
+.fonticon-arrow-box-up:before,
+.fonticon-arrow_left:before,
+.fonticon-arrow_right:before,
+.fonticon-arrows-cw:before,
+.fonticon-article:before,
+.fonticon-attention-alt:before,
+.fonticon-attention-circled:before,
+.fonticon-bell:before,
+.fonticon-block:before,
+.fonticon-bookmark:before,
+.fonticon-bookmark-ribbon-wplus:before,
+.fonticon-burger:before,
+.fonticon-cancel:before,
+.fonticon-cancel-circled:before,
+.fonticon-cancel-circled2:before,
+.fonticon-circle-empty:before,
+.fonticon-clipboard:before,
+.fonticon-clock:before,
+.fonticon-cog:before,
+.fonticon-collapse:before,
+.fonticon-cw:before,
+.fonticon-dashboard:before,
+.fonticon-database:before,
+.fonticon-deselect-all:before,
+.fonticon-document:before,
+.fonticon-documents:before,
+.fonticon-dot-circled:before,
+.fonticon-down:before,
+.fonticon-down-1:before,
+.fonticon-down-circled:before,
+.fonticon-down-dir:before,
+.fonticon-down-open:before,
+.fonticon-drop-down-dots:before,

[09/10] fauxton commit: updated refs/heads/master to 3ff6ff6

2016-03-19 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/3ff6ff62/app/addons/documents/sidebar/sidebar.react.jsx
--
diff --git a/app/addons/documents/sidebar/sidebar.react.jsx 
b/app/addons/documents/sidebar/sidebar.react.jsx
index a96b647..c8f6146 100644
--- a/app/addons/documents/sidebar/sidebar.react.jsx
+++ b/app/addons/documents/sidebar/sidebar.react.jsx
@@ -15,22 +15,32 @@ define([
   'api',
   'react',
   'react-dom',
-  'addons/documents/sidebar/stores',
+  'addons/documents/sidebar/stores.react',
   'addons/documents/sidebar/actions',
-
-
   'addons/components/react-components.react',
   'addons/components/stores',
   'addons/components/actions',
+  'addons/documents/index-editor/actions',
+  'addons/documents/index-editor/components.react',
+  'addons/fauxton/components.react',
+  'addons/documents/views',
   'addons/documents/helpers',
+  'libs/react-bootstrap',
   'plugins/prettify'
 ],
 
-function (app, FauxtonAPI, React, ReactDOM, Stores, Actions,
-  Components, ComponentsStore, ComponentsActions, DocumentHelper) {
+function (app, FauxtonAPI, React, ReactDOM, Stores, Actions, Components, 
ComponentsStore, ComponentsActions,
+  IndexEditorActions, IndexEditorComponents, GeneralComponents, DocumentViews, 
DocumentHelper, ReactBootstrap) {
+
+  var DeleteDBModal = DocumentViews.Views.DeleteDBModal;
 
   var store = Stores.sidebarStore;
   var LoadLines = Components.LoadLines;
+  var DesignDocSelector = IndexEditorComponents.DesignDocSelector;
+  var OverlayTrigger = ReactBootstrap.OverlayTrigger;
+  var Popover = ReactBootstrap.Popover;
+  var Modal = ReactBootstrap.Modal;
+  var ConfirmationModal = GeneralComponents.ConfirmationModal;
 
   var DeleteDatabaseModal = Components.DeleteDatabaseModal;
   var deleteDbModalStore = ComponentsStore.deleteDbModalStore;
@@ -110,38 +120,105 @@ function (app, FauxtonAPI, React, ReactDOM, Stores, 
Actions,
 
   );
 }
-
   });
 
+
   var IndexSection = React.createClass({
 
 propTypes: {
   urlNamespace: React.PropTypes.string.isRequired,
-  databaseName: React.PropTypes.string.isRequired,
+  indexLabel: React.PropTypes.string.isRequired,
+  database: React.PropTypes.object.isRequired,
   designDocName: React.PropTypes.string.isRequired,
   items: React.PropTypes.array.isRequired,
   isExpanded: React.PropTypes.bool.isRequired,
-  selectedIndex: React.PropTypes.string.isRequired
+  selectedIndex: React.PropTypes.string.isRequired,
+  onDelete: React.PropTypes.func.isRequired,
+  onClone: React.PropTypes.func.isRequired
+},
+
+getInitialState: function () {
+  return {
+placement: 'bottom'
+  };
+},
+
+// this dynamically changes the placement of the menu (top/bottom) to 
prevent it going offscreen and causing some
+// unsightly shifting
+setPlacement: function (rowId) {
+  var rowTop = document.getElementById(rowId).getBoundingClientRect().top;
+  var toggleHeight = 150; // the height of the menu overlay, arrow, view 
row
+  var placement = (rowTop + toggleHeight > window.innerHeight) ? 'top' : 
'bottom';
+  this.setState({ placement: placement });
 },
 
 createItems: function () {
-  return _.map(this.props.items, function (index, key) {
-var href = FauxtonAPI.urls(this.props.urlNamespace, 'app', 
this.props.databaseName, this.props.designDocName);
-var className = (this.props.selectedIndex === index) ? 'active' : '';
+
+  // sort the indexes alphabetically
+  var sortedItems = this.props.items.sort();
+
+  return _.map(sortedItems, function (indexName, index) {
+var href = FauxtonAPI.urls(this.props.urlNamespace, 'app', 
this.props.database.id, this.props.designDocName);
+var className = (this.props.selectedIndex === indexName) ? 'active' : 
'';
 
 return (
-  
+  
 
-  {index}
+  {indexName}
 
+
+  
+
+  
+  Edit
+
+
+  
+  Clone
+
+
+  
+  Delete
+
+  
+
+  }>
+  
+
   
 );
   }, this);
 },
 
+indexAction: function (action, params, e) {
+  e.preventDefault();
+
+  // ensures the menu gets closed. The hide() on the ref doesn't 
consistently close it
+  $('body').trigger('click');
+
+  switch (action) {
+case 'delete':
+  Actions.showDeleteIndexModal(params.indexName, 
this.props.designDocName, this.props.indexLabel, params.onDelete);
+break;
+case 'clone':
+  Actions.showCloneIndexModal(params.indexName, 
this.props.designDocName, 

[03/10] fauxton commit: updated refs/heads/master to 3ff6ff6

2016-03-18 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/c1ea1b6f/assets/fonts/styleguide/fauxtonicon3-preview.html
--
diff --git a/assets/fonts/styleguide/fauxtonicon3-preview.html 
b/assets/fonts/styleguide/fauxtonicon3-preview.html
deleted file mode 100644
index 18ddadf..000
--- a/assets/fonts/styleguide/fauxtonicon3-preview.html
+++ /dev/null
@@ -1,1973 +0,0 @@
-
-
-  
-fauxtonicon3 glyphs preview
-
-
-  /* Page Styles */
-
-  * {
--moz-box-sizing: border-box;
--webkit-box-sizing: border-box;
-box-sizing: border-box;
-margin: 0;
-padding: 0;
-  }
-
-  body {
-background: #fff;
-color: #444;
-font: 16px/1.5 "Helvetica Neue", Helvetica, Arial, sans-serif;
-  }
-
-  a,
-  a:visited {
-color: #888;
-text-decoration: underline;
-  }
-  a:hover,
-  a:focus { color: #000; }
-
-  header {
-border-bottom: 2px solid #ddd;
-margin-bottom: 20px;
-overflow: hidden;
-padding: 20px 0;
-  }
-
-  header h1 {
-color: #888;
-float: left;
-font-size: 36px;
-font-weight: 300;
-  }
-
-  header a {
-float: right;
-font-size: 14px;
-  }
-
-  .container {
-margin: 0 auto;
-max-width: 1200px;
-min-width: 960px;
-padding: 0 40px;
-width: 90%;
-  }
-
-  .glyph {
-border-bottom: 1px dotted #ccc;
-padding: 10px 0 20px;
-margin-bottom: 20px;
-  }
-
-  .preview-glyphs { vertical-align: bottom; }
-
-  .preview-scale {
-color: #888;
-font-size: 12px;
-margin-top: 5px;
-  }
-
-  .step {
-display: inline-block;
-line-height: 1;
-position: relative;
-width: 10%;
-  }
-
-  .step .letters,
-  .step i {
--webkit-transition: opacity .3s;
--moz-transition: opacity .3s;
--ms-transition: opacity .3s;
--o-transition: opacity .3s;
-transition: opacity .3s;
-  }
-
-  .step:hover .letters { opacity: 1; }
-  .step:hover i { opacity: .3; }
-
-  .letters {
-opacity: .3;
-position: absolute;
-  }
-
-  .characters-off .letters { display: none; }
-  .characters-off .step:hover i { opacity: 1; }
-
-  
-  .size-12 { font-size: 12px; }
-  
-  .size-14 { font-size: 14px; }
-  
-  .size-16 { font-size: 16px; }
-  
-  .size-18 { font-size: 18px; }
-  
-  .size-21 { font-size: 21px; }
-  
-  .size-24 { font-size: 24px; }
-  
-  .size-36 { font-size: 36px; }
-  
-  .size-48 { font-size: 48px; }
-  
-  .size-60 { font-size: 60px; }
-  
-  .size-72 { font-size: 72px; }
-  
-
-  .usage { margin-top: 10px; }
-
-  .usage input {
-font-family: monospace;
-margin-right: 3px;
-padding: 2px 5px;
-text-align: center;
-  }
-
-  .usage .point { width: 150px; }
-
-  .usage .class { width: 250px; }
-
-  footer {
-color: #888;
-font-size: 12px;
-padding: 20px 0;
-  }
-
-  /* Icon Font: fauxtonicon3 */
-
-  @font-face {
-  font-family: "fauxtonicon3";
-  src: url("../fauxtonicon3.eot");
-  src: url("../fauxtonicon3.eot?#iefix") format("embedded-opentype"),
-   url("../fauxtonicon3.woff") format("woff"),
-   url("../fauxtonicon3.ttf") format("truetype"),
-   url("../fauxtonicon3.svg#fauxtonicon3") format("svg");
-  font-weight: normal;
-  font-style: normal;
-}
-
-@media screen and (-webkit-min-device-pixel-ratio:0) {
-  @font-face {
-font-family: "fauxtonicon3";
-src: url("../fauxtonicon3.svg#fauxtonicon3") format("svg");
-  }
-}
-
-  [data-icon]:before { content: attr(data-icon); }
-
-  [data-icon]:before,
-  .fonticon-activetasks:before,
-.fonticon-arrow-box-down:before,
-.fonticon-arrow-box-up:before,
-.fonticon-arrow_left:before,
-.fonticon-arrow_right:before,
-.fonticon-arrows-cw:before,
-.fonticon-article:before,
-.fonticon-attention-alt:before,
-.fonticon-attention-circled:before,
-.fonticon-bell:before,
-.fonticon-block:before,
-.fonticon-bookmark:before,
-.fonticon-bookmark-ribbon-wplus:before,
-.fonticon-burger:before,
-.fonticon-cancel:before,
-.fonticon-cancel-circled:before,
-.fonticon-cancel-circled2:before,
-.fonticon-circle-empty:before,
-.fonticon-clipboard:before,
-.fonticon-clock:before,
-.fonticon-cog:before,
-.fonticon-collapse:before,
-.fonticon-cw:before,
-.fonticon-dashboard:before,
-.fonticon-database:before,
-.fonticon-deselect-all:before,
-.fonticon-document:before,
-.fonticon-documents:before,
-.fonticon-dot-circled:before,
-.fonticon-down:before,
-.fonticon-down-1:before,
-.fonticon-down-circled:before,
-.fonticon-down-dir:before,
-.fonticon-down-open:before,
-.fonticon-drop-down-dots:before,

[08/10] fauxton commit: updated refs/heads/master to 3ff6ff6

2016-03-18 Thread benkeen
new wrench icon


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/c1ea1b6f
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/c1ea1b6f
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/c1ea1b6f

Branch: refs/heads/master
Commit: c1ea1b6f17a330b6a40a9708c13b7b79ad1d91a8
Parents: 0c07ddc
Author: Ben Keen 
Authored: Thu Mar 3 11:42:29 2016 -0800
Committer: Ben Keen 
Committed: Wed Mar 9 08:48:26 2016 -0800

--
 assets/fonts/fauxtonicon3.eot   |  Bin 19354 -> 0 bytes
 assets/fonts/fauxtonicon3.svg   |  718 ---
 assets/fonts/fauxtonicon3.ttf   |  Bin 19160 -> 0 bytes
 assets/fonts/fauxtonicon3.woff  |  Bin 11024 -> 0 bytes
 assets/fonts/fauxtonicon4.eot   |  Bin 0 -> 19518 bytes
 assets/fonts/fauxtonicon4.svg   |  726 +++
 assets/fonts/fauxtonicon4.ttf   |  Bin 0 -> 19324 bytes
 assets/fonts/fauxtonicon4.woff  |  Bin 0 -> 11148 bytes
 assets/fonts/fontcustom.yml |   12 +-
 .../fonts/styleguide/fauxtonicon3-preview.html  | 1973 -
 .../fonts/styleguide/fauxtonicon4-preview.html  | 1988 ++
 assets/icons/wrench2.svg|1 +
 assets/less/icons.less  |   27 +-
 13 files changed, 2736 insertions(+), 2709 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/c1ea1b6f/assets/fonts/fauxtonicon3.eot
--
diff --git a/assets/fonts/fauxtonicon3.eot b/assets/fonts/fauxtonicon3.eot
deleted file mode 100644
index a502707..000
Binary files a/assets/fonts/fauxtonicon3.eot and /dev/null differ



[05/10] fauxton commit: updated refs/heads/master to 3ff6ff6

2016-03-18 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/c1ea1b6f/assets/fonts/fauxtonicon4.svg
--
diff --git a/assets/fonts/fauxtonicon4.svg b/assets/fonts/fauxtonicon4.svg
new file mode 100644
index 000..ebe3931
--- /dev/null
+++ b/assets/fonts/fauxtonicon4.svg
@@ -0,0 +1,726 @@
+
+http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd; >
+
+http://www.w3.org/2000/svg; 
xmlns:xlink="http://www.w3.org/1999/xlink; version="1.1">
+
+Created by FontForge 20150302 at Thu Mar  3 11:44:26 2016
+ By Ben Keen
+Copyright (c) 2016, Ben Keen
+
+
+
+  
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/c1ea1b6f/assets/fonts/fauxtonicon4.ttf
--
diff --git a/assets/fonts/fauxtonicon4.ttf b/assets/fonts/fauxtonicon4.ttf
new file mode 100644
index 000..dfe12fc
Binary files /dev/null and b/assets/fonts/fauxtonicon4.ttf differ



[06/10] fauxton commit: updated refs/heads/master to 3ff6ff6

2016-03-18 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/c1ea1b6f/assets/fonts/fauxtonicon3.woff
--
diff --git a/assets/fonts/fauxtonicon3.woff b/assets/fonts/fauxtonicon3.woff
deleted file mode 100644
index b919b2e..000
Binary files a/assets/fonts/fauxtonicon3.woff and /dev/null differ

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/c1ea1b6f/assets/fonts/fauxtonicon4.eot
--
diff --git a/assets/fonts/fauxtonicon4.eot b/assets/fonts/fauxtonicon4.eot
new file mode 100644
index 000..40f7fbf
Binary files /dev/null and b/assets/fonts/fauxtonicon4.eot differ



fauxton commit: updated refs/heads/master to bcd091d

2016-03-07 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master bede2f30b -> bcd091de9


Minor regression fixes

Two small things:
- "CouchDB" instead of "Couch DB" text on login page
- the icons in the database top header menu were too large due to
the recent cog->vertical ellipsis icon change.  This fixes their
size and spacing.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/bcd091de
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/bcd091de
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/bcd091de

Branch: refs/heads/master
Commit: bcd091de9feedfa2b056453d35ab02cc1c61d0db
Parents: bede2f3
Author: Ben Keen 
Authored: Mon Mar 7 07:59:31 2016 -0800
Committer: Ben Keen 
Committed: Mon Mar 7 07:59:31 2016 -0800

--
 app/addons/auth/routes.js |  2 +-
 assets/less/fauxton.less  | 14 ++
 2 files changed, 11 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/bcd091de/app/addons/auth/routes.js
--
diff --git a/app/addons/auth/routes.js b/app/addons/auth/routes.js
index 1114ed1..fcd7ee2 100644
--- a/app/addons/auth/routes.js
+++ b/app/addons/auth/routes.js
@@ -39,7 +39,7 @@ function (app, FauxtonAPI, Auth, AuthActions, Components, 
ClusterActions) {
 },
 
 login: function () {
-  this.crumbs = [{ name: 'Log In to Couch DB', link: "#" }];
+  this.crumbs = [{ name: 'Log In to CouchDB', link: "#" }];
   this.setComponent('#dashboard-content', Components.LoginForm, { urlBack: 
app.getParams().urlback });
 },
 

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/bcd091de/assets/less/fauxton.less
--
diff --git a/assets/less/fauxton.less b/assets/less/fauxton.less
index 05ab404..0699495 100644
--- a/assets/less/fauxton.less
+++ b/assets/less/fauxton.less
@@ -453,17 +453,18 @@ body #dashboard .flex-body#breadcrumbs {
 .dropdown-toggle {
   color: #66;
   &:before {
-margin-top: 6px;
 margin: 6px -5px 0 6px;
   }
 }
-a {
-  padding: 10px;
-  text-decoration: none;
+.fonticon-vertical-ellipsis {
   &:before {
 font-size: 20px;
   }
 }
+a {
+  padding: 10px;
+  text-decoration: none;
+}
 
 .dropdown {
   height: @collapsedNavWidth;
@@ -473,6 +474,11 @@ body #dashboard .flex-body#breadcrumbs {
 .dropdown-menu {
   left: -115px;
   top: 48px;
+
+  a.icon:before {
+font-size: 14px;
+padding-right: 7px;
+  }
 }
   }
 }



fauxton commit: updated refs/heads/master to bede2f3

2016-03-03 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master c9bf8a59a -> bede2f30b


Assorted button updates

This makes various updates to buttons through Fauxton as per
Justin's notes: sizes, background colours, labels, etc. and a
few related changes.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/bede2f30
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/bede2f30
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/bede2f30

Branch: refs/heads/master
Commit: bede2f30b5b7c0dd9492991fbfb7058073ea9238
Parents: c9bf8a5
Author: Ben Keen 
Authored: Tue Mar 1 16:40:51 2016 -0800
Committer: Ben Keen 
Committed: Thu Mar 3 10:12:38 2016 -0800

--
 app/addons/auth/components.react.jsx|  4 +-
 app/addons/auth/routes.js   |  3 +-
 .../components/assets/less/components.less  |  1 +
 app/addons/components/assets/less/modals.less   | 10 +
 .../components/react-components.react.jsx   | 25 +++--
 .../tests/confirmButtonSpec.react.jsx   | 17 +
 .../documents/doc-editor/components.react.jsx   | 29 +--
 app/addons/fauxton/assets/less/components.less  | 14 +++
 app/addons/fauxton/components.react.jsx | 39 ++--
 app/addons/permissions/components.react.jsx |  4 +-
 app/addons/replication/templates/form.html  |  5 ++-
 app/addons/setup/setup.react.jsx| 15 +---
 app/addons/verifyinstall/components.react.jsx   |  2 +-
 13 files changed, 127 insertions(+), 41 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/bede2f30/app/addons/auth/components.react.jsx
--
diff --git a/app/addons/auth/components.react.jsx 
b/app/addons/auth/components.react.jsx
index 448c7c0..91f1465 100644
--- a/app/addons/auth/components.react.jsx
+++ b/app/addons/auth/components.react.jsx
@@ -87,7 +87,7 @@ define([
   
 
   
-Login with your username and password
+Enter your username and password.
   
   
@@ -95,7 +95,7 @@ define([
   
   
-  Login
+  Log In
 
   
 

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/bede2f30/app/addons/auth/routes.js
--
diff --git a/app/addons/auth/routes.js b/app/addons/auth/routes.js
index 9fd7189..1114ed1 100644
--- a/app/addons/auth/routes.js
+++ b/app/addons/auth/routes.js
@@ -39,8 +39,7 @@ function (app, FauxtonAPI, Auth, AuthActions, Components, 
ClusterActions) {
 },
 
 login: function () {
-  this.crumbs = [{ name: 'Login', link: "#" }];
-
+  this.crumbs = [{ name: 'Log In to Couch DB', link: "#" }];
   this.setComponent('#dashboard-content', Components.LoginForm, { urlBack: 
app.getParams().urlback });
 },
 

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/bede2f30/app/addons/components/assets/less/components.less
--
diff --git a/app/addons/components/assets/less/components.less 
b/app/addons/components/assets/less/components.less
index 9b452ea..fa4fc01 100644
--- a/app/addons/components/assets/less/components.less
+++ b/app/addons/components/assets/less/components.less
@@ -19,3 +19,4 @@
 @import "code-editor.less";
 @import "bulk-selector.less";
 @import "badges.less";
+@import "modals.less";

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/bede2f30/app/addons/components/assets/less/modals.less
--
diff --git a/app/addons/components/assets/less/modals.less 
b/app/addons/components/assets/less/modals.less
new file mode 100644
index 000..7d51966
--- /dev/null
+++ b/app/addons/components/assets/less/modals.less
@@ -0,0 +1,10 @@
+@import "../../../../../assets/less/variables.less";
+
+.modal .cancel-link {
+  margin: 0 5px 0 15px;
+  font-size: 14px;
+  color: @defaultText;
+  &:hover {
+color: @brandPrimaryDark;
+  }
+}

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/bede2f30/app/addons/components/react-components.react.jsx
--
diff --git a/app/addons/components/react-components.react.jsx 
b/app/addons/components/react-components.react.jsx
index 8ddeecf..a4f2c06 100644
--- a/app/addons/components/react-components.react.jsx
+++ b/app/addons/components/react-components.react.jsx
@@ -1114,10 +1114,29 @@ function (app, FauxtonAPI, React, ReactDOM, Actions, 
Stores, FauxtonComponents,
   });
 
 

[8/8] fauxton commit: updated refs/heads/master to c9bf8a5

2016-03-03 Thread benkeen
new icon


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/79271629
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/79271629
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/79271629

Branch: refs/heads/master
Commit: 792716296e58724a90becf3647c80b98f0027ea1
Parents: b7c7865
Author: Ben Keen 
Authored: Mon Feb 22 19:55:54 2016 -0800
Committer: Ben Keen 
Committed: Thu Mar 3 09:00:16 2016 -0800

--
 assets/fonts/README.md  |5 +-
 assets/fonts/fauxtonicon2.eot   |  Bin 19214 -> 0 bytes
 assets/fonts/fauxtonicon2.svg   |  712 ---
 assets/fonts/fauxtonicon2.ttf   |  Bin 19020 -> 0 bytes
 assets/fonts/fauxtonicon2.woff  |  Bin 10992 -> 0 bytes
 assets/fonts/fauxtonicon3.eot   |  Bin 0 -> 19354 bytes
 assets/fonts/fauxtonicon3.svg   |  718 +++
 assets/fonts/fauxtonicon3.ttf   |  Bin 0 -> 19160 bytes
 assets/fonts/fauxtonicon3.woff  |  Bin 0 -> 11024 bytes
 .../fonts/styleguide/fauxtonicon2-preview.html  | 1958 -
 .../fonts/styleguide/fauxtonicon3-preview.html  | 1973 ++
 assets/icons/vertical-ellipsis.svg  |   10 +
 assets/less/icons.less  |   29 +-
 13 files changed, 2721 insertions(+), 2684 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/79271629/assets/fonts/README.md
--
diff --git a/assets/fonts/README.md b/assets/fonts/README.md
index 4a7c079..02a11b8 100644
--- a/assets/fonts/README.md
+++ b/assets/fonts/README.md
@@ -23,7 +23,9 @@ That should install the gem in a path like below:
 
 4. Add your new font(s) in SVG format to the `assets/icons` folder.
 
-5. Run the command `bundle exec fontcustom compile`. That generates the 
following:
+5. If Gemfile.lock exists, delete it. The run `bundle install`
+
+6. Run the command `bundle exec fontcustom compile`. That generates the 
following:
 
 - an `icons.less` file [LOCAL_COUCHDB_REPO]/src/couchdb-fauxton/assets/less
 - a `fauxtonicon-preview.html` preview 
[LOCAL_COUCHDB_REPO]/src/couchdb-fauxton/assets/fonts/styleguide
@@ -33,6 +35,7 @@ That should install the gem in a path like below:
   * `[font name].ttf`
   * `[font name].woff` 
 
+7. Delete the old fauxtoniconX.*** files, and 
./styleguide/fauxtoniconX-preview.html file.
 
 For more info on Fontcustom, check out their documenation: [Fontcustom 
documentation](https://github.com/FontCustom/fontcustom)
 

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/79271629/assets/fonts/fauxtonicon2.eot
--
diff --git a/assets/fonts/fauxtonicon2.eot b/assets/fonts/fauxtonicon2.eot
deleted file mode 100644
index 39c8787..000
Binary files a/assets/fonts/fauxtonicon2.eot and /dev/null differ



[6/8] fauxton commit: updated refs/heads/master to c9bf8a5

2016-03-03 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/79271629/assets/fonts/fauxtonicon2.woff
--
diff --git a/assets/fonts/fauxtonicon2.woff b/assets/fonts/fauxtonicon2.woff
deleted file mode 100644
index 682c797..000
Binary files a/assets/fonts/fauxtonicon2.woff and /dev/null differ

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/79271629/assets/fonts/fauxtonicon3.eot
--
diff --git a/assets/fonts/fauxtonicon3.eot b/assets/fonts/fauxtonicon3.eot
new file mode 100644
index 000..a502707
Binary files /dev/null and b/assets/fonts/fauxtonicon3.eot differ



[4/8] fauxton commit: updated refs/heads/master to c9bf8a5

2016-03-03 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/79271629/assets/fonts/fauxtonicon3.woff
--
diff --git a/assets/fonts/fauxtonicon3.woff b/assets/fonts/fauxtonicon3.woff
new file mode 100644
index 000..b919b2e
Binary files /dev/null and b/assets/fonts/fauxtonicon3.woff differ

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/79271629/assets/fonts/styleguide/fauxtonicon2-preview.html
--
diff --git a/assets/fonts/styleguide/fauxtonicon2-preview.html 
b/assets/fonts/styleguide/fauxtonicon2-preview.html
deleted file mode 100644
index acf59a4..000
--- a/assets/fonts/styleguide/fauxtonicon2-preview.html
+++ /dev/null
@@ -1,1958 +0,0 @@
-
-
-  
-fauxtonicon2 glyphs preview
-
-
-  /* Page Styles */
-
-  * {
--moz-box-sizing: border-box;
--webkit-box-sizing: border-box;
-box-sizing: border-box;
-margin: 0;
-padding: 0;
-  }
-
-  body {
-background: #fff;
-color: #444;
-font: 16px/1.5 "Helvetica Neue", Helvetica, Arial, sans-serif;
-  }
-
-  a,
-  a:visited {
-color: #888;
-text-decoration: underline;
-  }
-  a:hover,
-  a:focus { color: #000; }
-
-  header {
-border-bottom: 2px solid #ddd;
-margin-bottom: 20px;
-overflow: hidden;
-padding: 20px 0;
-  }
-
-  header h1 {
-color: #888;
-float: left;
-font-size: 36px;
-font-weight: 300;
-  }
-
-  header a {
-float: right;
-font-size: 14px;
-  }
-
-  .container {
-margin: 0 auto;
-max-width: 1200px;
-min-width: 960px;
-padding: 0 40px;
-width: 90%;
-  }
-
-  .glyph {
-border-bottom: 1px dotted #ccc;
-padding: 10px 0 20px;
-margin-bottom: 20px;
-  }
-
-  .preview-glyphs { vertical-align: bottom; }
-
-  .preview-scale {
-color: #888;
-font-size: 12px;
-margin-top: 5px;
-  }
-
-  .step {
-display: inline-block;
-line-height: 1;
-position: relative;
-width: 10%;
-  }
-
-  .step .letters,
-  .step i {
--webkit-transition: opacity .3s;
--moz-transition: opacity .3s;
--ms-transition: opacity .3s;
--o-transition: opacity .3s;
-transition: opacity .3s;
-  }
-
-  .step:hover .letters { opacity: 1; }
-  .step:hover i { opacity: .3; }
-
-  .letters {
-opacity: .3;
-position: absolute;
-  }
-
-  .characters-off .letters { display: none; }
-  .characters-off .step:hover i { opacity: 1; }
-
-  
-  .size-12 { font-size: 12px; }
-  
-  .size-14 { font-size: 14px; }
-  
-  .size-16 { font-size: 16px; }
-  
-  .size-18 { font-size: 18px; }
-  
-  .size-21 { font-size: 21px; }
-  
-  .size-24 { font-size: 24px; }
-  
-  .size-36 { font-size: 36px; }
-  
-  .size-48 { font-size: 48px; }
-  
-  .size-60 { font-size: 60px; }
-  
-  .size-72 { font-size: 72px; }
-  
-
-  .usage { margin-top: 10px; }
-
-  .usage input {
-font-family: monospace;
-margin-right: 3px;
-padding: 2px 5px;
-text-align: center;
-  }
-
-  .usage .point { width: 150px; }
-
-  .usage .class { width: 250px; }
-
-  footer {
-color: #888;
-font-size: 12px;
-padding: 20px 0;
-  }
-
-  /* Icon Font: fauxtonicon2 */
-
-  @font-face {
-  font-family: "fauxtonicon2";
-  src: url("../fauxtonicon2.eot");
-  src: url("../fauxtonicon2.eot?#iefix") format("embedded-opentype"),
-   url("../fauxtonicon2.woff") format("woff"),
-   url("../fauxtonicon2.ttf") format("truetype"),
-   url("../fauxtonicon2.svg#fauxtonicon2") format("svg");
-  font-weight: normal;
-  font-style: normal;
-}
-
-@media screen and (-webkit-min-device-pixel-ratio:0) {
-  @font-face {
-font-family: "fauxtonicon2";
-src: url("../fauxtonicon2.svg#fauxtonicon2") format("svg");
-  }
-}
-
-  [data-icon]:before { content: attr(data-icon); }
-
-  [data-icon]:before,
-  .fonticon-activetasks:before,
-.fonticon-arrow-box-down:before,
-.fonticon-arrow-box-up:before,
-.fonticon-arrow_left:before,
-.fonticon-arrow_right:before,
-.fonticon-arrows-cw:before,
-.fonticon-article:before,
-.fonticon-attention-alt:before,
-.fonticon-attention-circled:before,
-.fonticon-bell:before,
-.fonticon-block:before,
-.fonticon-bookmark:before,
-.fonticon-bookmark-ribbon-wplus:before,
-.fonticon-burger:before,
-.fonticon-cancel:before,
-.fonticon-cancel-circled:before,
-.fonticon-cancel-circled2:before,
-.fonticon-circle-empty:before,
-.fonticon-clipboard:before,
-.fonticon-clock:before,
-.fonticon-cog:before,
-.fonticon-collapse:before,

[3/8] fauxton commit: updated refs/heads/master to c9bf8a5

2016-03-03 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/79271629/assets/fonts/styleguide/fauxtonicon3-preview.html
--
diff --git a/assets/fonts/styleguide/fauxtonicon3-preview.html 
b/assets/fonts/styleguide/fauxtonicon3-preview.html
new file mode 100644
index 000..18ddadf
--- /dev/null
+++ b/assets/fonts/styleguide/fauxtonicon3-preview.html
@@ -0,0 +1,1973 @@
+
+
+  
+fauxtonicon3 glyphs preview
+
+
+  /* Page Styles */
+
+  * {
+-moz-box-sizing: border-box;
+-webkit-box-sizing: border-box;
+box-sizing: border-box;
+margin: 0;
+padding: 0;
+  }
+
+  body {
+background: #fff;
+color: #444;
+font: 16px/1.5 "Helvetica Neue", Helvetica, Arial, sans-serif;
+  }
+
+  a,
+  a:visited {
+color: #888;
+text-decoration: underline;
+  }
+  a:hover,
+  a:focus { color: #000; }
+
+  header {
+border-bottom: 2px solid #ddd;
+margin-bottom: 20px;
+overflow: hidden;
+padding: 20px 0;
+  }
+
+  header h1 {
+color: #888;
+float: left;
+font-size: 36px;
+font-weight: 300;
+  }
+
+  header a {
+float: right;
+font-size: 14px;
+  }
+
+  .container {
+margin: 0 auto;
+max-width: 1200px;
+min-width: 960px;
+padding: 0 40px;
+width: 90%;
+  }
+
+  .glyph {
+border-bottom: 1px dotted #ccc;
+padding: 10px 0 20px;
+margin-bottom: 20px;
+  }
+
+  .preview-glyphs { vertical-align: bottom; }
+
+  .preview-scale {
+color: #888;
+font-size: 12px;
+margin-top: 5px;
+  }
+
+  .step {
+display: inline-block;
+line-height: 1;
+position: relative;
+width: 10%;
+  }
+
+  .step .letters,
+  .step i {
+-webkit-transition: opacity .3s;
+-moz-transition: opacity .3s;
+-ms-transition: opacity .3s;
+-o-transition: opacity .3s;
+transition: opacity .3s;
+  }
+
+  .step:hover .letters { opacity: 1; }
+  .step:hover i { opacity: .3; }
+
+  .letters {
+opacity: .3;
+position: absolute;
+  }
+
+  .characters-off .letters { display: none; }
+  .characters-off .step:hover i { opacity: 1; }
+
+  
+  .size-12 { font-size: 12px; }
+  
+  .size-14 { font-size: 14px; }
+  
+  .size-16 { font-size: 16px; }
+  
+  .size-18 { font-size: 18px; }
+  
+  .size-21 { font-size: 21px; }
+  
+  .size-24 { font-size: 24px; }
+  
+  .size-36 { font-size: 36px; }
+  
+  .size-48 { font-size: 48px; }
+  
+  .size-60 { font-size: 60px; }
+  
+  .size-72 { font-size: 72px; }
+  
+
+  .usage { margin-top: 10px; }
+
+  .usage input {
+font-family: monospace;
+margin-right: 3px;
+padding: 2px 5px;
+text-align: center;
+  }
+
+  .usage .point { width: 150px; }
+
+  .usage .class { width: 250px; }
+
+  footer {
+color: #888;
+font-size: 12px;
+padding: 20px 0;
+  }
+
+  /* Icon Font: fauxtonicon3 */
+
+  @font-face {
+  font-family: "fauxtonicon3";
+  src: url("../fauxtonicon3.eot");
+  src: url("../fauxtonicon3.eot?#iefix") format("embedded-opentype"),
+   url("../fauxtonicon3.woff") format("woff"),
+   url("../fauxtonicon3.ttf") format("truetype"),
+   url("../fauxtonicon3.svg#fauxtonicon3") format("svg");
+  font-weight: normal;
+  font-style: normal;
+}
+
+@media screen and (-webkit-min-device-pixel-ratio:0) {
+  @font-face {
+font-family: "fauxtonicon3";
+src: url("../fauxtonicon3.svg#fauxtonicon3") format("svg");
+  }
+}
+
+  [data-icon]:before { content: attr(data-icon); }
+
+  [data-icon]:before,
+  .fonticon-activetasks:before,
+.fonticon-arrow-box-down:before,
+.fonticon-arrow-box-up:before,
+.fonticon-arrow_left:before,
+.fonticon-arrow_right:before,
+.fonticon-arrows-cw:before,
+.fonticon-article:before,
+.fonticon-attention-alt:before,
+.fonticon-attention-circled:before,
+.fonticon-bell:before,
+.fonticon-block:before,
+.fonticon-bookmark:before,
+.fonticon-bookmark-ribbon-wplus:before,
+.fonticon-burger:before,
+.fonticon-cancel:before,
+.fonticon-cancel-circled:before,
+.fonticon-cancel-circled2:before,
+.fonticon-circle-empty:before,
+.fonticon-clipboard:before,
+.fonticon-clock:before,
+.fonticon-cog:before,
+.fonticon-collapse:before,
+.fonticon-cw:before,
+.fonticon-dashboard:before,
+.fonticon-database:before,
+.fonticon-deselect-all:before,
+.fonticon-document:before,
+.fonticon-documents:before,
+.fonticon-dot-circled:before,
+.fonticon-down:before,
+.fonticon-down-1:before,
+.fonticon-down-circled:before,
+.fonticon-down-dir:before,
+.fonticon-down-open:before,
+.fonticon-drop-down-dots:before,

[2/8] fauxton commit: updated refs/heads/master to c9bf8a5

2016-03-03 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/79271629/assets/icons/vertical-ellipsis.svg
--
diff --git a/assets/icons/vertical-ellipsis.svg 
b/assets/icons/vertical-ellipsis.svg
new file mode 100644
index 000..536604f
--- /dev/null
+++ b/assets/icons/vertical-ellipsis.svg
@@ -0,0 +1,10 @@
+
+http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd; >
+http://www.w3.org/2000/svg; 
xmlns:xlink="http://www.w3.org/1999/xlink; version="1.1" viewBox="0 -256 1792 
1792">
+  
+   
+  
+
+

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/79271629/assets/less/icons.less
--
diff --git a/assets/less/icons.less b/assets/less/icons.less
index ec8c9c0..b71d7ea 100644
--- a/assets/less/icons.less
+++ b/assets/less/icons.less
@@ -1,5 +1,5 @@
 /*
-*  Icon Font: fauxtonicon2
+*  Icon Font: fauxtonicon3
 */
 
 /*  Licensed under the Apache License, Version 2.0 (the "License"); you may not
@@ -18,7 +18,7 @@
 /* had to add a custom template to the generator to get this to compile to 
append the proper path and specify  "url" instead of "font-url":
 
https://github.com/seanbarclay/fontcustom/blob/1c3ad3d2633d3a8add39e8827115394e9ec02d88/lib/fontcustom/generator/template.rb
 */
-@fauxtonFont: "fauxtonicon2";
+@fauxtonFont: "fauxtonicon3";
 @icon-activetasks: "\f100";
 @icon-arrow-box-down: "\f101";
 @icon-arrow-box-up: "\f102";
@@ -135,23 +135,24 @@ 
https://github.com/seanbarclay/fontcustom/blob/1c3ad3d2633d3a8add39e8827115394e9
 @icon-up-open: "\f171";
 @icon-user: "\f172";
 @icon-users: "\f173";
-@icon-wrench: "\f174";
+@icon-vertical-ellipsis: "\f174";
+@icon-wrench: "\f175";
 
 @font-face {
-  font-family: "fauxtonicon2";
-  src: url("../fonts/fauxtonicon2.eot");
-  src: url("../fonts/fauxtonicon2.eot?#iefix") format("embedded-opentype"),
-   url("../fonts/fauxtonicon2.woff") format("woff"),
-   url("../fonts/fauxtonicon2.ttf") format("truetype"),
-   url("../fonts/fauxtonicon2.svg#fauxtonicon2") format("svg");
+  font-family: "fauxtonicon3";
+  src: url("../fonts/fauxtonicon3.eot");
+  src: url("../fonts/fauxtonicon3.eot?#iefix") format("embedded-opentype"),
+   url("../fonts/fauxtonicon3.woff") format("woff"),
+   url("../fonts/fauxtonicon3.ttf") format("truetype"),
+   url("../fonts/fauxtonicon3.svg#fauxtonicon3") format("svg");
   font-weight: normal;
   font-style: normal;
 }
 
 @media screen and (-webkit-min-device-pixel-ratio:0) {
   @font-face {
-font-family: "fauxtonicon2";
-src: url("../fonts/fauxtonicon2.svg#fauxtonicon2") format("svg");
+font-family: "fauxtonicon3";
+src: url("../fonts/fauxtonicon3.svg#fauxtonicon3") format("svg");
   }
 }
 
@@ -274,9 +275,10 @@ 
https://github.com/seanbarclay/fontcustom/blob/1c3ad3d2633d3a8add39e8827115394e9
 .fonticon-up-open:before,
 .fonticon-user:before,
 .fonticon-users:before,
+.fonticon-vertical-ellipsis:before,
 .fonticon-wrench:before {
   display: inline-block;
-  font-family: "fauxtonicon2";
+  font-family: "fauxtonicon3";
   font-style: normal;
   font-weight: normal;
   font-variant: normal;
@@ -405,4 +407,5 @@ 
https://github.com/seanbarclay/fontcustom/blob/1c3ad3d2633d3a8add39e8827115394e9
 .fonticon-up-open { &:before { content: "\f171"; }}
 .fonticon-user { &:before { content: "\f172"; }}
 .fonticon-users { &:before { content: "\f173"; }}
-.fonticon-wrench { &:before { content: "\f174"; }}
+.fonticon-vertical-ellipsis { &:before { content: "\f174"; }}
+.fonticon-wrench { &:before { content: "\f175"; }}



[1/8] fauxton commit: updated refs/heads/master to c9bf8a5

2016-03-03 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master b7c786586 -> c9bf8a59a


new db icon


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/c9bf8a59
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/c9bf8a59
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/c9bf8a59

Branch: refs/heads/master
Commit: c9bf8a59a686eb27153d51835a3409855d9ff534
Parents: 7927162
Author: Ben Keen 
Authored: Mon Feb 22 20:01:42 2016 -0800
Committer: Ben Keen 
Committed: Thu Mar 3 09:00:16 2016 -0800

--
 app/addons/components/react-components.react.jsx   | 2 +-
 app/addons/databases/tests/nightwatch/deletesDatabase.js   | 4 ++--
 .../databases/tests/nightwatch/deletesDatabaseSpecialChars.js  | 4 ++--
 app/addons/documents/tests/nightwatch/deleteDatabaseModal.js   | 4 ++--
 assets/less/fauxton.less   | 6 +-
 5 files changed, 12 insertions(+), 8 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/c9bf8a59/app/addons/components/react-components.react.jsx
--
diff --git a/app/addons/components/react-components.react.jsx 
b/app/addons/components/react-components.react.jsx
index 81b7d05..8ddeecf 100644
--- a/app/addons/components/react-components.react.jsx
+++ b/app/addons/components/react-components.react.jsx
@@ -1528,7 +1528,7 @@ function (app, FauxtonAPI, React, ReactDOM, Actions, 
Stores, FauxtonComponents,
 connectToStores: connectToStores,
 ApiBarController: ApiBarController,
 renderMenuDropDown: function (el, opts) {
-  ReactDOM.render(, 
el);
+  ReactDOM.render(, el);
 },
 removeMenuDropDown: function (el) {
   ReactDOM.unmountComponentAtNode(el);

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/c9bf8a59/app/addons/databases/tests/nightwatch/deletesDatabase.js
--
diff --git a/app/addons/databases/tests/nightwatch/deletesDatabase.js 
b/app/addons/databases/tests/nightwatch/deletesDatabase.js
index d3f7eea..f28c199 100644
--- a/app/addons/databases/tests/nightwatch/deletesDatabase.js
+++ b/app/addons/databases/tests/nightwatch/deletesDatabase.js
@@ -20,8 +20,8 @@ module.exports = {
   .createDatabase(newDatabaseName)
   .loginToGUI()
   .url(baseUrl + '/#/database/' + newDatabaseName + '/_all_docs')
-  .waitForElementPresent('#header-dropdown-menu 
a.dropdown-toggle.icon.fonticon-cog', waitTime, false)
-  .clickWhenVisible("#header-dropdown-menu 
a.dropdown-toggle.icon.fonticon-cog", waitTime, false)
+  .waitForElementPresent('#header-dropdown-menu 
a.dropdown-toggle.icon.fonticon-vertical-ellipsis', waitTime, false)
+  .clickWhenVisible("#header-dropdown-menu 
a.dropdown-toggle.icon.fonticon-vertical-ellipsis", waitTime, false)
   .waitForElementPresent('#header-dropdown-menu .fonticon-trash', 
waitTime, false)
   .waitForElementPresent('#delete-db-modal', waitTime, false)
   .clickWhenVisible('#header-dropdown-menu .fonticon-trash', waitTime, 
false)

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/c9bf8a59/app/addons/databases/tests/nightwatch/deletesDatabaseSpecialChars.js
--
diff --git 
a/app/addons/databases/tests/nightwatch/deletesDatabaseSpecialChars.js 
b/app/addons/databases/tests/nightwatch/deletesDatabaseSpecialChars.js
index d43c330..de556d9 100644
--- a/app/addons/databases/tests/nightwatch/deletesDatabaseSpecialChars.js
+++ b/app/addons/databases/tests/nightwatch/deletesDatabaseSpecialChars.js
@@ -20,8 +20,8 @@ module.exports = {
   .createDatabase(newDatabaseName)
   .loginToGUI()
   .url(baseUrl + '/#/database/' + encodeURIComponent(newDatabaseName) + 
'/_all_docs')
-  .waitForElementPresent('#header-dropdown-menu 
a.dropdown-toggle.icon.fonticon-cog', waitTime, false)
-  .clickWhenVisible("#header-dropdown-menu 
a.dropdown-toggle.icon.fonticon-cog", waitTime, false)
+  .waitForElementPresent('#header-dropdown-menu 
a.dropdown-toggle.icon.fonticon-vertical-ellipsis', waitTime, false)
+  .clickWhenVisible("#header-dropdown-menu 
a.dropdown-toggle.icon.fonticon-vertical-ellipsis", waitTime, false)
   .waitForElementPresent('#header-dropdown-menu .fonticon-trash', 
waitTime, false)
   .clickWhenVisible('#header-dropdown-menu .fonticon-trash', waitTime, 
false)
   .waitForElementPresent('#db-name', waitTime, false)

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/c9bf8a59/app/addons/documents/tests/nightwatch/deleteDatabaseModal.js

[7/8] fauxton commit: updated refs/heads/master to c9bf8a5

2016-03-03 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/79271629/assets/fonts/fauxtonicon2.svg
--
diff --git a/assets/fonts/fauxtonicon2.svg b/assets/fonts/fauxtonicon2.svg
deleted file mode 100644
index d544cc4..000
--- a/assets/fonts/fauxtonicon2.svg
+++ /dev/null
@@ -1,712 +0,0 @@
-
-http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd; >
-
-http://www.w3.org/2000/svg; 
xmlns:xlink="http://www.w3.org/1999/xlink; version="1.1">
-
-Created by FontForge 20150302 at Sat Jan 30 13:01:54 2016
- By Ben Keen
-Copyright (c) 2016, Ben Keen
-
-
-
-  
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/79271629/assets/fonts/fauxtonicon2.ttf
--
diff --git a/assets/fonts/fauxtonicon2.ttf b/assets/fonts/fauxtonicon2.ttf
deleted file mode 100644
index 5b1f537..000
Binary files a/assets/fonts/fauxtonicon2.ttf and /dev/null differ



[5/8] fauxton commit: updated refs/heads/master to c9bf8a5

2016-03-03 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/79271629/assets/fonts/fauxtonicon3.svg
--
diff --git a/assets/fonts/fauxtonicon3.svg b/assets/fonts/fauxtonicon3.svg
new file mode 100644
index 000..4a92486
--- /dev/null
+++ b/assets/fonts/fauxtonicon3.svg
@@ -0,0 +1,718 @@
+
+http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd; >
+
+http://www.w3.org/2000/svg; 
xmlns:xlink="http://www.w3.org/1999/xlink; version="1.1">
+
+Created by FontForge 20150302 at Mon Feb 22 19:53:52 2016
+ By Ben Keen
+Copyright (c) 2016, Ben Keen
+
+
+
+  
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/79271629/assets/fonts/fauxtonicon3.ttf
--
diff --git a/assets/fonts/fauxtonicon3.ttf b/assets/fonts/fauxtonicon3.ttf
new file mode 100644
index 000..08ddb2b
Binary files /dev/null and b/assets/fonts/fauxtonicon3.ttf differ



fauxton commit: updated refs/heads/master to b8c4554

2016-02-23 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master 37cfb74bc -> b8c4554cf


Truncate large docs in JSON view

Currently there's no restriction on the size of documents that
we attempt to display in JSON view. If the user uses
include_docs=true it can actually crash people's browsers if the
documents are too large.

This PR adds in a truncation option to the Document component,
defaulting to enabled, and 500 lines. It displays a simple
"truncated" note at the bottom of the result.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/b8c4554c
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/b8c4554c
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/b8c4554c

Branch: refs/heads/master
Commit: b8c4554cfb40aab253328afd31b77591d5246fcc
Parents: 37cfb74
Author: Ben Keen 
Authored: Tue Feb 16 16:25:22 2016 -0800
Committer: Ben Keen 
Committed: Tue Feb 23 10:19:34 2016 -0800

--
 app/addons/components/assets/less/docs.less |  8 
 .../components/react-components.react.jsx   | 42 +++-
 app/addons/components/tests/docSpec.react.jsx   | 39 ++
 app/addons/documents/helpers.js | 18 -
 app/addons/documents/tests/helpersSpec.js   | 21 ++
 5 files changed, 116 insertions(+), 12 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/b8c4554c/app/addons/components/assets/less/docs.less
--
diff --git a/app/addons/components/assets/less/docs.less 
b/app/addons/components/assets/less/docs.less
index ed93f34..04b79f8 100644
--- a/app/addons/components/assets/less/docs.less
+++ b/app/addons/components/assets/less/docs.less
@@ -105,3 +105,11 @@
 background-color: @docCheckBoxCheckedBG;
   }
 }
+
+.doc-content-truncated {
+  background-color: #4d4d4d;
+  color: #bb;
+  padding: 10px;
+  font-size: 13px;
+  margin: 0;
+}

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/b8c4554c/app/addons/components/react-components.react.jsx
--
diff --git a/app/addons/components/react-components.react.jsx 
b/app/addons/components/react-components.react.jsx
index 356197f..499eb97 100644
--- a/app/addons/components/react-components.react.jsx
+++ b/app/addons/components/react-components.react.jsx
@@ -17,7 +17,6 @@ define([
   'react-dom',
   'addons/components/actions',
   'addons/components/stores',
-
   'addons/fauxton/components.react',
   'addons/documents/helpers',
   'ace/ace',
@@ -25,8 +24,8 @@ define([
   'libs/react-bootstrap'
 ],
 
-function (app, FauxtonAPI, React, ReactDOM, Actions, Stores,
-  FauxtonComponents, Helpers, ace, beautifyHelper, ReactBootstrap) {
+function (app, FauxtonAPI, React, ReactDOM, Actions, Stores, 
FauxtonComponents, Helpers, ace, beautifyHelper,
+  ReactBootstrap) {
 
   var ReactCSSTransitionGroup = React.addons.CSSTransitionGroup;
   var componentStore = Stores.componentStore;
@@ -36,7 +35,7 @@ function (app, FauxtonAPI, React, ReactDOM, Actions, Stores,
 
 propTypes: {
   elements: React.PropTypes.array.isRequired,
-  removeBadge: React.PropTypes.func.isRequired,
+  removeBadge: React.PropTypes.func.isRequired
 },
 
 getDefaultProps: function () {
@@ -994,7 +993,16 @@ function (app, FauxtonAPI, React, ReactDOM, Actions, 
Stores,
   var Document = React.createClass({
 propTypes: {
   docIdentifier: React.PropTypes.string.isRequired,
-  docChecked: React.PropTypes.func.isRequired
+  docChecked: React.PropTypes.func.isRequired,
+  truncate: React.PropTypes.bool,
+  maxRows: React.PropTypes.number
+},
+
+getDefaultProps: function () {
+  return {
+truncate: true,
+maxRows: 500
+  };
 },
 
 onChange: function (e) {
@@ -1046,13 +1054,25 @@ function (app, FauxtonAPI, React, ReactDOM, Actions, 
Stores,
 },
 
 getDocContent: function () {
-  if (!_.isEmpty(this.props.docContent)) {
-return (
-  
-{this.props.docContent}
-  
-);
+  if (_.isEmpty(this.props.docContent)) {
+return null;
+  }
+
+  // if need be, truncate the document
+  var content = this.props.docContent;
+  var isTruncated = false;
+  if (this.props.truncate) {
+var result = Helpers.truncateDoc(this.props.docContent, 
this.props.maxRows);
+isTruncated = result.isTruncated;
+content = result.content;
   }
+
+  return (
+
+  {content}
+  {isTruncated ? (truncated) : null}
+
+  );
 },
 
 render: function () {


fauxton commit: updated refs/heads/master to 37cfb74

2016-02-23 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master 40d956f07 -> 37cfb74bc


Make DesignDocSelector into a dumb component

The dumbifies the DesignDocSelector to remove all ties a to
store and passes everything via props so we can get more use out
of it. Specifically, I need this for my next PR which includes
a new, generic Clone Index modal that'll use this component
in different contexts (i.e. all index types).

- Includes validation in the component to make it more
self-contained and allows for better UX by focusing on error
fields.
- Save action significantly simplied to remove custom update
logic and always redirect to appropriate View page.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/37cfb74b
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/37cfb74b
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/37cfb74b

Branch: refs/heads/master
Commit: 37cfb74bc3acf62e08e08a30c09bcdda98249b56
Parents: 40d956f
Author: Ben Keen 
Authored: Fri Feb 19 11:05:04 2016 -0800
Committer: Ben Keen 
Committed: Tue Feb 23 07:24:34 2016 -0800

--
 .../documents/assets/less/view-editor.less  |  23 ++
 app/addons/documents/index-editor/actions.js| 112 -
 .../documents/index-editor/actiontypes.js   |   1 +
 .../documents/index-editor/components.react.jsx | 187 ---
 app/addons/documents/index-editor/stores.js |  66 --
 .../documents/index-editor/tests/actionsSpec.js | 208 +
 .../documents/index-editor/tests/storesSpec.js  |  61 +++--
 .../tests/viewIndex.componentsSpec.react.jsx| 229 +++
 app/addons/documents/routes-index-editor.js |   3 +-
 9 files changed, 388 insertions(+), 502 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/37cfb74b/app/addons/documents/assets/less/view-editor.less
--
diff --git a/app/addons/documents/assets/less/view-editor.less 
b/app/addons/documents/assets/less/view-editor.less
index 05b60ab..51bca44 100644
--- a/app/addons/documents/assets/less/view-editor.less
+++ b/app/addons/documents/assets/less/view-editor.less
@@ -217,3 +217,26 @@ body .view-query-save .control-group {
 .spanX (@gridColumns);
   }
 }
+
+
+/* temporary CSS overrides. This will be removed once the Views is moved to 
the standard 2-panel layout */
+.define-view .new-ddoc-section {
+  .span5 {
+.label {
+  display: none;
+}
+.control-label {
+  display: none;
+}
+  }
+  .span3 span {
+font-weight: bold;
+  }
+  #new-ddoc-section {
+margin: 16px 0 0;
+.controls {
+  margin-left: 0;
+}
+  }
+}
+/* end temporary override */

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/37cfb74b/app/addons/documents/index-editor/actions.js
--
diff --git a/app/addons/documents/index-editor/actions.js 
b/app/addons/documents/index-editor/actions.js
index 294b02d..552ca6f 100644
--- a/app/addons/documents/index-editor/actions.js
+++ b/app/addons/documents/index-editor/actions.js
@@ -18,25 +18,16 @@ define([
   'addons/documents/index-results/actions'
 ],
 function (app, FauxtonAPI, Documents, ActionTypes, IndexResultsActions) {
-  var ActionHelpers = {
-createNewDesignDoc: function (id, database) {
-  var designDoc = {
-_id: id,
-views: {
-}
-  };
-
-  return new Documents.Doc(designDoc, {database: database});
-},
 
+  var ActionHelpers = {
 findDesignDoc: function (designDocs, designDocId) {
   return _.find(designDocs, function (doc) {
 return doc.id === designDocId;
   }).dDocModel();
-
 }
   };
 
+
   return {
 //helpers are added here for use in testing actions
 helpers: ActionHelpers,
@@ -48,20 +39,6 @@ function (app, FauxtonAPI, Documents, ActionTypes, 
IndexResultsActions) {
   });
 },
 
-newDesignDoc: function () {
-  FauxtonAPI.dispatch({
-type: ActionTypes.NEW_DESIGN_DOC
-  });
-},
-
-designDocChange: function (id, newDesignDoc) {
-  FauxtonAPI.dispatch({
-type: ActionTypes.DESIGN_DOC_CHANGE,
-newDesignDoc: newDesignDoc,
-designDocId: id
-  });
-},
-
 changeViewName: function (name) {
   FauxtonAPI.dispatch({
 type: ActionTypes.VIEW_NAME_CHANGE,
@@ -87,58 +64,33 @@ function (app, FauxtonAPI, Documents, ActionTypes, 
IndexResultsActions) {
 },
 
 saveView: function (viewInfo) {
-  var designDoc;
-  var designDocs = viewInfo.designDocs;
-
-  if (_.isUndefined(viewInfo.designDocId)) {
-FauxtonAPI.addNotification({
-  msg:  "Please enter 

fauxton commit: updated refs/heads/master to 5bc8bcd

2016-02-18 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master abc3e697f -> 5bc8bcd10


No Docs Found screen style update

Small aesthetic thing. The "no documents found" page had a
hardcoded minimum height which often caused the panel to
have the text hidden offscreen and a scrollbar to appear.

This just vertically centers the watermark and label so it works
on any screen size.

Also now exports the NoResultsScreen component for use elsewhere.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/5bc8bcd1
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/5bc8bcd1
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/5bc8bcd1

Branch: refs/heads/master
Commit: 5bc8bcd10d20b3886e1ee75ccbe3047c8fd7d07b
Parents: abc3e69
Author: Ben Keen 
Authored: Tue Feb 16 13:49:41 2016 -0800
Committer: Ben Keen 
Committed: Thu Feb 18 12:00:06 2016 -0800

--
 .../documents/assets/less/index-results.less| 25 ++--
 .../index-results.components.react.jsx  | 19 +--
 2 files changed, 30 insertions(+), 14 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/5bc8bcd1/app/addons/documents/assets/less/index-results.less
--
diff --git a/app/addons/documents/assets/less/index-results.less 
b/app/addons/documents/assets/less/index-results.less
index 591c520..5b2f55f 100644
--- a/app/addons/documents/assets/less/index-results.less
+++ b/app/addons/documents/assets/less/index-results.less
@@ -28,17 +28,28 @@
   }
 }
 
+.no-results-screen {
+  position: absolute;
+  margin: -15px;
+  top: 50%;
+  margin-top: -125px;
+  width: 100%;
+  h3 {
+border-top: 1px solid #ccc;
+height: 45px;
+font-size: 20px;
+font-weight: normal;
+width: 400px;
+text-align: center;
+padding-top: 8px;
+margin: 0 auto;
+  }
+}
 .watermark-logo {
   background: transparent url('../img/couch-watermark.png') no-repeat 50% 50%;
-  min-height: 400px;
-  padding-top: 60%;
+  height: 205px;
   text-align: center;
   margin: 0 20%;
-  h3 {
-border-bottom: 1px solid #ccc;
-padding-bottom: 10px;
-margin-bottom: 20px;
-  }
   .preview {
 margin: 0 10px;
   }

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/5bc8bcd1/app/addons/documents/index-results/index-results.components.react.jsx
--
diff --git 
a/app/addons/documents/index-results/index-results.components.react.jsx 
b/app/addons/documents/index-results/index-results.components.react.jsx
index f809883..dd9758a 100644
--- a/app/addons/documents/index-results/index-results.components.react.jsx
+++ b/app/addons/documents/index-results/index-results.components.react.jsx
@@ -19,12 +19,9 @@ define([
   'addons/components/react-components.react',
   'addons/documents/resources',
   'addons/fauxton/components.react',
-
   'libs/react-bootstrap',
   'react-autocomplete',
-
-  'plugins/prettify',
-
+  'plugins/prettify'
 ],
 
 
@@ -37,10 +34,16 @@ function (app, FauxtonAPI, React, Stores, Actions, 
Components, Documents, Fauxto
   var SplitButton = ReactBootstrap.SplitButton;
   var MenuItem = ReactBootstrap.MenuItem;
 
-  var NoResultScreen = React.createClass({
+
+  var NoResultsScreen = React.createClass({
+propTypes: {
+  text: React.PropTypes.string.isRequired
+},
+
 render: function () {
   return (
-
+
+  
   {this.props.text}
 
   );
@@ -536,7 +539,7 @@ function (app, FauxtonAPI, React, Stores, Actions, 
Components, Documents, Fauxto
 },
 
 render: function () {
-  var view = ;
+  var view = ;
 
   if (this.state.hasResults) {
 view = 

fauxton commit: updated refs/heads/master to abc3e69

2016-02-17 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master a62af899a -> abc3e697f


Misc database sidebar updates

This contains various updates to the database sidebar, as per
Justin's feedback.
- Order and labels of buttons are changed.
- a few unclear icons (map reduce, Views) have been removed
- properly highlights what page you're on.
- Now allows us to select any nav item in the sidebar
regardless of nesting to highlight the nav item. This also
now works on full page refreshes.

Note this feature paves the way for the next thing I'll work
on: updating Views so that they retain the sidebar. Once
that's changed, it will need to clearly highlight what
View you're on in the sidebar.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/abc3e697
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/abc3e697
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/abc3e697

Branch: refs/heads/master
Commit: abc3e697f3ba5bb76dbb32af8d3068a6d568909b
Parents: a62af89
Author: Ben Keen 
Authored: Fri Feb 5 08:40:19 2016 -0800
Committer: Ben Keen 
Committed: Wed Feb 17 09:17:18 2016 -0800

--
 app/addons/documents/assets/less/sidenav.less   | 256 +--
 app/addons/documents/routes-documents.js|  12 +-
 app/addons/documents/routes-mango.js|   2 +-
 app/addons/documents/shared-routes.js   |   7 +-
 app/addons/documents/sidebar/actions.js |  26 +-
 app/addons/documents/sidebar/actiontypes.js |   2 +-
 app/addons/documents/sidebar/sidebar.react.jsx  | 249 ++
 app/addons/documents/sidebar/stores.js  | 110 +---
 .../tests/sidebar.componentsSpec.react.jsx  |  30 +++
 .../sidebar/tests/sidebar.storesSpec.js |   2 +-
 assets/less/templates.less  |   4 +-
 11 files changed, 390 insertions(+), 310 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/abc3e697/app/addons/documents/assets/less/sidenav.less
--
diff --git a/app/addons/documents/assets/less/sidenav.less 
b/app/addons/documents/assets/less/sidenav.less
index 11df376..9c6fb35 100644
--- a/app/addons/documents/assets/less/sidenav.less
+++ b/app/addons/documents/assets/less/sidenav.less
@@ -9,6 +9,7 @@
 // WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
 // License for the specific language governing permissions and limitations 
under
 // the License.
+@import "../../../../../assets/less/variables.less";
 
 #sidebar-content {
   .loading-lines {
@@ -16,176 +17,147 @@
   }  
 }
 
-.sidenav{
-  .sidebar-toggler {
-top: 5px;
-position: absolute;
-right: 7px;
-z-index: 100;
-width: 60px;
-height: 35px;
-text-align: center;
-line-height: 35px;
+.sidenav {
+  a {
 text-decoration: none;
-.icon {
-  padding-right: 3px;
-}
-
-&.sidebar-hidden {
-  &:hover {
-background-color: rgba(153, 153, 153, 0.1);
-  }
-  width: 120px;
-  right: 210px;
-}
-  }
-  .nav li + .nav-header {
-margin-top: 0px;
   }
-  .nav-list > .active > a{
+
+  // selected nav item row styles
+  .nav-list .active > a {
 text-shadow: none;
-background-color: rgba(0, 0, 0, 0.05);
-  }
-  .nav-list > .active > a:hover {
-color: white;
-  }
-  .nav-list > li > a:hover + div.add-dropdown .dropdown-toggle{
-color: white;
+background-color: #f1f0f1;
+color: @brandPrimaryDark;
+&:hover {
+  color: white;
+}
   }
+
   .dropdown-toggle:hover {
 color: @linkColor;
   }
-  li{
-position: relative;
-a{
-  text-shadow: none;
+
+  // ugly! This styles the (+) icon to make it white when a user hovers over a 
row. Better solution would be to move the
+  // active class to the  instead of the child 
+  .accordion-list-item:hover, .nav-list > li a:hover {
+& + div.add-dropdown .dropdown-toggle {
+  color: white;
 }
   }
-  li.nav-header {
+
+  li {
 position: relative;
-> .accordion-body{
-  &.in {
-border-bottom: 1px solid #d3d7db;
-  }
+a {
+  text-shadow: none;
 }
-.accordion-body{
-  color: #eee;
-  margin-left: 0;
-  li.active > a{
-background-color: rgba(0, 0, 0, 0.055);
+  }
+
+  .design-doc-section {
+border-bottom: 1px solid #d3d7db;
+.accordion-list-item:hover {
+  p, .fonticon-play {
+color: white;
   }
-  li a{
-font-size: 14px;
-background-color: rgba(0, 0, 0, 0.02);
-&:hover {
-  color: #fff;
-  text-decoration: none;
-  background-color: @darkRed;
-}
+  p {
+background-color: @darkRed;
   }

fauxton commit: updated refs/heads/master to a62af89

2016-02-15 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master 8415f3d11 -> a62af899a


Remove compaction addon

The compaction and view cleanup functionality stopped no longer
works within a cluster setup. This removes the old non-functional
addon.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/a62af899
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/a62af899
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/a62af899

Branch: refs/heads/master
Commit: a62af899a56c0e148d438c3499496bb0dd83e210
Parents: 8415f3d
Author: Ben Keen 
Authored: Tue Feb 9 13:56:31 2016 -0800
Committer: Ben Keen 
Committed: Mon Feb 15 10:02:37 2016 -0800

--
 app/addons/compaction/actions.js| 123 -
 app/addons/compaction/actiontypes.js|  23 --
 .../compaction/assets/less/compaction.less  |  24 --
 app/addons/compaction/base.js   |  32 ---
 app/addons/compaction/components.react.jsx  | 169 -
 app/addons/compaction/resources.js  |  48 
 app/addons/compaction/routes.js |  90 ---
 app/addons/compaction/stores.js |  93 ---
 app/addons/compaction/tests/actionsSpec.js  | 247 ---
 .../compaction/tests/componentsSpec.react.jsx   | 111 -
 .../nightwatch/compactAndCleanIsPresent.js  |  30 ---
 app/addons/databases/assets/less/databases.less |   4 +
 app/addons/databases/components.react.jsx   |  11 +-
 .../documents/index-editor/components.react.jsx |  13 -
 code-layout.md  |   7 +-
 extensions.md   |   2 -
 settings.json.default.json  |   1 -
 17 files changed, 12 insertions(+), 1016 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/a62af899/app/addons/compaction/actions.js
--
diff --git a/app/addons/compaction/actions.js b/app/addons/compaction/actions.js
deleted file mode 100644
index 15c50c2..000
--- a/app/addons/compaction/actions.js
+++ /dev/null
@@ -1,123 +0,0 @@
-// Licensed under the Apache License, Version 2.0 (the "License"); you may not
-// use this file except in compliance with the License. You may obtain a copy 
of
-// the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-// License for the specific language governing permissions and limitations 
under
-// the License.
-
-define([
-  'app',
-  'api',
-  'addons/compaction/actiontypes',
-  'addons/compaction/resources'
-],
-function (app, FauxtonAPI, ActionTypes, Compaction) {
-
-  return {
-setCompactionFor: function (database) {
-  FauxtonAPI.dispatch({
-type: ActionTypes.COMPACTION_SET_UP,
-database: database
-  });
-
-},
-
-compactionStarted: function () {
-  FauxtonAPI.dispatch({
-type: ActionTypes.COMPACTION_COMPACTION_STARTING
-  });
-},
-
-compactionFinished: function () {
-  FauxtonAPI.dispatch({
-type: ActionTypes.COMPACTION_COMPACTION_FINISHED
-  });
-},
-
-cleaningViewsStarted: function () {
-  FauxtonAPI.dispatch({
-type: ActionTypes.COMPACTION_CLEANUP_STARTED
-  });
-},
-
-cleaningViewsFinished: function () {
-  FauxtonAPI.dispatch({
-type: ActionTypes.COMPACTION_CLEANUP_FINISHED
-  });
-},
-
-compactViewStarted: function () {
-  FauxtonAPI.dispatch({
-type: ActionTypes.COMPACTION_VIEW_STARTED
-  });
-},
-
-compactViewFinished: function () {
-  FauxtonAPI.dispatch({
-type: ActionTypes.COMPACTION_VIEW_FINISHED
-  });
-},
-
-compactDatabase: function (database) {
-  this.compactionStarted();
-  Compaction.compactDB(database).then(function () {
-FauxtonAPI.addNotification({
-  type: 'success',
-  msg: 'Database compaction has started. Visit Active Tasks to view the compaction progress.',
-  escape: false // beware of possible XSS when the message changes
-});
-  }, function (xhr, error, reason) {
-FauxtonAPI.addNotification({
-  type: 'error',
-  msg: 'Error: ' + JSON.parse(xhr.responseText).reason
-});
-  }).always(function () {
-this.compactionFinished();
-  }.bind(this));
-},
-
-cleanupViews: function (database) {
-  this.cleaningViewsStarted();
-  

fauxton commit: updated refs/heads/master to 8415f3d

2016-02-13 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master 63796145e -> 8415f3d11


Remove old code

This just removes a clause in a store that references a deleted
function. Caused errors with dash mocha tests.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/8415f3d1
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/8415f3d1
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/8415f3d1

Branch: refs/heads/master
Commit: 8415f3d118bea99ab4bbdb417dfff33fa83af2f4
Parents: 6379614
Author: Ben Keen 
Authored: Fri Feb 12 10:02:59 2016 -0800
Committer: Ben Keen 
Committed: Fri Feb 12 16:16:26 2016 -0800

--
 app/addons/databases/stores.js | 5 -
 1 file changed, 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/8415f3d1/app/addons/databases/stores.js
--
diff --git a/app/addons/databases/stores.js b/app/addons/databases/stores.js
index 0f73b52..9d8b711 100644
--- a/app/addons/databases/stores.js
+++ b/app/addons/databases/stores.js
@@ -89,7 +89,6 @@ define([
 
 dispatch: function (action) {
   switch (action.type) {
-
 case ActionTypes.DATABASES_INIT:
   this.init(action.options.collection, 
action.options.backboneCollection);
   this.setPage(action.options.page);
@@ -112,10 +111,6 @@ define([
   this.setLoading(false);
 break;
 
-case ActionTypes.DATABASES_SHOWDELETE_MODAL:
-  this.setDeleteModal(action.options);
-break;
-
 default:
 return;
   }



fauxton commit: updated refs/heads/master to f4b64a1

2016-02-05 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master 5f07e86c3 -> f4b64a19b


react-dom-server@0.14.7

React 14 moved the renderToStaticMarkup to react-dom-server.
This is still a helpful method on the client, like for example,
funnelling markup into React Bootstrap components which require
markup as properties on DOM elements.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/f4b64a19
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/f4b64a19
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/f4b64a19

Branch: refs/heads/master
Commit: f4b64a19b2bef0e629418fe4629da87be63153ad
Parents: 5f07e86
Author: Ben Keen 
Authored: Thu Feb 4 07:23:10 2016 -0800
Committer: Ben Keen 
Committed: Thu Feb 4 07:23:10 2016 -0800

--
 app/config.js  |  1 +
 assets/js/libs/react-dom-server.js | 42 +
 2 files changed, 43 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/f4b64a19/app/config.js
--
diff --git a/app/config.js b/app/config.js
index 8097509..071eba8 100644
--- a/app/config.js
+++ b/app/config.js
@@ -36,6 +36,7 @@ require.config({
 "react-autocomplete": "../assets/js/plugins/react-autocomplete",
 react: "../assets/js/libs/react",
 'react-dom': "../assets/js/libs/react-dom",
+'react-dom-server': "../assets/js/libs/react-dom-server",
 flux: "../assets/js/libs/flux",
 "es5-shim": "../assets/js/libs/es5-shim",
 "css.escape": "../assets/js/libs/css.escape",

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/f4b64a19/assets/js/libs/react-dom-server.js
--
diff --git a/assets/js/libs/react-dom-server.js 
b/assets/js/libs/react-dom-server.js
new file mode 100644
index 000..60c66e7
--- /dev/null
+++ b/assets/js/libs/react-dom-server.js
@@ -0,0 +1,42 @@
+/**
+ * ReactDOMServer v0.14.7
+ *
+ * Copyright 2013-2015, Facebook, Inc.
+ * All rights reserved.
+ *
+ * This source code is licensed under the BSD-style license found in the
+ * LICENSE file in the root directory of this source tree. An additional grant
+ * of patent rights can be found in the PATENTS file in the same directory.
+ *
+ */
+// Based off https://github.com/ForbesLindesay/umd/blob/master/template.js
+;(function(f) {
+  // CommonJS
+  if (typeof exports === "object" && typeof module !== "undefined") {
+module.exports = f(require('react'));
+
+// RequireJS
+  } else if (typeof define === "function" && define.amd) {
+define(['react'], f);
+
+// 

fauxton commit: updated refs/heads/master to e5f9f9d

2016-02-01 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master e6450a0d0 -> e5f9f9da0


Updates to PerPageSelector component

This makes a couple of small updates to the PerPageSelector
component to allow for a custom list of options, and a custom
label.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/e5f9f9da
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/e5f9f9da
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/e5f9f9da

Branch: refs/heads/master
Commit: e5f9f9da0c44f91d54f546b7789a6784d3b78061
Parents: e6450a0
Author: Ben Keen 
Authored: Sun Jan 31 20:35:17 2016 -0800
Committer: Ben Keen 
Committed: Mon Feb 1 10:10:52 2016 -0800

--
 .../documents/pagination/pagination.react.jsx   | 29 ++
 .../tests/pagination.componentSpec.react.jsx| 41 +---
 2 files changed, 57 insertions(+), 13 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/e5f9f9da/app/addons/documents/pagination/pagination.react.jsx
--
diff --git a/app/addons/documents/pagination/pagination.react.jsx 
b/app/addons/documents/pagination/pagination.react.jsx
index 7a6ca7a..4d73257 100644
--- a/app/addons/documents/pagination/pagination.react.jsx
+++ b/app/addons/documents/pagination/pagination.react.jsx
@@ -93,23 +93,38 @@ define([
 
 var PerPageSelector = React.createClass({
 
+  propTypes: {
+perPage: React.PropTypes.number.isRequired,
+perPageChange: React.PropTypes.func.isRequired,
+label: React.PropTypes.string,
+options: React.PropTypes.array
+  },
+
+  getDefaultProps: function () {
+return {
+  label: 'Documents per page: ',
+  options: [5, 10, 20, 30, 50, 100]
+};
+  },
+
   perPageChange: function (e) {
 var perPage = parseInt(e.target.value, 10);
 this.props.perPageChange(perPage);
   },
 
+  getOptions: function () {
+return _.map(this.props.options, function (i) {
+  return ({i});
+});
+  },
+
   render: function () {
 return (
   
 
-  Documents per page: 
+  {this.props.label} 
   
-5
-10
-20
-30
-50
-100
+{this.getOptions()}
   
 
   

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/e5f9f9da/app/addons/documents/pagination/tests/pagination.componentSpec.react.jsx
--
diff --git 
a/app/addons/documents/pagination/tests/pagination.componentSpec.react.jsx 
b/app/addons/documents/pagination/tests/pagination.componentSpec.react.jsx
index afeaaac..4b31a06 100644
--- a/app/addons/documents/pagination/tests/pagination.componentSpec.react.jsx
+++ b/app/addons/documents/pagination/tests/pagination.componentSpec.react.jsx
@@ -30,12 +30,6 @@ define([
   beforeEach(function () {
 perPageChange = sinon.spy();
 container = document.createElement('div');
-selectorEl = TestUtils.renderIntoDocument(
-  ,
-  container
-);
   });
 
   afterEach(function () {
@@ -43,6 +37,12 @@ define([
   });
 
   it('on new select calls callback with new page size', function () {
+selectorEl = TestUtils.renderIntoDocument(
+  ,
+  container
+);
 var selectEl = 
$(ReactDOM.findDOMNode(selectorEl)).find('#select-per-page')[0];
 var perPage = 5;
 TestUtils.Simulate.change(selectEl, {
@@ -53,6 +53,35 @@ define([
 
 assert.ok(perPageChange.calledWith(perPage));
   });
+
+  it('applies custom label', function () {
+var customLabel = 'alphabet soup';
+selectorEl = TestUtils.renderIntoDocument(
+  ,
+  container
+);
+var regexp = new RegExp(customLabel);
+assert.ok(regexp.test(React.findDOMNode(selectorEl).outerHTML));
+  });
+
+  it('applies custom options', function () {
+selectorEl = TestUtils.renderIntoDocument(
+  ,
+  container
+);
+var options = $(React.findDOMNode(selectorEl)).find('option');
+assert.equal(options.length, 3);
+assert.equal(options[0].innerHTML, "1");
+assert.equal(options[1].innerHTML, "2");
+assert.equal(options[2].innerHTML, "3");
+  });
+
 });
 
 describe('TableControls', function () {



[1/9] fauxton commit: updated refs/heads/master to 9284dcd

2016-02-01 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master 7fa70fd60 -> 9284dcd99


Font icon updates

This completely removes hardcoded references to the font chars,
now available in Less variables.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/9284dcd9
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/9284dcd9
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/9284dcd9

Branch: refs/heads/master
Commit: 9284dcd25943a25de0a34cabf0f27d4dc639
Parents: b83550c
Author: Ben Keen 
Authored: Fri Jan 29 16:40:49 2016 -0800
Committer: Ben Keen 
Committed: Mon Feb 1 08:19:23 2016 -0800

--
 assets/less/formstyles.less | 7 +--
 assets/less/trays.less  | 8 +---
 2 files changed, 10 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/9284dcd9/assets/less/formstyles.less
--
diff --git a/assets/less/formstyles.less b/assets/less/formstyles.less
index cfadc56..4db0f85 100644
--- a/assets/less/formstyles.less
+++ b/assets/less/formstyles.less
@@ -11,6 +11,7 @@
 //  the License.
 
 @import "variables.less";
+@import "icons.less";
 
 input[type=text],
 input[type=password] {
@@ -186,9 +187,11 @@ form.view-query-update, form.view-query-save {
 border: none;
   }
 
+  input[type=checkbox]:checked + label {
+.fonticon-ok;
+  }
   input[type=checkbox]:checked + label:before {
-font-family: "fauxtonicon";
-content: "\f13e";
+font-family: @fauxtonFont;
 font-size: 12px;
 background-color: inherit;
 border: 2px solid #7C8085;

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/9284dcd9/assets/less/trays.less
--
diff --git a/assets/less/trays.less b/assets/less/trays.less
index d9da2be..5f17020 100644
--- a/assets/less/trays.less
+++ b/assets/less/trays.less
@@ -11,6 +11,8 @@
 //  the License.
 
 @import "bootstrap/mixins.less";
+@import "icons.less";
+
 
 .hide-tray {
   display: none;
@@ -96,8 +98,8 @@
 }
 
 .lookahead-tray-link:after {
-  content: "\f144";
-  font-family: "fauxtonicon";
+  content: @icon-play;
+  font-family: @fauxtonFont;
   font-style: normal;
   font-weight: normal;
   font-variant: normal;
@@ -112,7 +114,7 @@
   color: #777;
   margin: 8px;
   display: inline-block;
-  position:absolute;
+  position: absolute;
   .rotate(90deg);
 }
 



[3/9] fauxton commit: updated refs/heads/master to 9284dcd

2016-02-01 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/b83550c3/assets/fonts/styleguide/fauxtonicon2-preview.html
--
diff --git a/assets/fonts/styleguide/fauxtonicon2-preview.html 
b/assets/fonts/styleguide/fauxtonicon2-preview.html
new file mode 100644
index 000..acf59a4
--- /dev/null
+++ b/assets/fonts/styleguide/fauxtonicon2-preview.html
@@ -0,0 +1,1958 @@
+
+
+  
+fauxtonicon2 glyphs preview
+
+
+  /* Page Styles */
+
+  * {
+-moz-box-sizing: border-box;
+-webkit-box-sizing: border-box;
+box-sizing: border-box;
+margin: 0;
+padding: 0;
+  }
+
+  body {
+background: #fff;
+color: #444;
+font: 16px/1.5 "Helvetica Neue", Helvetica, Arial, sans-serif;
+  }
+
+  a,
+  a:visited {
+color: #888;
+text-decoration: underline;
+  }
+  a:hover,
+  a:focus { color: #000; }
+
+  header {
+border-bottom: 2px solid #ddd;
+margin-bottom: 20px;
+overflow: hidden;
+padding: 20px 0;
+  }
+
+  header h1 {
+color: #888;
+float: left;
+font-size: 36px;
+font-weight: 300;
+  }
+
+  header a {
+float: right;
+font-size: 14px;
+  }
+
+  .container {
+margin: 0 auto;
+max-width: 1200px;
+min-width: 960px;
+padding: 0 40px;
+width: 90%;
+  }
+
+  .glyph {
+border-bottom: 1px dotted #ccc;
+padding: 10px 0 20px;
+margin-bottom: 20px;
+  }
+
+  .preview-glyphs { vertical-align: bottom; }
+
+  .preview-scale {
+color: #888;
+font-size: 12px;
+margin-top: 5px;
+  }
+
+  .step {
+display: inline-block;
+line-height: 1;
+position: relative;
+width: 10%;
+  }
+
+  .step .letters,
+  .step i {
+-webkit-transition: opacity .3s;
+-moz-transition: opacity .3s;
+-ms-transition: opacity .3s;
+-o-transition: opacity .3s;
+transition: opacity .3s;
+  }
+
+  .step:hover .letters { opacity: 1; }
+  .step:hover i { opacity: .3; }
+
+  .letters {
+opacity: .3;
+position: absolute;
+  }
+
+  .characters-off .letters { display: none; }
+  .characters-off .step:hover i { opacity: 1; }
+
+  
+  .size-12 { font-size: 12px; }
+  
+  .size-14 { font-size: 14px; }
+  
+  .size-16 { font-size: 16px; }
+  
+  .size-18 { font-size: 18px; }
+  
+  .size-21 { font-size: 21px; }
+  
+  .size-24 { font-size: 24px; }
+  
+  .size-36 { font-size: 36px; }
+  
+  .size-48 { font-size: 48px; }
+  
+  .size-60 { font-size: 60px; }
+  
+  .size-72 { font-size: 72px; }
+  
+
+  .usage { margin-top: 10px; }
+
+  .usage input {
+font-family: monospace;
+margin-right: 3px;
+padding: 2px 5px;
+text-align: center;
+  }
+
+  .usage .point { width: 150px; }
+
+  .usage .class { width: 250px; }
+
+  footer {
+color: #888;
+font-size: 12px;
+padding: 20px 0;
+  }
+
+  /* Icon Font: fauxtonicon2 */
+
+  @font-face {
+  font-family: "fauxtonicon2";
+  src: url("../fauxtonicon2.eot");
+  src: url("../fauxtonicon2.eot?#iefix") format("embedded-opentype"),
+   url("../fauxtonicon2.woff") format("woff"),
+   url("../fauxtonicon2.ttf") format("truetype"),
+   url("../fauxtonicon2.svg#fauxtonicon2") format("svg");
+  font-weight: normal;
+  font-style: normal;
+}
+
+@media screen and (-webkit-min-device-pixel-ratio:0) {
+  @font-face {
+font-family: "fauxtonicon2";
+src: url("../fauxtonicon2.svg#fauxtonicon2") format("svg");
+  }
+}
+
+  [data-icon]:before { content: attr(data-icon); }
+
+  [data-icon]:before,
+  .fonticon-activetasks:before,
+.fonticon-arrow-box-down:before,
+.fonticon-arrow-box-up:before,
+.fonticon-arrow_left:before,
+.fonticon-arrow_right:before,
+.fonticon-arrows-cw:before,
+.fonticon-article:before,
+.fonticon-attention-alt:before,
+.fonticon-attention-circled:before,
+.fonticon-bell:before,
+.fonticon-block:before,
+.fonticon-bookmark:before,
+.fonticon-bookmark-ribbon-wplus:before,
+.fonticon-burger:before,
+.fonticon-cancel:before,
+.fonticon-cancel-circled:before,
+.fonticon-cancel-circled2:before,
+.fonticon-circle-empty:before,
+.fonticon-clipboard:before,
+.fonticon-clock:before,
+.fonticon-cog:before,
+.fonticon-collapse:before,
+.fonticon-cw:before,
+.fonticon-dashboard:before,
+.fonticon-database:before,
+.fonticon-deselect-all:before,
+.fonticon-document:before,
+.fonticon-documents:before,
+.fonticon-dot-circled:before,
+.fonticon-down:before,
+.fonticon-down-1:before,
+.fonticon-down-circled:before,
+.fonticon-down-dir:before,
+.fonticon-down-open:before,
+.fonticon-drop-down-dots:before,

fauxton commit: updated refs/heads/master to 574af6a

2016-02-01 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master 9284dcd99 -> 574af6a8b


Fix for Beautify function within CodeEditorPanel component

Beautify wasn't working within the CodeEditorPanel component
because it didn't explicitly update the CodeEditor subcomponent.
This also reduces the size of the beautify button to make it more
appropriate.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/574af6a8
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/574af6a8
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/574af6a8

Branch: refs/heads/master
Commit: 574af6a8b490e6f132652f7071c1fe164c3410aa
Parents: 9284dcd
Author: Ben Keen 
Authored: Sun Jan 31 13:03:32 2016 -0800
Committer: Ben Keen 
Committed: Mon Feb 1 08:21:32 2016 -0800

--
 .../components/react-components.react.jsx   |  3 ++-
 .../components/tests/beautifySpec.react.jsx |  2 +-
 .../tests/codeEditorPanelSpec.react.jsx | 21 
 3 files changed, 24 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/574af6a8/app/addons/components/react-components.react.jsx
--
diff --git a/app/addons/components/react-components.react.jsx 
b/app/addons/components/react-components.react.jsx
index 105bbae..a471637 100644
--- a/app/addons/components/react-components.react.jsx
+++ b/app/addons/components/react-components.react.jsx
@@ -351,6 +351,7 @@ function (app, FauxtonAPI, React, Stores, 
FauxtonComponents, ace, beautifyHelper
 
 beautify: function (code) {
   this.setState({ code: code });
+  this.getEditor().setValue(code);
 },
 
 update: function () {
@@ -963,7 +964,7 @@ function (app, FauxtonAPI, React, Stores, 
FauxtonComponents, ace, beautifyHelper
   return (
 http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/574af6a8/app/addons/components/tests/beautifySpec.react.jsx
--
diff --git a/app/addons/components/tests/beautifySpec.react.jsx 
b/app/addons/components/tests/beautifySpec.react.jsx
index c7eefdf..92260cb 100644
--- a/app/addons/components/tests/beautifySpec.react.jsx
+++ b/app/addons/components/tests/beautifySpec.react.jsx
@@ -21,7 +21,7 @@ define([
   var TestUtils = React.addons.TestUtils;
 
   describe('Beautify', function () {
-var container, beautifyEl, reduceStub;
+var container, beautifyEl;
 
 beforeEach(function () {
   container = document.createElement('div');

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/574af6a8/app/addons/components/tests/codeEditorPanelSpec.react.jsx
--
diff --git a/app/addons/components/tests/codeEditorPanelSpec.react.jsx 
b/app/addons/components/tests/codeEditorPanelSpec.react.jsx
index b0bbcce..a2a1dcd 100644
--- a/app/addons/components/tests/codeEditorPanelSpec.react.jsx
+++ b/app/addons/components/tests/codeEditorPanelSpec.react.jsx
@@ -18,6 +18,7 @@ define([
 
   var assert = utils.assert;
   var TestUtils = React.addons.TestUtils;
+  var codeNoNewlines = 'function (doc) {emit(doc._id, 1);}';
   var code = 'function (doc) {\n  emit(doc._id, 1);\n}';
 
   describe('CodeEditorPanel', function () {
@@ -61,6 +62,26 @@ define([
   });
 });
 
+describe('Beautify', function () {
+  it('confirm clicking beautify actually works within context of 
component', function () {
+var container = document.createElement('div');
+var codeEditorEl = TestUtils.renderIntoDocument(
+  ,
+  container
+);
+
+// confirm there are no newlines in the code at this point
+assert.equal(codeEditorEl.getValue().match(/\n/g), null);
+
+
TestUtils.Simulate.click($(React.findDOMNode(codeEditorEl)).find('.beautify')[0]);
+
+// now confirm newlines are found
+assert.equal(codeEditorEl.getValue().match(/\n/g).length, 2);
+  });
+});
+
   });
 
 });



[7/9] fauxton commit: updated refs/heads/master to 9284dcd

2016-02-01 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/b83550c3/assets/fonts/fauxtonicon1.svg
--
diff --git a/assets/fonts/fauxtonicon1.svg b/assets/fonts/fauxtonicon1.svg
deleted file mode 100644
index 032878c..000
--- a/assets/fonts/fauxtonicon1.svg
+++ /dev/null
@@ -1,700 +0,0 @@
-
-http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd; >
-
-http://www.w3.org/2000/svg; 
xmlns:xlink="http://www.w3.org/1999/xlink; version="1.1">
-
-Created by FontForge 20150302 at Tue Jan 26 15:25:38 2016
- By Ben Keen
-Copyright (c) 2016, Ben Keen
-
-
-
-  
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/b83550c3/assets/fonts/fauxtonicon1.ttf
--
diff --git a/assets/fonts/fauxtonicon1.ttf b/assets/fonts/fauxtonicon1.ttf
deleted file mode 100644
index 0402742..000
Binary files a/assets/fonts/fauxtonicon1.ttf and /dev/null differ



[2/9] fauxton commit: updated refs/heads/master to 9284dcd

2016-02-01 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/b83550c3/assets/icons/map.svg
--
diff --git a/assets/icons/map.svg b/assets/icons/map.svg
new file mode 100644
index 000..a9ecb15
--- /dev/null
+++ b/assets/icons/map.svg
@@ -0,0 +1,10 @@
+
+http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd; >
+http://www.w3.org/2000/svg; 
xmlns:xlink="http://www.w3.org/1999/xlink; version="1.1" viewBox="0 -256 1792 
1792">
+  
+   
+  
+
+

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/b83550c3/assets/icons/map2.svg
--
diff --git a/assets/icons/map2.svg b/assets/icons/map2.svg
new file mode 100644
index 000..55a81d8
--- /dev/null
+++ b/assets/icons/map2.svg
@@ -0,0 +1,10 @@
+
+http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd; >
+http://www.w3.org/2000/svg; 
xmlns:xlink="http://www.w3.org/1999/xlink; version="1.1" viewBox="0 -257 2048 
1792">
+  
+   
+  
+
+

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/b83550c3/assets/less/icons.less
--
diff --git a/assets/less/icons.less b/assets/less/icons.less
index b1f3464..ec8c9c0 100644
--- a/assets/less/icons.less
+++ b/assets/less/icons.less
@@ -1,5 +1,5 @@
 /*
-*  Icon Font: fauxtonicon1
+*  Icon Font: fauxtonicon2
 */
 
 /*  Licensed under the Apache License, Version 2.0 (the "License"); you may not
@@ -18,23 +18,140 @@
 /* had to add a custom template to the generator to get this to compile to 
append the proper path and specify  "url" instead of "font-url":
 
https://github.com/seanbarclay/fontcustom/blob/1c3ad3d2633d3a8add39e8827115394e9ec02d88/lib/fontcustom/generator/template.rb
 */
-@fauxtonFont: "fauxtonicon1";
+@fauxtonFont: "fauxtonicon2";
+@icon-activetasks: "\f100";
+@icon-arrow-box-down: "\f101";
+@icon-arrow-box-up: "\f102";
+@icon-arrow_left: "\f103";
+@icon-arrow_right: "\f104";
+@icon-arrows-cw: "\f105";
+@icon-article: "\f106";
+@icon-attention-alt: "\f107";
+@icon-attention-circled: "\f108";
+@icon-bell: "\f109";
+@icon-block: "\f10a";
+@icon-bookmark: "\f10b";
+@icon-bookmark-ribbon-wplus: "\f10c";
+@icon-burger: "\f10d";
+@icon-cancel: "\f10e";
+@icon-cancel-circled: "\f10f";
+@icon-cancel-circled2: "\f110";
+@icon-circle-empty: "\f111";
+@icon-clipboard: "\f112";
+@icon-clock: "\f113";
+@icon-cog: "\f114";
+@icon-collapse: "\f115";
+@icon-cw: "\f116";
+@icon-dashboard: "\f117";
+@icon-database: "\f118";
+@icon-deselect-all: "\f119";
+@icon-document: "\f11a";
+@icon-documents: "\f11b";
+@icon-dot-circled: "\f11c";
+@icon-down: "\f11d";
+@icon-down-1: "\f11e";
+@icon-down-circled: "\f11f";
+@icon-down-dir: "\f120";
+@icon-down-open: "\f121";
+@icon-drop-down-dots: "\f122";
+@icon-exchange: "\f123";
+@icon-expand: "\f124";
+@icon-eye: "\f125";
+@icon-file-code-o: "\f126";
+@icon-files-o: "\f127";
+@icon-gears: "\f128";
+@icon-help: "\f129";
+@icon-help-circled: "\f12a";
+@icon-info-circled: "\f12b";
+@icon-json: "\f12c";
+@icon-key: "\f12d";
+@icon-left: "\f12e";
+@icon-left-1: "\f12f";
+@icon-left-circled: "\f130";
+@icon-left-dir: "\f131";
+@icon-left-open: "\f132";
+@icon-link: "\f133";
+@icon-list-alt: "\f134";
+@icon-lock: "\f135";
+@icon-mail: "\f136";
+@icon-mail-alt: "\f137";
+@icon-map: "\f138";
+@icon-map2: "\f139";
+@icon-megaphone: "\f13a";
+@icon-minus: "\f13b";
+@icon-minus-circled: "\f13c";
+@icon-minus-circled2: "\f13d";
+@icon-minus-squared: "\f13e";
+@icon-minus-squared-alt: "\f13f";
+@icon-mixer: "\f140";
+@icon-new-database: "\f141";
+@icon-ok: "\f142";
+@icon-ok-circled: "\f143";
+@icon-ok-circled-2: "\f144";
+@icon-paperclip: "\f145";
+@icon-pencil: "\f146";
+@icon-picture: "\f147";
+@icon-play: "\f148";
+@icon-plus: "\f149";
+@icon-plus-circled: "\f14a";
+@icon-plus-circled2: "\f14b";
+@icon-plus-squared: "\f14c";
+@icon-plus-squared-alt: "\f14d";
+@icon-popin: "\f14e";
+@icon-popout: "\f14f";
+@icon-profile: "\f150";
+@icon-replicate: "\f151";
+@icon-reply: "\f152";
+@icon-reply-all: "\f153";
+@icon-resize-full: "\f154";
+@icon-resize-full-reverse: "\f155";
+@icon-resize-small: "\f156";
+@icon-resize-small-reverse: "\f157";
+@icon-right: "\f158";
+@icon-right-1: "\f159";
+@icon-right-circled: "\f15a";
+@icon-right-dir: "\f15b";
+@icon-right-open: "\f15c";
+@icon-save: "\f15d";
+@icon-search: "\f15e";
+@icon-select-all: "\f15f";
+@icon-sidenav-filter-function: "\f160";
+@icon-sidenav-info: "\f161";
+@icon-sidenav-list-function: "\f162";
+@icon-sidenav-map-reduce: "\f163";
+@icon-sidenav-search: "\f164";
+@icon-sidenav-show-function: "\f165";
+@icon-sidenav-update-function: "\f166";
+@icon-sitemap: "\f167";
+@icon-stats: "\f168";
+@icon-support: "\f169";
+@icon-swap-arrows: "\f16a";
+@icon-table: "\f16b";
+@icon-trash: "\f16c";
+@icon-up: "\f16d";
+@icon-up-1: "\f16e";
+@icon-up-circled: "\f16f";
+@icon-up-dir: "\f170";
+@icon-up-open: "\f171";
+@icon-user: "\f172";
+@icon-users: 

[4/9] fauxton commit: updated refs/heads/master to 9284dcd

2016-02-01 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/b83550c3/assets/fonts/fauxtonicon2.woff
--
diff --git a/assets/fonts/fauxtonicon2.woff b/assets/fonts/fauxtonicon2.woff
new file mode 100644
index 000..682c797
Binary files /dev/null and b/assets/fonts/fauxtonicon2.woff differ

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/b83550c3/assets/fonts/styleguide/fauxtonicon1-preview.html
--
diff --git a/assets/fonts/styleguide/fauxtonicon1-preview.html 
b/assets/fonts/styleguide/fauxtonicon1-preview.html
deleted file mode 100644
index 9d9c619..000
--- a/assets/fonts/styleguide/fauxtonicon1-preview.html
+++ /dev/null
@@ -1,1928 +0,0 @@
-
-
-  
-fauxtonicon1 glyphs preview
-
-
-  /* Page Styles */
-
-  * {
--moz-box-sizing: border-box;
--webkit-box-sizing: border-box;
-box-sizing: border-box;
-margin: 0;
-padding: 0;
-  }
-
-  body {
-background: #fff;
-color: #444;
-font: 16px/1.5 "Helvetica Neue", Helvetica, Arial, sans-serif;
-  }
-
-  a,
-  a:visited {
-color: #888;
-text-decoration: underline;
-  }
-  a:hover,
-  a:focus { color: #000; }
-
-  header {
-border-bottom: 2px solid #ddd;
-margin-bottom: 20px;
-overflow: hidden;
-padding: 20px 0;
-  }
-
-  header h1 {
-color: #888;
-float: left;
-font-size: 36px;
-font-weight: 300;
-  }
-
-  header a {
-float: right;
-font-size: 14px;
-  }
-
-  .container {
-margin: 0 auto;
-max-width: 1200px;
-min-width: 960px;
-padding: 0 40px;
-width: 90%;
-  }
-
-  .glyph {
-border-bottom: 1px dotted #ccc;
-padding: 10px 0 20px;
-margin-bottom: 20px;
-  }
-
-  .preview-glyphs { vertical-align: bottom; }
-
-  .preview-scale {
-color: #888;
-font-size: 12px;
-margin-top: 5px;
-  }
-
-  .step {
-display: inline-block;
-line-height: 1;
-position: relative;
-width: 10%;
-  }
-
-  .step .letters,
-  .step i {
--webkit-transition: opacity .3s;
--moz-transition: opacity .3s;
--ms-transition: opacity .3s;
--o-transition: opacity .3s;
-transition: opacity .3s;
-  }
-
-  .step:hover .letters { opacity: 1; }
-  .step:hover i { opacity: .3; }
-
-  .letters {
-opacity: .3;
-position: absolute;
-  }
-
-  .characters-off .letters { display: none; }
-  .characters-off .step:hover i { opacity: 1; }
-
-  
-  .size-12 { font-size: 12px; }
-  
-  .size-14 { font-size: 14px; }
-  
-  .size-16 { font-size: 16px; }
-  
-  .size-18 { font-size: 18px; }
-  
-  .size-21 { font-size: 21px; }
-  
-  .size-24 { font-size: 24px; }
-  
-  .size-36 { font-size: 36px; }
-  
-  .size-48 { font-size: 48px; }
-  
-  .size-60 { font-size: 60px; }
-  
-  .size-72 { font-size: 72px; }
-  
-
-  .usage { margin-top: 10px; }
-
-  .usage input {
-font-family: monospace;
-margin-right: 3px;
-padding: 2px 5px;
-text-align: center;
-  }
-
-  .usage .point { width: 150px; }
-
-  .usage .class { width: 250px; }
-
-  footer {
-color: #888;
-font-size: 12px;
-padding: 20px 0;
-  }
-
-  /* Icon Font: fauxtonicon1 */
-
-  @font-face {
-  font-family: "fauxtonicon1";
-  src: url("../fauxtonicon1.eot");
-  src: url("../fauxtonicon1.eot?#iefix") format("embedded-opentype"),
-   url("../fauxtonicon1.woff") format("woff"),
-   url("../fauxtonicon1.ttf") format("truetype"),
-   url("../fauxtonicon1.svg#fauxtonicon1") format("svg");
-  font-weight: normal;
-  font-style: normal;
-}
-
-@media screen and (-webkit-min-device-pixel-ratio:0) {
-  @font-face {
-font-family: "fauxtonicon1";
-src: url("../fauxtonicon1.svg#fauxtonicon1") format("svg");
-  }
-}
-
-  [data-icon]:before { content: attr(data-icon); }
-
-  [data-icon]:before,
-  .fonticon-activetasks:before,
-.fonticon-arrow-box-down:before,
-.fonticon-arrow-box-up:before,
-.fonticon-arrow_left:before,
-.fonticon-arrow_right:before,
-.fonticon-arrows-cw:before,
-.fonticon-article:before,
-.fonticon-attention-alt:before,
-.fonticon-attention-circled:before,
-.fonticon-bell:before,
-.fonticon-block:before,
-.fonticon-bookmark:before,
-.fonticon-bookmark-ribbon-wplus:before,
-.fonticon-burger:before,
-.fonticon-cancel:before,
-.fonticon-cancel-circled:before,
-.fonticon-cancel-circled2:before,
-.fonticon-circle-empty:before,
-.fonticon-clipboard:before,
-.fonticon-clock:before,
-.fonticon-cog:before,
-.fonticon-collapse:before,

[8/9] fauxton commit: updated refs/heads/master to 9284dcd

2016-02-01 Thread benkeen
Added map icons


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/b83550c3
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/b83550c3
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/b83550c3

Branch: refs/heads/master
Commit: b83550c30f20b67c591f898acebdce7f6b75b3af
Parents: b8d7b36
Author: Ben Keen 
Authored: Sat Jan 30 13:07:58 2016 -0800
Committer: Ben Keen 
Committed: Mon Feb 1 08:19:23 2016 -0800

--
 assets/fonts/fauxtonicon1.eot   |  Bin 18886 -> 0 bytes
 assets/fonts/fauxtonicon1.svg   |  700 ---
 assets/fonts/fauxtonicon1.ttf   |  Bin 18692 -> 0 bytes
 assets/fonts/fauxtonicon1.woff  |  Bin 10792 -> 0 bytes
 assets/fonts/fauxtonicon2.eot   |  Bin 0 -> 19214 bytes
 assets/fonts/fauxtonicon2.svg   |  712 +++
 assets/fonts/fauxtonicon2.ttf   |  Bin 0 -> 19020 bytes
 assets/fonts/fauxtonicon2.woff  |  Bin 0 -> 10992 bytes
 .../fonts/styleguide/fauxtonicon1-preview.html  | 1928 -
 .../fonts/styleguide/fauxtonicon2-preview.html  | 1958 ++
 assets/icons/map.svg|   10 +
 assets/icons/map2.svg   |   10 +
 assets/less/icons.less  |  261 ++-
 13 files changed, 2881 insertions(+), 2698 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/b83550c3/assets/fonts/fauxtonicon1.eot
--
diff --git a/assets/fonts/fauxtonicon1.eot b/assets/fonts/fauxtonicon1.eot
deleted file mode 100644
index 32e7491..000
Binary files a/assets/fonts/fauxtonicon1.eot and /dev/null differ



[5/9] fauxton commit: updated refs/heads/master to 9284dcd

2016-02-01 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/b83550c3/assets/fonts/fauxtonicon2.svg
--
diff --git a/assets/fonts/fauxtonicon2.svg b/assets/fonts/fauxtonicon2.svg
new file mode 100644
index 000..d544cc4
--- /dev/null
+++ b/assets/fonts/fauxtonicon2.svg
@@ -0,0 +1,712 @@
+
+http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd; >
+
+http://www.w3.org/2000/svg; 
xmlns:xlink="http://www.w3.org/1999/xlink; version="1.1">
+
+Created by FontForge 20150302 at Sat Jan 30 13:01:54 2016
+ By Ben Keen
+Copyright (c) 2016, Ben Keen
+
+
+
+  
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/b83550c3/assets/fonts/fauxtonicon2.ttf
--
diff --git a/assets/fonts/fauxtonicon2.ttf b/assets/fonts/fauxtonicon2.ttf
new file mode 100644
index 000..5b1f537
Binary files /dev/null and b/assets/fonts/fauxtonicon2.ttf differ



[6/9] fauxton commit: updated refs/heads/master to 9284dcd

2016-02-01 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/b83550c3/assets/fonts/fauxtonicon1.woff
--
diff --git a/assets/fonts/fauxtonicon1.woff b/assets/fonts/fauxtonicon1.woff
deleted file mode 100644
index ab563e8..000
Binary files a/assets/fonts/fauxtonicon1.woff and /dev/null differ

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/b83550c3/assets/fonts/fauxtonicon2.eot
--
diff --git a/assets/fonts/fauxtonicon2.eot b/assets/fonts/fauxtonicon2.eot
new file mode 100644
index 000..39c8787
Binary files /dev/null and b/assets/fonts/fauxtonicon2.eot differ



[9/9] fauxton commit: updated refs/heads/master to 9284dcd

2016-02-01 Thread benkeen
Added glyph_vars to the generated template

Turns out that the recent change to the templates wasn't complete
enough. Sometimes we need to reference the icon (e.g. "\f123")
in somewhere other than a :before, like an :after.

This change adds the glyph_vars to output a full list of
variables for each and every font.  This will allow us to reference
the font icons directly in whatever Less content we want and
completely remove any hardcoded items (see next commit).

No more regression from changing fonts, yay!


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/b8d7b364
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/b8d7b364
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/b8d7b364

Branch: refs/heads/master
Commit: b8d7b364147d07dbaaba5f8b6f5f98df560ce356
Parents: 7fa70fd
Author: Ben Keen 
Authored: Sat Jan 30 12:46:09 2016 -0800
Committer: Ben Keen 
Committed: Mon Feb 1 08:19:23 2016 -0800

--
 assets/fonts/templates/icons.less | 1 +
 1 file changed, 1 insertion(+)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/b8d7b364/assets/fonts/templates/icons.less
--
diff --git a/assets/fonts/templates/icons.less 
b/assets/fonts/templates/icons.less
index 5f5dd4f..95aa953 100644
--- a/assets/fonts/templates/icons.less
+++ b/assets/fonts/templates/icons.less
@@ -19,6 +19,7 @@
 
https://github.com/seanbarclay/fontcustom/blob/1c3ad3d2633d3a8add39e8827115394e9ec02d88/lib/fontcustom/generator/template.rb
 */
 @fauxtonFont: "<%=font_name%>";
+<%= glyph_vars %>
 
 <%= font_face(:LESS) %>
 



[5/6] fauxton commit: updated refs/heads/master to e6450a0

2016-02-01 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/d0cb3d81/assets/js/libs/react.js
--
diff --git a/assets/js/libs/react.js b/assets/js/libs/react.js
index c1578b7..eb71587 100644
--- a/assets/js/libs/react.js
+++ b/assets/js/libs/react.js
@@ -1,8862 +1,7992 @@
 /**
- * React (with addons) v0.13.3
+ * React (with addons) v0.14.6
  */
 (function(f){if(typeof exports==="object"& 
module!=="undefined"){module.exports=f()}else if(typeof 
define==="function"&){define([],f)}else{var g;if(typeof 
window!=="undefined"){g=window}else if(typeof 
global!=="undefined"){g=global}else if(typeof 
self!=="undefined"){g=self}else{g=this}g.React = f()}})(function(){var 
define,module,exports;return (function e(t,n,r){function 
s(o,u){if(!n[o]){if(!t[o]){var a=typeof 
require=="function"&if(!u&)return a(o,!0);if(i)return i(o,!0);var 
f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var 
l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return 
s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof 
require=="function"&for(var o=0;o

[2/6] fauxton commit: updated refs/heads/master to e6450a0

2016-02-01 Thread benkeen
removing react 14 warnings


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/e6450a0d
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/e6450a0d
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/e6450a0d

Branch: refs/heads/master
Commit: e6450a0d0c9710d79e96bc924c447b8cb12f01b8
Parents: cab6fc2
Author: Ben Keen 
Authored: Tue Jan 19 10:33:45 2016 -0800
Committer: Ben Keen 
Committed: Mon Feb 1 08:39:35 2016 -0800

--
 app/addons/activetasks/components.react.jsx | 34 ++--
 .../tests/activetasks.componentsSpec.react.jsx  | 13 ++---
 app/addons/auth/components.react.jsx| 13 ++---
 .../auth/test/auth.componentsSpec.react.jsx | 31 +--
 app/addons/cluster/tests/clusterSpec.react.jsx  | 10 ++--
 .../compaction/tests/componentsSpec.react.jsx   | 15 +++---
 .../components/react-components.react.jsx   | 25 +
 .../tests/apiBarControllerSpec.react.jsx| 31 +--
 .../components/tests/beautifySpec.react.jsx | 14 ++---
 .../tests/codeEditorPanelSpec.react.jsx | 13 ++---
 .../components/tests/codeEditorSpec.react.jsx   |  7 +--
 .../tests/confirmButtonSpec.react.jsx   | 12 ++---
 app/addons/components/tests/docSpec.react.jsx   | 32 ++--
 .../tests/headerTogglebuttonSpec.react.jsx  | 10 ++--
 .../tests/paddedBorderedBoxSpec.react.jsx   | 10 ++--
 .../tests/stringEditModalSpec.react.jsx | 55 +++-
 .../components/tests/styledSelectSpec.react.jsx | 10 ++--
 .../components/tests/zenModeSpec.react.jsx  | 17 +++---
 app/addons/cors/tests/componentsSpec.react.jsx  | 55 ++--
 app/addons/databases/components.react.jsx   | 27 +-
 .../databases/tests/componentsSpec.react.jsx| 31 +--
 .../documents/changes/components.react.jsx  | 19 ---
 .../tests/changes.componentsSpec.react.jsx  | 53 ++-
 .../documents/doc-editor/components.react.jsx   |  5 +-
 .../tests/doc-editor.componentsSpec.react.jsx   | 55 +---
 app/addons/documents/helpers.js |  6 ++-
 .../tests/viewIndex.componentsSpec.react.jsx| 23 
 .../index-results.components.react.jsx  |  2 +-
 .../index-results.componentsSpec.react.jsx  | 40 +++---
 .../mango/tests/mango.componentsSpec.react.jsx  | 25 +
 .../tests/pagination.componentSpec.react.jsx| 14 ++---
 .../queryoptions/queryoptions.react.jsx | 11 ++--
 .../tests/queryoptions.componentsSpec.react.jsx | 21 
 app/addons/documents/sidebar/sidebar.react.jsx  | 10 ++--
 .../tests/sidebar.componentsSpec.react.jsx  | 11 ++--
 app/addons/documents/tests/helpersSpec.js   | 31 +++
 app/addons/fauxton/components.react.jsx | 11 ++--
 .../fauxton/navigation/components.react.jsx |  5 +-
 .../navigation/tests/componentsSpec.react.jsx   | 13 ++---
 .../notifications/notifications.react.jsx   | 11 ++--
 .../tests/componentsSpec.react.jsx  | 43 +++
 .../fauxton/tests/componentsSpec.react.jsx  | 25 -
 .../permissions/tests/componentsSpec.react.jsx  | 25 -
 .../setup/tests/setupComponentsSpec.react.jsx   | 21 
 .../tests/componentsSpec.react.jsx  | 21 
 app/config.js   |  1 +
 app/core/routeObject.js |  7 +--
 app/core/tests/routeObjectSpec.js   | 11 ++--
 48 files changed, 504 insertions(+), 481 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/e6450a0d/app/addons/activetasks/components.react.jsx
--
diff --git a/app/addons/activetasks/components.react.jsx 
b/app/addons/activetasks/components.react.jsx
index 7e65399..b8d294c 100644
--- a/app/addons/activetasks/components.react.jsx
+++ b/app/addons/activetasks/components.react.jsx
@@ -14,12 +14,13 @@ define([
   'app',
   'api',
   'react',
+  'react-dom',
   'addons/activetasks/stores',
   'addons/activetasks/resources',
   'addons/activetasks/actions',
   'addons/components/react-components.react',
   'addons/fauxton/components.react'
-], function (app, FauxtonAPI, React, Stores, Resources, Actions, Components, 
ComponentsReact) {
+], function (app, FauxtonAPI, React, ReactDOM, Stores, Resources, Actions, 
Components, ComponentsReact) {
 
   var activeTasksStore = Stores.activeTasksStore;
   var ReactCSSTransitionGroup = React.addons.CSSTransitionGroup;
@@ -263,21 +264,20 @@ define([
   var th_class = 'header-field ' + this.props.headerName;
 
   return (
-
-  
-
-  {this.props.displayName} {arrow}
-

[6/6] fauxton commit: updated refs/heads/master to e6450a0

2016-02-01 Thread benkeen
Updating React to 0.14.6


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/d0cb3d81
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/d0cb3d81
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/d0cb3d81

Branch: refs/heads/master
Commit: d0cb3d8127b4094b44cbb38e77334664f11fba2d
Parents: 574af6a
Author: Ben Keen 
Authored: Tue Jan 19 09:49:30 2016 -0800
Committer: Ben Keen 
Committed: Mon Feb 1 08:39:35 2016 -0800

--
 assets/js/libs/react-dom.js |42 +
 assets/js/libs/react.js | 37013 ++---
 2 files changed, 18108 insertions(+), 18947 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/d0cb3d81/assets/js/libs/react-dom.js
--
diff --git a/assets/js/libs/react-dom.js b/assets/js/libs/react-dom.js
new file mode 100644
index 000..928ddd4
--- /dev/null
+++ b/assets/js/libs/react-dom.js
@@ -0,0 +1,42 @@
+/**
+ * ReactDOM v0.14.6
+ *
+ * Copyright 2013-2015, Facebook, Inc.
+ * All rights reserved.
+ *
+ * This source code is licensed under the BSD-style license found in the
+ * LICENSE file in the root directory of this source tree. An additional grant
+ * of patent rights can be found in the PATENTS file in the same directory.
+ *
+ */
+// Based off https://github.com/ForbesLindesay/umd/blob/master/template.js
+;(function(f) {
+  // CommonJS
+  if (typeof exports === "object" && typeof module !== "undefined") {
+module.exports = f(require('react'));
+
+// RequireJS
+  } else if (typeof define === "function" && define.amd) {
+define(['react'], f);
+
+// 

[3/6] fauxton commit: updated refs/heads/master to e6450a0

2016-02-01 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/cab6fc2d/assets/js/libs/react-bootstrap.js
--
diff --git a/assets/js/libs/react-bootstrap.js 
b/assets/js/libs/react-bootstrap.js
index caef22b..e02b0bf 100644
--- a/assets/js/libs/react-bootstrap.js
+++ b/assets/js/libs/react-bootstrap.js
@@ -1,16265 +1,17083 @@
 (function webpackUniversalModuleDefinition(root, factory) {
-  if(typeof exports === 'object' && typeof module === 'object')
-module.exports = factory(require("react"));
-  else if(typeof define === 'function' && define.amd)
-define(["react"], factory);
-  else if(typeof exports === 'object')
-exports["ReactBootstrap"] = factory(require("react"));
-  else
-root["ReactBootstrap"] = factory(root["React"]);
-})(this, function(__WEBPACK_EXTERNAL_MODULE_4__) {
+   if(typeof exports === 'object' && typeof module === 'object')
+   module.exports = factory(require("react"), 
require("react-dom"));
+   else if(typeof define === 'function' && define.amd)
+   define(["react", "react-dom"], factory);
+   else if(typeof exports === 'object')
+   exports["ReactBootstrap"] = factory(require("react"), 
require("react-dom"));
+   else
+   root["ReactBootstrap"] = factory(root["React"], 
root["ReactDOM"]);
+})(this, function(__WEBPACK_EXTERNAL_MODULE_4__, 
__WEBPACK_EXTERNAL_MODULE_63__) {
 return /**/ (function(modules) { // webpackBootstrap
-/**/  // The module cache
-/**/  var installedModules = {};
+/**/   // The module cache
+/**/   var installedModules = {};
 
-/**/  // The require function
-/**/  function __webpack_require__(moduleId) {
+/**/   // The require function
+/**/   function __webpack_require__(moduleId) {
 
-/**/// Check if module is in cache
-/**/if(installedModules[moduleId])
-/**/  return installedModules[moduleId].exports;
+/**/   // Check if module is in cache
+/**/   if(installedModules[moduleId])
+/**/   return installedModules[moduleId].exports;
 
-/**/// Create a new module (and put it into the cache)
-/**/var module = installedModules[moduleId] = {
-/**/  exports: {},
-/**/  id: moduleId,
-/**/  loaded: false
-/**/};
+/**/   // Create a new module (and put it into the cache)
+/**/   var module = installedModules[moduleId] = {
+/**/   exports: {},
+/**/   id: moduleId,
+/**/   loaded: false
+/**/   };
 
-/**/// Execute the module function
-/**/modules[moduleId].call(module.exports, module, module.exports, 
__webpack_require__);
+/**/   // Execute the module function
+/**/   modules[moduleId].call(module.exports, module, 
module.exports, __webpack_require__);
 
-/**/// Flag the module as loaded
-/**/module.loaded = true;
+/**/   // Flag the module as loaded
+/**/   module.loaded = true;
 
-/**/// Return the exports of the module
-/**/return module.exports;
-/**/  }
+/**/   // Return the exports of the module
+/**/   return module.exports;
+/**/   }
 
 
-/**/  // expose the modules object (__webpack_modules__)
-/**/  __webpack_require__.m = modules;
+/**/   // expose the modules object (__webpack_modules__)
+/**/   __webpack_require__.m = modules;
 
-/**/  // expose the module cache
-/**/  __webpack_require__.c = installedModules;
+/**/   // expose the module cache
+/**/   __webpack_require__.c = installedModules;
 
-/**/  // __webpack_public_path__
-/**/  __webpack_require__.p = "";
+/**/   // __webpack_public_path__
+/**/   __webpack_require__.p = "";
 
-/**/  // Load entry module and return exports
-/**/  return __webpack_require__(0);
+/**/   // Load entry module and return exports
+/**/   return __webpack_require__(0);
 /**/ })
 //
 /**/ ([
 /* 0 */
 /***/ function(module, exports, __webpack_require__) {
 
-  'use strict';
+   'use strict';
 
-  var _interopRequireDefault = __webpack_require__(1)['default'];
+   var _interopRequireDefault = __webpack_require__(1)['default'];
 
-  var _interopRequireWildcard = __webpack_require__(2)['default'];
+   var _interopRequireWildcard = __webpack_require__(2)['default'];
 
-  exports.__esModule = true;
+   exports.__esModule = true;
 
-  var _utilsChildrenValueInputValidation = __webpack_require__(3);
+   var _utilsChildrenValueInputValidation = __webpack_require__(3);
 
-  var _utilsChildrenValueInputValidation2 = 

[1/6] fauxton commit: updated refs/heads/master to e6450a0

2016-02-01 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master 574af6a8b -> e6450a0d0


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/e6450a0d/app/addons/documents/index-editor/tests/viewIndex.componentsSpec.react.jsx
--
diff --git 
a/app/addons/documents/index-editor/tests/viewIndex.componentsSpec.react.jsx 
b/app/addons/documents/index-editor/tests/viewIndex.componentsSpec.react.jsx
index 67df4e5..e217d3c 100644
--- a/app/addons/documents/index-editor/tests/viewIndex.componentsSpec.react.jsx
+++ b/app/addons/documents/index-editor/tests/viewIndex.componentsSpec.react.jsx
@@ -16,8 +16,9 @@ define([
   'addons/documents/index-editor/actions',
   'addons/documents/resources',
   'testUtils',
-  "react"
-], function (FauxtonAPI, Views, Stores, Actions, Documents, utils, React) {
+  "react",
+  'react-dom'
+], function (FauxtonAPI, Views, Stores, Actions, Documents, utils, React, 
ReactDOM) {
   FauxtonAPI.router = new FauxtonAPI.Router([]);
 
   var assert = utils.assert;
@@ -53,7 +54,7 @@ define([
 });
 
 afterEach(function () {
-  React.unmountComponentAtNode(container);
+  ReactDOM.unmountComponentAtNode(container);
 });
 
 describe('getReduceValue', function () {
@@ -169,12 +170,12 @@ define([
 afterEach(function () {
   restore(Actions.newDesignDoc);
   restore(Actions.designDocChange);
-  React.unmountComponentAtNode(container);
+  ReactDOM.unmountComponentAtNode(container);
 });
 
 it('calls new design doc on new selected', function () {
   var spy = sinon.spy(Actions, 'newDesignDoc');
-  TestUtils.Simulate.change($(selectorEl.getDOMNode()).find('#ddoc')[0], {
+  
TestUtils.Simulate.change($(ReactDOM.findDOMNode(selectorEl)).find('#ddoc')[0], 
{
 target: {
   value: 'new'
 }
@@ -185,7 +186,7 @@ define([
 
 it('calls design doc changed on a different design doc selected', function 
() {
   var spy = sinon.spy(Actions, 'designDocChange');
-  TestUtils.Simulate.change($(selectorEl.getDOMNode()).find('#ddoc')[0], {
+  
TestUtils.Simulate.change($(ReactDOM.findDOMNode(selectorEl)).find('#ddoc')[0], 
{
 target: {
   value: 'another-doc'
 }
@@ -197,7 +198,7 @@ define([
 it('calls design doc changed on new design doc entered', function () {
   var spy = sinon.spy(Actions, 'designDocChange');
   Actions.newDesignDoc();
-  
TestUtils.Simulate.change($(selectorEl.getDOMNode()).find('#new-ddoc')[0], {
+  
TestUtils.Simulate.change($(ReactDOM.findDOMNode(selectorEl)).find('#new-ddoc')[0],
 {
 target: {
   value: 'new-doc-entered'
 }
@@ -207,12 +208,12 @@ define([
 });
 
 it('does not filter usual design docs', function () {
-  assert.ok(/_design\/test-doc/.test($(selectorEl.getDOMNode()).text()));
+  
assert.ok(/_design\/test-doc/.test($(ReactDOM.findDOMNode(selectorEl)).text()));
 });
 
 it('filters mango docs', function () {
   selectorEl = TestUtils.renderIntoDocument(, 
container);
-  
assert.notOk(/_design\/123mango/.test($(selectorEl.getDOMNode()).text()));
+  
assert.notOk(/_design\/123mango/.test($(ReactDOM.findDOMNode(selectorEl)).text()));
 });
   });
 
@@ -228,7 +229,7 @@ define([
 });
 
 afterEach(function () {
-  React.unmountComponentAtNode(container);
+  ReactDOM.unmountComponentAtNode(container);
   sandbox.restore();
 });
 
@@ -253,7 +254,7 @@ define([
 it('calls changeViewName on view name change', function () {
   var viewName = 'new-name';
   var spy = sandbox.spy(Actions, 'changeViewName');
-  var el = $(editorEl.getDOMNode()).find('#index-name')[0];
+  var el = $(ReactDOM.findDOMNode(editorEl)).find('#index-name')[0];
   TestUtils.Simulate.change(el, {
 target: {
   value: viewName

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/e6450a0d/app/addons/documents/index-results/index-results.components.react.jsx
--
diff --git 
a/app/addons/documents/index-results/index-results.components.react.jsx 
b/app/addons/documents/index-results/index-results.components.react.jsx
index 40af4e2..f809883 100644
--- a/app/addons/documents/index-results/index-results.components.react.jsx
+++ b/app/addons/documents/index-results/index-results.components.react.jsx
@@ -423,7 +423,7 @@ function (app, FauxtonAPI, React, Stores, Actions, 
Components, Documents, Fauxto
   disabled={this.props.isLoading}
   title="Select all docs that can be..." /> : null}
 
-
+
   {this.getDocumentList()}
 
   

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/e6450a0d/app/addons/documents/index-results/tests/index-results.componentsSpec.react.jsx

[2/8] fauxton commit: updated refs/heads/master to 62f149a

2016-01-29 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/62f149ad/assets/fonts/styleguide/fauxtonicon1-preview.html
--
diff --git a/assets/fonts/styleguide/fauxtonicon1-preview.html 
b/assets/fonts/styleguide/fauxtonicon1-preview.html
new file mode 100644
index 000..9d9c619
--- /dev/null
+++ b/assets/fonts/styleguide/fauxtonicon1-preview.html
@@ -0,0 +1,1928 @@
+
+
+  
+fauxtonicon1 glyphs preview
+
+
+  /* Page Styles */
+
+  * {
+-moz-box-sizing: border-box;
+-webkit-box-sizing: border-box;
+box-sizing: border-box;
+margin: 0;
+padding: 0;
+  }
+
+  body {
+background: #fff;
+color: #444;
+font: 16px/1.5 "Helvetica Neue", Helvetica, Arial, sans-serif;
+  }
+
+  a,
+  a:visited {
+color: #888;
+text-decoration: underline;
+  }
+  a:hover,
+  a:focus { color: #000; }
+
+  header {
+border-bottom: 2px solid #ddd;
+margin-bottom: 20px;
+overflow: hidden;
+padding: 20px 0;
+  }
+
+  header h1 {
+color: #888;
+float: left;
+font-size: 36px;
+font-weight: 300;
+  }
+
+  header a {
+float: right;
+font-size: 14px;
+  }
+
+  .container {
+margin: 0 auto;
+max-width: 1200px;
+min-width: 960px;
+padding: 0 40px;
+width: 90%;
+  }
+
+  .glyph {
+border-bottom: 1px dotted #ccc;
+padding: 10px 0 20px;
+margin-bottom: 20px;
+  }
+
+  .preview-glyphs { vertical-align: bottom; }
+
+  .preview-scale {
+color: #888;
+font-size: 12px;
+margin-top: 5px;
+  }
+
+  .step {
+display: inline-block;
+line-height: 1;
+position: relative;
+width: 10%;
+  }
+
+  .step .letters,
+  .step i {
+-webkit-transition: opacity .3s;
+-moz-transition: opacity .3s;
+-ms-transition: opacity .3s;
+-o-transition: opacity .3s;
+transition: opacity .3s;
+  }
+
+  .step:hover .letters { opacity: 1; }
+  .step:hover i { opacity: .3; }
+
+  .letters {
+opacity: .3;
+position: absolute;
+  }
+
+  .characters-off .letters { display: none; }
+  .characters-off .step:hover i { opacity: 1; }
+
+  
+  .size-12 { font-size: 12px; }
+  
+  .size-14 { font-size: 14px; }
+  
+  .size-16 { font-size: 16px; }
+  
+  .size-18 { font-size: 18px; }
+  
+  .size-21 { font-size: 21px; }
+  
+  .size-24 { font-size: 24px; }
+  
+  .size-36 { font-size: 36px; }
+  
+  .size-48 { font-size: 48px; }
+  
+  .size-60 { font-size: 60px; }
+  
+  .size-72 { font-size: 72px; }
+  
+
+  .usage { margin-top: 10px; }
+
+  .usage input {
+font-family: monospace;
+margin-right: 3px;
+padding: 2px 5px;
+text-align: center;
+  }
+
+  .usage .point { width: 150px; }
+
+  .usage .class { width: 250px; }
+
+  footer {
+color: #888;
+font-size: 12px;
+padding: 20px 0;
+  }
+
+  /* Icon Font: fauxtonicon1 */
+
+  @font-face {
+  font-family: "fauxtonicon1";
+  src: url("../fauxtonicon1.eot");
+  src: url("../fauxtonicon1.eot?#iefix") format("embedded-opentype"),
+   url("../fauxtonicon1.woff") format("woff"),
+   url("../fauxtonicon1.ttf") format("truetype"),
+   url("../fauxtonicon1.svg#fauxtonicon1") format("svg");
+  font-weight: normal;
+  font-style: normal;
+}
+
+@media screen and (-webkit-min-device-pixel-ratio:0) {
+  @font-face {
+font-family: "fauxtonicon1";
+src: url("../fauxtonicon1.svg#fauxtonicon1") format("svg");
+  }
+}
+
+  [data-icon]:before { content: attr(data-icon); }
+
+  [data-icon]:before,
+  .fonticon-activetasks:before,
+.fonticon-arrow-box-down:before,
+.fonticon-arrow-box-up:before,
+.fonticon-arrow_left:before,
+.fonticon-arrow_right:before,
+.fonticon-arrows-cw:before,
+.fonticon-article:before,
+.fonticon-attention-alt:before,
+.fonticon-attention-circled:before,
+.fonticon-bell:before,
+.fonticon-block:before,
+.fonticon-bookmark:before,
+.fonticon-bookmark-ribbon-wplus:before,
+.fonticon-burger:before,
+.fonticon-cancel:before,
+.fonticon-cancel-circled:before,
+.fonticon-cancel-circled2:before,
+.fonticon-circle-empty:before,
+.fonticon-clipboard:before,
+.fonticon-clock:before,
+.fonticon-cog:before,
+.fonticon-collapse:before,
+.fonticon-cw:before,
+.fonticon-dashboard:before,
+.fonticon-database:before,
+.fonticon-deselect-all:before,
+.fonticon-document:before,
+.fonticon-documents:before,
+.fonticon-dot-circled:before,
+.fonticon-down:before,
+.fonticon-down-1:before,
+.fonticon-down-circled:before,
+.fonticon-down-dir:before,
+.fonticon-down-open:before,
+.fonticon-drop-down-dots:before,

[8/8] fauxton commit: updated refs/heads/master to 62f149a

2016-01-29 Thread benkeen
fontawesome publishing changes

This PR handles a bit of regression that always occurs when
we regenerate the font icon files.

This'll take a bit of explanation...

On Fauxton, we use a custom Ruby template to generate our
icons.less file, see:
https://github.com/apache/couchdb-fauxton/blob/master/assets/fonts/templates/icons.less

The problem with this is that the generated CSS is of the form:

.icon1-classname:before { content: "\f123"; }
.icon2-classname:before { content: "\f234"; }
...

That's perfectly fine CSS, but because the class isn't defined
without the :before pseudo class after it, we can't reference
and use that class in other classes in our LESS files. This
is problematic because any time we either have to re-use the
class then override everything we don't want (which I've found
wasn't always possible) or we hardcode the unicode char, like:
.mynewclass { content: "\u123"; }

And THAT is a problem because any time we update the list of
fonts and regenerate the font files, the unicode char assigned
to that class may change. As such, we have to re-examine the
whole codebase to update any icons that may have changed.

Sooo. this adds a new glyph_less var that generates the output
in a Less-friendly format:
.icon1-classname { &:before { ... }}

Ultimately we should replace the whole lib or update it all,
but I have an immediate need to add new icons and don't want to
manually fix things yet again.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/5edef9ff
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/5edef9ff
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/5edef9ff

Branch: refs/heads/master
Commit: 5edef9ffb143a3a92a6623e82f20280404cc27a0
Parents: 874283c
Author: Ben Keen <ben.k...@gmail.com>
Authored: Tue Jan 26 15:19:31 2016 -0800
Committer: Ben Keen <ben.k...@gmail.com>
Committed: Fri Jan 29 08:41:41 2016 -0800

--
 assets/fonts/Gemfile  |   5 +-
 assets/fonts/Gemfile.lock |  31 -
 assets/fonts/README.md|  19 +--
 assets/fonts/fauxtonicon.eot  | Bin 18386 -> 18386 bytes
 assets/fonts/fauxtonicon.svg  |   6 +-
 assets/fonts/fauxtonicon.ttf  | Bin 18196 -> 18196 bytes
 assets/fonts/fauxtonicon.woff | Bin 10460 -> 10460 bytes
 assets/fonts/templates/icons.less |   4 +-
 assets/less/icons.less| 228 +
 9 files changed, 135 insertions(+), 158 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/5edef9ff/assets/fonts/Gemfile
--
diff --git a/assets/fonts/Gemfile b/assets/fonts/Gemfile
index 3f6dd8a..8af80b1 100644
--- a/assets/fonts/Gemfile
+++ b/assets/fonts/Gemfile
@@ -1,5 +1,6 @@
 source 'https://rubygems.org'
 
 gem 'fontcustom', 
-:git => 'https://github.com/seanbarclay/fontcustom.git', 
-:branch => 'master'
\ No newline at end of file
+:git => 'https://github.com/benkeen/fontcustom.git',
+:branch => 'master'
+

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/5edef9ff/assets/fonts/Gemfile.lock
--
diff --git a/assets/fonts/Gemfile.lock b/assets/fonts/Gemfile.lock
deleted file mode 100644
index bdee8ac..000
--- a/assets/fonts/Gemfile.lock
+++ /dev/null
@@ -1,31 +0,0 @@
-GIT
-  remote: https://github.com/seanbarclay/fontcustom.git
-  revision: 1c3ad3d2633d3a8add39e8827115394e9ec02d88
-  branch: master
-  specs:
-fontcustom (1.3.3)
-  json (~> 1.4)
-  listen (~> 1.0)
-  thor (~> 0.14)
-
-GEM
-  remote: https://rubygems.org/
-  specs:
-ffi (1.9.3)
-json (1.8.1)
-listen (1.3.1)
-  rb-fsevent (>= 0.9.3)
-  rb-inotify (>= 0.9)
-  rb-kqueue (>= 0.2)
-rb-fsevent (0.9.4)
-rb-inotify (0.9.5)
-  ffi (>= 0.5.0)
-rb-kqueue (0.2.3)
-  ffi (>= 0.5.0)
-thor (0.19.1)
-
-PLATFORMS
-  ruby
-
-DEPENDENCIES
-  fontcustom!

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/5edef9ff/assets/fonts/README.md
--
diff --git a/assets/fonts/README.md b/assets/fonts/README.md
index fade249..4a7c079 100644
--- a/assets/fonts/README.md
+++ b/assets/fonts/README.md
@@ -4,7 +4,7 @@ This is a temp solution till Fontcustom fixes this 
[BUG](https://github.com/Font
 
 ### Installation
 
-Requires **Bundler.io**, **Ruby 1.9.2+**, **FontForge** with Python scripting.
+1. Requires **Bundler.io**, **Ruby 1.9.2+**, **FontForge** with Python 
scripting.
 
 ```sh
 # On Mac
@@ -17,18 +17,21 @@ $ bundle
 That should install the gem in a path like below:
 /Users/[USERNAME

[1/8] fauxton commit: updated refs/heads/master to 62f149a

2016-01-29 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master 874283c13 -> 62f149add


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/62f149ad/assets/icons/file-code-o.svg
--
diff --git a/assets/icons/file-code-o.svg b/assets/icons/file-code-o.svg
new file mode 100644
index 000..5b50cb2
--- /dev/null
+++ b/assets/icons/file-code-o.svg
@@ -0,0 +1 @@
+http://www.w3.org/2000/svg;>

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/62f149ad/assets/icons/files-o.svg
--
diff --git a/assets/icons/files-o.svg b/assets/icons/files-o.svg
new file mode 100644
index 000..5d2767d
--- /dev/null
+++ b/assets/icons/files-o.svg
@@ -0,0 +1 @@
+http://www.w3.org/2000/svg;>

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/62f149ad/assets/less/icons.less
--
diff --git a/assets/less/icons.less b/assets/less/icons.less
index 2d7d0c9..b1f3464 100644
--- a/assets/less/icons.less
+++ b/assets/less/icons.less
@@ -1,5 +1,5 @@
 /*
-*  Icon Font: fauxtonicon
+*  Icon Font: fauxtonicon1
 */
 
 /*  Licensed under the Apache License, Version 2.0 (the "License"); you may not
@@ -18,23 +18,23 @@
 /* had to add a custom template to the generator to get this to compile to 
append the proper path and specify  "url" instead of "font-url":
 
https://github.com/seanbarclay/fontcustom/blob/1c3ad3d2633d3a8add39e8827115394e9ec02d88/lib/fontcustom/generator/template.rb
 */
-@fauxtonFont: "fauxtonicon";
+@fauxtonFont: "fauxtonicon1";
 
 @font-face {
-  font-family: "fauxtonicon";
-  src: url("../fonts/fauxtonicon.eot");
-  src: url("../fonts/fauxtonicon.eot?#iefix") format("embedded-opentype"),
-   url("../fonts/fauxtonicon.woff") format("woff"),
-   url("../fonts/fauxtonicon.ttf") format("truetype"),
-   url("../fonts/fauxtonicon.svg#fauxtonicon") format("svg");
+  font-family: "fauxtonicon1";
+  src: url("../fonts/fauxtonicon1.eot");
+  src: url("../fonts/fauxtonicon1.eot?#iefix") format("embedded-opentype"),
+   url("../fonts/fauxtonicon1.woff") format("woff"),
+   url("../fonts/fauxtonicon1.ttf") format("truetype"),
+   url("../fonts/fauxtonicon1.svg#fauxtonicon1") format("svg");
   font-weight: normal;
   font-style: normal;
 }
 
 @media screen and (-webkit-min-device-pixel-ratio:0) {
   @font-face {
-font-family: "fauxtonicon";
-src: url("../fonts/fauxtonicon.svg#fauxtonicon") format("svg");
+font-family: "fauxtonicon1";
+src: url("../fonts/fauxtonicon1.svg#fauxtonicon1") format("svg");
   }
 }
 
@@ -79,6 +79,8 @@ 
https://github.com/seanbarclay/fontcustom/blob/1c3ad3d2633d3a8add39e8827115394e9
 .fonticon-exchange:before,
 .fonticon-expand:before,
 .fonticon-eye:before,
+.fonticon-file-code-o:before,
+.fonticon-files-o:before,
 .fonticon-gears:before,
 .fonticon-help:before,
 .fonticon-help-circled:before,
@@ -155,7 +157,7 @@ 
https://github.com/seanbarclay/fontcustom/blob/1c3ad3d2633d3a8add39e8827115394e9
 .fonticon-users:before,
 .fonticon-wrench:before {
   display: inline-block;
-  font-family: "fauxtonicon";
+  font-family: "fauxtonicon1";
   font-style: normal;
   font-weight: normal;
   font-variant: normal;
@@ -206,78 +208,80 @@ 
https://github.com/seanbarclay/fontcustom/blob/1c3ad3d2633d3a8add39e8827115394e9
 .fonticon-exchange { &:before { content: "\f123"; }}
 .fonticon-expand { &:before { content: "\f124"; }}
 .fonticon-eye { &:before { content: "\f125"; }}
-.fonticon-gears { &:before { content: "\f126"; }}
-.fonticon-help { &:before { content: "\f127"; }}
-.fonticon-help-circled { &:before { content: "\f128"; }}
-.fonticon-info-circled { &:before { content: "\f129"; }}
-.fonticon-json { &:before { content: "\f12a"; }}
-.fonticon-key { &:before { content: "\f12b"; }}
-.fonticon-left { &:before { content: "\f12c"; }}
-.fonticon-left-1 { &:before { content: "\f12d"; }}
-.fonticon-left-circled { &:before { content: "\f12e"; }}
-.fonticon-left-dir { &:before { content: "\f12f"; }}
-.fonticon-left-open { &:before { content: "\f130"; }}
-.fonticon-link { &:before { content: "\f131"; }}
-.fonticon-list-alt { &:before { content: "\f132"; }}
-.fonticon-lock { &:before { content: "\f133"; }}
-.fonticon-mail { &:before { content: "\f134"; }}
-.fonticon-mail-alt { &:before { content: "\f135"; }}
-.fonticon-megaphone { &:before { content: "\f136"; }}
-.fonticon-minus { &:before { content: "\f137"; }}
-.fonticon-minus-circled { &:before { content: "\f138"; }}
-.fonticon-minus-circled2 { &:before { content: "\f139"; }}
-.fonticon-minus-squared { &:before { content: "\f13a"; }}
-.fonticon-minus-squared-alt { &:before { content: "\f13b"; }}
-.fonticon-mixer { &:before { content: "\f13c"; }}
-.fonticon-new-database { &:before { content: "\f13d"; }}
-.fonticon-ok { &:before { content: "\f13e"; }}
-.fonticon-ok-circled { &:before { content: "\f13f"; }}

[3/8] fauxton commit: updated refs/heads/master to 62f149a

2016-01-29 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/62f149ad/assets/fonts/fauxtonicon1.woff
--
diff --git a/assets/fonts/fauxtonicon1.woff b/assets/fonts/fauxtonicon1.woff
new file mode 100644
index 000..ab563e8
Binary files /dev/null and b/assets/fonts/fauxtonicon1.woff differ

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/62f149ad/assets/fonts/styleguide/fauxtonicon-preview.html
--
diff --git a/assets/fonts/styleguide/fauxtonicon-preview.html 
b/assets/fonts/styleguide/fauxtonicon-preview.html
deleted file mode 100644
index 52b04e9..000
--- a/assets/fonts/styleguide/fauxtonicon-preview.html
+++ /dev/null
@@ -1,1898 +0,0 @@
-
-
-  
-fauxtonicon glyphs preview
-
-
-  /* Page Styles */
-
-  * {
--moz-box-sizing: border-box;
--webkit-box-sizing: border-box;
-box-sizing: border-box;
-margin: 0;
-padding: 0;
-  }
-
-  body {
-background: #fff;
-color: #444;
-font: 16px/1.5 "Helvetica Neue", Helvetica, Arial, sans-serif;
-  }
-
-  a,
-  a:visited {
-color: #888;
-text-decoration: underline;
-  }
-  a:hover,
-  a:focus { color: #000; }
-
-  header {
-border-bottom: 2px solid #ddd;
-margin-bottom: 20px;
-overflow: hidden;
-padding: 20px 0;
-  }
-
-  header h1 {
-color: #888;
-float: left;
-font-size: 36px;
-font-weight: 300;
-  }
-
-  header a {
-float: right;
-font-size: 14px;
-  }
-
-  .container {
-margin: 0 auto;
-max-width: 1200px;
-min-width: 960px;
-padding: 0 40px;
-width: 90%;
-  }
-
-  .glyph {
-border-bottom: 1px dotted #ccc;
-padding: 10px 0 20px;
-margin-bottom: 20px;
-  }
-
-  .preview-glyphs { vertical-align: bottom; }
-
-  .preview-scale {
-color: #888;
-font-size: 12px;
-margin-top: 5px;
-  }
-
-  .step {
-display: inline-block;
-line-height: 1;
-position: relative;
-width: 10%;
-  }
-
-  .step .letters,
-  .step i {
--webkit-transition: opacity .3s;
--moz-transition: opacity .3s;
--ms-transition: opacity .3s;
--o-transition: opacity .3s;
-transition: opacity .3s;
-  }
-
-  .step:hover .letters { opacity: 1; }
-  .step:hover i { opacity: .3; }
-
-  .letters {
-opacity: .3;
-position: absolute;
-  }
-
-  .characters-off .letters { display: none; }
-  .characters-off .step:hover i { opacity: 1; }
-
-  
-  .size-12 { font-size: 12px; }
-  
-  .size-14 { font-size: 14px; }
-  
-  .size-16 { font-size: 16px; }
-  
-  .size-18 { font-size: 18px; }
-  
-  .size-21 { font-size: 21px; }
-  
-  .size-24 { font-size: 24px; }
-  
-  .size-36 { font-size: 36px; }
-  
-  .size-48 { font-size: 48px; }
-  
-  .size-60 { font-size: 60px; }
-  
-  .size-72 { font-size: 72px; }
-  
-
-  .usage { margin-top: 10px; }
-
-  .usage input {
-font-family: monospace;
-margin-right: 3px;
-padding: 2px 5px;
-text-align: center;
-  }
-
-  .usage .point { width: 150px; }
-
-  .usage .class { width: 250px; }
-
-  footer {
-color: #888;
-font-size: 12px;
-padding: 20px 0;
-  }
-
-  /* Icon Font: fauxtonicon */
-
-  @font-face {
-  font-family: "fauxtonicon";
-  src: url("../fauxtonicon.eot");
-  src: url("../fauxtonicon.eot?#iefix") format("embedded-opentype"),
-   url("../fauxtonicon.woff") format("woff"),
-   url("../fauxtonicon.ttf") format("truetype"),
-   url("../fauxtonicon.svg#fauxtonicon") format("svg");
-  font-weight: normal;
-  font-style: normal;
-}
-
-@media screen and (-webkit-min-device-pixel-ratio:0) {
-  @font-face {
-font-family: "fauxtonicon";
-src: url("../fauxtonicon.svg#fauxtonicon") format("svg");
-  }
-}
-
-  [data-icon]:before { content: attr(data-icon); }
-
-  [data-icon]:before,
-  .fonticon-activetasks:before,
-.fonticon-arrow-box-down:before,
-.fonticon-arrow-box-up:before,
-.fonticon-arrow_left:before,
-.fonticon-arrow_right:before,
-.fonticon-arrows-cw:before,
-.fonticon-article:before,
-.fonticon-attention-alt:before,
-.fonticon-attention-circled:before,
-.fonticon-bell:before,
-.fonticon-block:before,
-.fonticon-bookmark:before,
-.fonticon-bookmark-ribbon-wplus:before,
-.fonticon-burger:before,
-.fonticon-cancel:before,
-.fonticon-cancel-circled:before,
-.fonticon-cancel-circled2:before,
-.fonticon-circle-empty:before,
-.fonticon-clipboard:before,
-.fonticon-clock:before,
-.fonticon-cog:before,
-.fonticon-collapse:before,
-.fonticon-cw:before,

[6/8] fauxton commit: updated refs/heads/master to 62f149a

2016-01-29 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/62f149ad/assets/fonts/fauxtonicon.svg
--
diff --git a/assets/fonts/fauxtonicon.svg b/assets/fonts/fauxtonicon.svg
deleted file mode 100644
index c518b39..000
--- a/assets/fonts/fauxtonicon.svg
+++ /dev/null
@@ -1,683 +0,0 @@
-
-http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd; >
-
-http://www.w3.org/2000/svg; 
xmlns:xlink="http://www.w3.org/1999/xlink; version="1.1">
-
-Created by FontForge 20150302 at Tue Jan 26 15:17:17 2016
- By Ben Keen
-Copyright (c) 2016, Ben Keen
-
-
-
-  
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/62f149ad/assets/fonts/fauxtonicon.ttf
--
diff --git a/assets/fonts/fauxtonicon.ttf b/assets/fonts/fauxtonicon.ttf
deleted file mode 100644
index 645a4f9..000
Binary files a/assets/fonts/fauxtonicon.ttf and /dev/null differ



[5/8] fauxton commit: updated refs/heads/master to 62f149a

2016-01-29 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/62f149ad/assets/fonts/fauxtonicon.woff
--
diff --git a/assets/fonts/fauxtonicon.woff b/assets/fonts/fauxtonicon.woff
deleted file mode 100644
index 60310d3..000
Binary files a/assets/fonts/fauxtonicon.woff and /dev/null differ

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/62f149ad/assets/fonts/fauxtonicon1.eot
--
diff --git a/assets/fonts/fauxtonicon1.eot b/assets/fonts/fauxtonicon1.eot
new file mode 100644
index 000..32e7491
Binary files /dev/null and b/assets/fonts/fauxtonicon1.eot differ



[4/8] fauxton commit: updated refs/heads/master to 62f149a

2016-01-29 Thread benkeen
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/62f149ad/assets/fonts/fauxtonicon1.svg
--
diff --git a/assets/fonts/fauxtonicon1.svg b/assets/fonts/fauxtonicon1.svg
new file mode 100644
index 000..032878c
--- /dev/null
+++ b/assets/fonts/fauxtonicon1.svg
@@ -0,0 +1,700 @@
+
+http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd; >
+
+http://www.w3.org/2000/svg; 
xmlns:xlink="http://www.w3.org/1999/xlink; version="1.1">
+
+Created by FontForge 20150302 at Tue Jan 26 15:25:38 2016
+ By Ben Keen
+Copyright (c) 2016, Ben Keen
+
+
+
+  
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/62f149ad/assets/fonts/fauxtonicon1.ttf
--
diff --git a/assets/fonts/fauxtonicon1.ttf b/assets/fonts/fauxtonicon1.ttf
new file mode 100644
index 000..0402742
Binary files /dev/null and b/assets/fonts/fauxtonicon1.ttf differ



fauxton commit: updated refs/heads/master to 9e5cf9f

2016-01-19 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master 57aadfbb3 -> 9e5cf9fe3


Minor CSS tweaks

After speaking with Justin, I made a small tweak to the
header CSS which ensures the spacing between the API and
OPTIONS header buttons and their icons was consistent
regardless of viewport size. That lead to a few other small
CSS tweaks to ensure it works on all screen sizes.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/9e5cf9fe
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/9e5cf9fe
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/9e5cf9fe

Branch: refs/heads/master
Commit: 9e5cf9fe37ed4f71377f2b03392318c258b5d762
Parents: 57aadfb
Author: Ben Keen 
Authored: Mon Jan 18 12:59:18 2016 -0800
Committer: Ben Keen 
Committed: Tue Jan 19 09:25:35 2016 -0800

--
 .../assets/less/header-togglebutton.less|  5 +-
 app/addons/databases/assets/less/databases.less |  2 +-
 app/addons/documents/assets/less/documents.less |  3 +-
 .../documents/assets/less/query-options.less|  2 +-
 app/addons/documents/routes-mango.js|  2 -
 app/addons/fauxton/assets/less/components.less  |  2 +-
 assets/less/fauxton.less| 71 +---
 7 files changed, 27 insertions(+), 60 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/9e5cf9fe/app/addons/components/assets/less/header-togglebutton.less
--
diff --git a/app/addons/components/assets/less/header-togglebutton.less 
b/app/addons/components/assets/less/header-togglebutton.less
index e804204..33834ca 100644
--- a/app/addons/components/assets/less/header-togglebutton.less
+++ b/app/addons/components/assets/less/header-togglebutton.less
@@ -25,9 +25,12 @@
 font-size: 20px;
 &:before {
   float: left;
-  margin: 10px 6px 0 0;
+  margin: 10px 0 0 0;
 }
   }
+  span {
+margin-left: 6px;
+  }
   .icon.fontawesome {
 &:before {
   margin: 6px 6px 0 0;

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/9e5cf9fe/app/addons/databases/assets/less/databases.less
--
diff --git a/app/addons/databases/assets/less/databases.less 
b/app/addons/databases/assets/less/databases.less
index ddf616c..58763a5 100644
--- a/app/addons/databases/assets/less/databases.less
+++ b/app/addons/databases/assets/less/databases.less
@@ -36,7 +36,7 @@
 .new-database-tray {
   padding: 16px 20px 28px;
   &:before {
-right: 243px;
+right: 206px;
   }
 
   input.input-xxlarge {

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/9e5cf9fe/app/addons/documents/assets/less/documents.less
--
diff --git a/app/addons/documents/assets/less/documents.less 
b/app/addons/documents/assets/less/documents.less
index f8aca08..0ea173a 100644
--- a/app/addons/documents/assets/less/documents.less
+++ b/app/addons/documents/assets/less/documents.less
@@ -159,8 +159,9 @@ button.string-edit[disabled] {
   }
 }
 
-#react-headerbar {
+body #dashboard #react-headerbar {
   float: left;
+  overflow: hidden;
 }
 
 .doc-editor-extension-icons {

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/9e5cf9fe/app/addons/documents/assets/less/query-options.less
--
diff --git a/app/addons/documents/assets/less/query-options.less 
b/app/addons/documents/assets/less/query-options.less
index 94421cd..e9556d2 100644
--- a/app/addons/documents/assets/less/query-options.less
+++ b/app/addons/documents/assets/less/query-options.less
@@ -57,7 +57,7 @@
 }
 
 #query-options-tray:before {
-  right: 175px;
+  right: 180px;
 }
 
 #query-options-tray {

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/9e5cf9fe/app/addons/documents/routes-mango.js
--
diff --git a/app/addons/documents/routes-mango.js 
b/app/addons/documents/routes-mango.js
index c5410e8..379150b 100644
--- a/app/addons/documents/routes-mango.js
+++ b/app/addons/documents/routes-mango.js
@@ -70,8 +70,6 @@ function (app, FauxtonAPI, Helpers, BaseRoute, Databases,
 },
 
 findUsingIndex: function () {
-  console.log(this.database);
-
   var params = this.createParams(),
   urlParams = params.urlParams,
   mangoResultCollection = new Resources.MangoDocumentCollection(null, {

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/9e5cf9fe/app/addons/fauxton/assets/less/components.less
--
diff --git 

fauxton commit: updated refs/heads/master to 6f88c3e

2016-01-18 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master 9f44223c7 -> 6f88c3eb7


Minor extensibility tweaks

This PR contains a bunch of really small unrelated changes
for general extensibility.
- optional top-level class added to Tray component
- QueryOptions component now exposed for use elsewhere
- MainFieldsView query options component now accepts the doc URL
via a prop.
- Improvement for Up arrow on the query options tray placement


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/6f88c3eb
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/6f88c3eb
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/6f88c3eb

Branch: refs/heads/master
Commit: 6f88c3eb752655bd502f69fe64d0b4714b3874f7
Parents: 9f44223
Author: Ben Keen 
Authored: Mon Jan 18 08:19:20 2016 -0800
Committer: Ben Keen 
Committed: Mon Jan 18 12:24:34 2016 -0800

--
 .../components/react-components.react.jsx   |  8 +++-
 .../documents/assets/less/query-options.less|  6 +++---
 app/addons/documents/header/header.react.jsx|  2 +-
 .../queryoptions/queryoptions.react.jsx | 21 +---
 .../tests/queryoptions.componentsSpec.react.jsx | 10 +-
 5 files changed, 38 insertions(+), 9 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/6f88c3eb/app/addons/components/react-components.react.jsx
--
diff --git a/app/addons/components/react-components.react.jsx 
b/app/addons/components/react-components.react.jsx
index ee52ae2..a011b54 100644
--- a/app/addons/components/react-components.react.jsx
+++ b/app/addons/components/react-components.react.jsx
@@ -1113,6 +1113,12 @@ function (app, FauxtonAPI, React, Stores, 
FauxtonComponents, ace, beautifyHelper
   id: React.PropTypes.string.isRequired
 },
 
+getDefaultProps: function () {
+  return {
+className: ''
+  };
+},
+
 componentDidMount: function () {
   $('body').on('click.' + this.props.id, _.bind(this.closeIfOpen, this));
   FauxtonAPI.Events.on(FauxtonAPI.constants.EVENTS.TRAY_HIDE, 
this.closeIfOpen, this);
@@ -1150,7 +1156,7 @@ function (app, FauxtonAPI, React, Stores, 
FauxtonComponents, ace, beautifyHelper
 
 render: function () {
   return (
-
+
   {this.renderChildren()}
 
   );

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/6f88c3eb/app/addons/documents/assets/less/query-options.less
--
diff --git a/app/addons/documents/assets/less/query-options.less 
b/app/addons/documents/assets/less/query-options.less
index 3ddeecc..94421cd 100644
--- a/app/addons/documents/assets/less/query-options.less
+++ b/app/addons/documents/assets/less/query-options.less
@@ -57,7 +57,7 @@
 }
 
 #query-options-tray:before {
-  right: 230px;
+  right: 175px;
 }
 
 #query-options-tray {
@@ -65,8 +65,8 @@
   padding-top: 6px;
 
   .query-group:first-child {
-margin-top: 0px;
-padding-top: 0px;
+margin-top: 0;
+padding-top: 0;
   }
 
   .icon-question-sign {

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/6f88c3eb/app/addons/documents/header/header.react.jsx
--
diff --git a/app/addons/documents/header/header.react.jsx 
b/app/addons/documents/header/header.react.jsx
index 340f583..5c2f291 100644
--- a/app/addons/documents/header/header.react.jsx
+++ b/app/addons/documents/header/header.react.jsx
@@ -43,7 +43,7 @@ function (app, FauxtonAPI, React, Actions, ReactComponents,
 selectedView: indexResultsStore.getCurrentViewType(),
 isTableView: indexResultsStore.getIsTableView(),
 includeDocs: queryOptionsStore.getIncludeDocsEnabled(),
-bulkDocCollection: indexResultsStore.getBulkDocCollection(),
+bulkDocCollection: indexResultsStore.getBulkDocCollection()
   };
 },
 

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/6f88c3eb/app/addons/documents/queryoptions/queryoptions.react.jsx
--
diff --git a/app/addons/documents/queryoptions/queryoptions.react.jsx 
b/app/addons/documents/queryoptions/queryoptions.react.jsx
index b04e533..977edba 100644
--- a/app/addons/documents/queryoptions/queryoptions.react.jsx
+++ b/app/addons/documents/queryoptions/queryoptions.react.jsx
@@ -21,12 +21,25 @@ define([
 
 function (app, FauxtonAPI, React, Stores, Actions, Components) {
   var store = Stores.queryOptionsStore;
-  var LoadLines = Components.LoadLines;
   var Tray = Components.Tray;
   var TrayContents = 

fauxton commit: updated refs/heads/master to 8a7a0f9

2016-01-12 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master f61efde4b -> 8a7a0f9d2


Sidebar component updates

This makes a couple of changes to the DesignDoc and IndexSection
components used in the sidebar.

1. `` knew too much! It had some hardcoded
references to the structure (prop names) of the design docs and
how it was being called. Now it’s more generic and passed
everything it needs to know via props, so it’s a little bit
dumber + will work for any new type of design doc contents.

2. The design doc item in the sidebar will now only list
Search Indexes or other subsections if they have content. This
won’t impact Fauxton as is, but for script that wrap this
code, it’ll cut down on visual clutter in the UI. [This is
mostly for UX.]


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/8a7a0f9d
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/8a7a0f9d
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/8a7a0f9d

Branch: refs/heads/master
Commit: 8a7a0f9d209310a5520cfc48a138a7a3ae357735
Parents: f61efde
Author: Ben Keen 
Authored: Fri Jan 8 17:34:01 2016 -0800
Committer: Ben Keen 
Committed: Tue Jan 12 09:24:28 2016 -0800

--
 app/addons/documents/sidebar/sidebar.react.jsx  | 71 ++-
 .../tests/sidebar.componentsSpec.react.jsx  | 93 
 2 files changed, 142 insertions(+), 22 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/8a7a0f9d/app/addons/documents/sidebar/sidebar.react.jsx
--
diff --git a/app/addons/documents/sidebar/sidebar.react.jsx 
b/app/addons/documents/sidebar/sidebar.react.jsx
index fba0acd..7a7abd7 100644
--- a/app/addons/documents/sidebar/sidebar.react.jsx
+++ b/app/addons/documents/sidebar/sidebar.react.jsx
@@ -142,18 +142,18 @@ function (app, FauxtonAPI, React, Stores, Actions, 
Components, DocumentViews) {
 
   var IndexSection = React.createClass({
 
-getDefaultProps: function () {
-  return {
-indexTypeMap: {
-  views:   { icon: 'fonticon-sidenav-map-reduce', urlFolder: '_view', 
type: 'view' },
-  indexes: { icon: 'fonticon-sidenav-search', urlFolder: '_indexes', 
type: 'search' }
-}
-  };
+propTypes: {
+  urlNamespace: React.PropTypes.string.isRequired,
+  icon: React.PropTypes.string.isRequired,
+  databaseName: React.PropTypes.string.isRequired,
+  designDocName: React.PropTypes.string.isRequired,
+  items: React.PropTypes.array.isRequired
 },
 
 createItems: function () {
   return _.map(this.props.items, function (index, key) {
-var href = 
FauxtonAPI.urls(this.props.indexTypeMap[this.props.selector].type, 'app', 
this.props.databaseName, this.props.designDocName);
+var href = FauxtonAPI.urls(this.props.urlNamespace, 'app', 
this.props.databaseName, this.props.designDocName);
+
 return (
   
   
   {this.createDesignDocs()}
@@ -412,9 +439,9 @@ function (app, FauxtonAPI, React, Stores, Actions, 
Components, DocumentViews) {
 }
   });
 
-  var Views = {
-SidebarController: SidebarController
+  return {
+SidebarController: SidebarController,
+DesignDoc: DesignDoc
   };
 
-  return Views;
 });

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/8a7a0f9d/app/addons/documents/sidebar/tests/sidebar.componentsSpec.react.jsx
--
diff --git 
a/app/addons/documents/sidebar/tests/sidebar.componentsSpec.react.jsx 
b/app/addons/documents/sidebar/tests/sidebar.componentsSpec.react.jsx
new file mode 100644
index 000..ec3a046
--- /dev/null
+++ b/app/addons/documents/sidebar/tests/sidebar.componentsSpec.react.jsx
@@ -0,0 +1,93 @@
+// Licensed under the Apache License, Version 2.0 (the "License"); you may not
+// use this file except in compliance with the License. You may obtain a copy 
of
+// the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+// License for the specific language governing permissions and limitations 
under
+// the License.
+define([
+  'api',
+  'react',
+  'testUtils',
+  'addons/documents/sidebar/sidebar.react'
+], function (FauxtonAPI, React, utils, Components) {
+  var assert = utils.assert;
+  var TestUtils = React.addons.TestUtils;
+  var DesignDoc = Components.DesignDoc;
+
+
+  describe('DesignDoc', function () {
+var container;
+
+beforeEach(function () {
+  

fauxton commit: updated refs/heads/master to efc2a1e

2016-01-05 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master 41967231e -> efc2a1e23


Move all React modals to use ReactBootstrap.Modal

Benefits are less custom code and all modals standardized by
default, so behaviour like clicking outside the modal or clicking
escape will close it. These are configurable, but the “out the
box” modals will be all the same.

Affects:
- Confirmation modal (e.g. full page doc editor, “are you sure you want to 
delete this doc?”)
- Upload file modal
- String Edit modal
- Clone Doc modal


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/efc2a1e2
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/efc2a1e2
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/efc2a1e2

Branch: refs/heads/master
Commit: efc2a1e23772861a5c7afedc5a4010e4c1575e02
Parents: 4196723
Author: Ben Keen 
Authored: Mon Dec 14 10:39:09 2015 -0800
Committer: Ben Keen 
Committed: Tue Jan 5 08:54:33 2016 -0800

--
 .../components/react-components.react.jsx   |  76 ++
 .../tests/stringEditModalSpec.react.jsx |  47 +
 .../documents/doc-editor/components.react.jsx   | 104 +--
 .../tests/doc-editor.componentsSpec.react.jsx   |  27 +++--
 .../tests/nightwatch/createsDocument.js |   2 +-
 app/addons/fauxton/components.react.jsx |  33 +++---
 assets/less/fauxton.less|   5 +
 7 files changed, 127 insertions(+), 167 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/efc2a1e2/app/addons/components/react-components.react.jsx
--
diff --git a/app/addons/components/react-components.react.jsx 
b/app/addons/components/react-components.react.jsx
index 7154070..c501396 100644
--- a/app/addons/components/react-components.react.jsx
+++ b/app/addons/components/react-components.react.jsx
@@ -25,6 +25,7 @@ function (app, FauxtonAPI, React, Stores, FauxtonComponents, 
ace, beautifyHelper
 
   var ReactCSSTransitionGroup = React.addons.CSSTransitionGroup;
   var componentStore = Stores.componentStore;
+  var Modal = ReactBootstrap.Modal;
 
 
   var ToggleHeaderButton = React.createClass({
@@ -355,7 +356,7 @@ function (app, FauxtonAPI, React, Stores, 
FauxtonComponents, ace, beautifyHelper
 stringEditModalVisible: false,
 stringEditIconVisible: false,
 stringEditIconStyle: {},
-stringEditModalDefaultString: ''
+stringEditModalValue: ''
   };
 },
 
@@ -560,8 +561,10 @@ function (app, FauxtonAPI, React, Stores, 
FauxtonComponents, ace, beautifyHelper
   }
   string = string.substring(1, lastChar);
 
-  this.setState({ stringEditModalVisible: true });
-  this.refs.stringEditModal.setValue(string);
+  this.setState({
+stringEditModalVisible: true,
+stringEditModalValue: string
+  });
 },
 
 saveStringEditModal: function (newString) {
@@ -648,6 +651,7 @@ function (app, FauxtonAPI, React, Stores, 
FauxtonComponents, ace, beautifyHelper
   
 
@@ -660,6 +664,7 @@ function (app, FauxtonAPI, React, Stores, 
FauxtonComponents, ace, beautifyHelper
   var StringEditModal = React.createClass({
 
 propTypes: {
+  value: React.PropTypes.string.isRequired,
   visible: React.PropTypes.bool.isRequired,
   onClose: React.PropTypes.func.isRequired,
   onSave: React.PropTypes.func.isRequired
@@ -673,46 +678,34 @@ function (app, FauxtonAPI, React, Stores, 
FauxtonComponents, ace, beautifyHelper
   };
 },
 
-componentDidUpdate: function () {
-  var params = (this.props.visible) ? { show: true, backdrop: 'static', 
keyboard: true } : 'hide';
-  $(React.findDOMNode(this)).modal(params);
+componentDidMount: function () {
+  if (!this.props.visible) {
+return;
+  }
+  this.initEditor(this.props.value);
+},
 
-  $(React.findDOMNode(this)).on('shown.bs.modal', function () {
-this.editor.focus();
+componentDidUpdate: function (prevProps) {
+  if (!this.props.visible) {
+return;
+  }
+  var val = '';
+  if (!prevProps.visible && this.props.visible) {
+val = JSON.parse('"' + this.props.value + '"'); // this ensures 
newlines are converted
+  }
 
-// re-opening the modal to edit a second string doesn't update the 
content. This forces the editor to redraw
-// to show the latest content each time it opens
-this.editor.resize();
-this.editor.renderer.updateFull();
-  }.bind(this));
+  this.initEditor(val);
 },
 
-// ensure that if the user clicks ESC to close the window, the store gets 
wind of it
-

fauxton commit: updated refs/heads/master to 638ca17

2016-01-04 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master 92a0109d4 -> 638ca1744


Remove old unused Backbone code

Nothing here is used any more; there are React counterparts for
Pagination, ConfirmationModal.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/638ca174
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/638ca174
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/638ca174

Branch: refs/heads/master
Commit: 638ca17443a5faac6f74bf9ebdd30b55decb8c71
Parents: 92a0109
Author: Ben Keen 
Authored: Fri Dec 18 10:05:50 2015 -0800
Committer: Ben Keen 
Committed: Mon Jan 4 11:28:39 2016 -0800

--
 app/addons/fauxton/components.js | 117 --
 app/addons/fauxton/tests/filteredViewSpec.js |  41 
 app/addons/fauxton/tests/paginateSpec.js |  66 
 3 files changed, 224 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/638ca174/app/addons/fauxton/components.js
--
diff --git a/app/addons/fauxton/components.js b/app/addons/fauxton/components.js
index d78997d..40405c3 100644
--- a/app/addons/fauxton/components.js
+++ b/app/addons/fauxton/components.js
@@ -271,107 +271,6 @@ function (app, FauxtonAPI, ace, spin, ZeroClipboard) {
   });
 
 
-  Components.Pagination = FauxtonAPI.View.extend({
-tagName: "ul",
-className: 'pagination',
-template: "addons/fauxton/templates/pagination",
-
-initialize: function (options) {
-  this.page = parseInt(options.page, 10);
-  this.perPage = options.perPage;
-  this.urlFun = options.urlFun;
-},
-
-serialize: function () {
-  var total = this.collection.length;
-  var totalPages = Math.ceil(total / this.perPage);
-
-  var visiblePagesObject = this.getVisiblePages(this.page, totalPages);
-
-  var from = visiblePagesObject.from,
-  to = visiblePagesObject.to;
-
-  return {
-page: this.page,
-perPage: this.perPage,
-total: total,
-totalPages: totalPages,
-urlFun: this.urlFun,
-from: from,
-to: to
-  };
-},
-
-getVisiblePages: function (page, totalPages) {
-  var from, to;
-
-  if (totalPages < 10) {
-from = 1;
-to = totalPages + 1;
-  } else { // if totalPages is more than 10
-from = page - 5;
-to = page + 5;
-
-if (from <= 1) {
-  from = 1;
-  to = 11;
-}
-if (to > totalPages + 1) {
-  from =  totalPages - 9;
-  to = totalPages + 1;
-}
-
-  }
-
-  return {
-from: from,
-to: to
-  };
-
-}
-  });
-
-
-  // A super-simple replacement for window.confirm()
-  Components.ConfirmationModal = FauxtonAPI.View.extend({
-template: 'addons/fauxton/templates/confirmation_modal',
-
-events: {
-  'click .js-btn-success': 'onSelectOkay'
-},
-
-initialize: function (options) {
-  this.options = _.extend({
-title: 'Please confirm',
-text: '',
-action: null
-  }, options);
-},
-
-onSelectOkay: function () {
-  this.hideModal();
-  if (_.isFunction(this.options.action)) {
-this.options.action();
-  }
-},
-
-showModal: function () {
-  this.$('.modal').modal();
-  $('.modal-backdrop').css('z-index', 
FauxtonAPI.constants.MISC.MODAL_BACKDROP_Z_INDEX);
-},
-
-hideModal: function () {
-  this.$('.modal').modal('hide');
-},
-
-serialize: function () {
-  return {
-title: this.options.title,
-text: this.options.text
-  };
-}
-  });
-
   Components.ModalView = FauxtonAPI.View.extend({
 disableLoader: true,
 
@@ -515,22 +414,6 @@ function (app, FauxtonAPI, ace, spin, ZeroClipboard) {
 }
   });
 
-  Components.FilteredView = FauxtonAPI.View.extend({
-createFilteredData: function (json) {
-  return _.reduce(this.filters, function (elements, filter) {
-return _.filter(elements, function (element) {
-  var match = false;
-  _.each(element, function (value) {
-if (new RegExp(filter, 'i').test(value.toString())) {
-  match = true;
-}
-  });
-  return match;
-});
-  }, json, this);
-}
-  });
-
 
   //Menu Drop down component. It takes links in this format and renders the 
Dropdown:
   // [{

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/638ca174/app/addons/fauxton/tests/filteredViewSpec.js
--
diff --git a/app/addons/fauxton/tests/filteredViewSpec.js 

fauxton commit: updated refs/heads/master to 158c208

2015-12-21 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master b5247fcd8 -> 158c2083a


Configurable 'Generated: [date]' comments

A while back we added in a comment to the foot of the generated
index.html file containing a "Generated: [data]" text. This has
proven to be extremely useful.

This PR just expands on it a little to make the label itself
configurable. So for environments using different bundles of
the Fauxton code, it can output the build target name, plus
the generation date, e.g.




Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/158c2083
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/158c2083
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/158c2083

Branch: refs/heads/master
Commit: 158c2083ae551967a745e31e9127be53c759ed8c
Parents: b5247fc
Author: Ben Keen 
Authored: Mon Dec 21 13:44:22 2015 -0800
Committer: Ben Keen 
Committed: Mon Dec 21 13:44:22 2015 -0800

--
 Gruntfile.js| 3 +++
 assets/index.underscore | 2 +-
 2 files changed, 4 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/158c2083/Gruntfile.js
--
diff --git a/Gruntfile.js b/Gruntfile.js
index 4b7574a..09eed4c 100644
--- a/Gruntfile.js
+++ b/Gruntfile.js
@@ -107,6 +107,9 @@ module.exports = function (grunt) {
 
 Object.keys(settings.template).forEach(function (key) {
   settings.template[key].variables.generationDate = new 
Date().toISOString();
+  if (!settings.template[key].variables.generationLabel) {
+settings.template[key].variables.generationLabel = 'Generated: ';
+  }
   settings.template[key].app.i18n = i18n;
 });
 

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/158c2083/assets/index.underscore
--
diff --git a/assets/index.underscore b/assets/index.underscore
index 17078fa..bb35bf0 100644
--- a/assets/index.underscore
+++ b/assets/index.underscore
@@ -45,7 +45,7 @@
   
   
 
-  
+  
 
 
 



[2/2] fauxton commit: updated refs/heads/master to b2195ac

2015-11-27 Thread benkeen
whitespace, single quotes


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/b2195ac7
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/b2195ac7
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/b2195ac7

Branch: refs/heads/master
Commit: b2195ac7de0954e0095e6cd957db58a1f1f7e8e7
Parents: 8311d62
Author: Ben Keen 
Authored: Fri Nov 27 10:13:26 2015 -0800
Committer: Ben Keen 
Committed: Fri Nov 27 10:13:26 2015 -0800

--
 app/addons/auth/base.js | 54 +---
 1 file changed, 26 insertions(+), 28 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/b2195ac7/app/addons/auth/base.js
--
diff --git a/app/addons/auth/base.js b/app/addons/auth/base.js
index a0af863..b8ab540 100644
--- a/app/addons/auth/base.js
+++ b/app/addons/auth/base.js
@@ -11,9 +11,9 @@
 // the License.
 
 define([
-  "app",
-  "api",
-  "addons/auth/routes"
+  'app',
+  'api',
+  'addons/auth/routes'
 ],
 
 function (app, FauxtonAPI, Auth) {
@@ -25,10 +25,10 @@ function (app, FauxtonAPI, Auth) {
   Auth.initialize = function () {
 
 FauxtonAPI.addHeaderLink({
-  id: "auth",
-  title: "Login",
-  href: "#login",
-  icon: "fonticon-user",
+  id: 'auth',
+  title: 'Login',
+  href: '#login',
+  icon: 'fonticon-user',
   bottomNav: true
 });
 
@@ -38,44 +38,42 @@ function (app, FauxtonAPI, Auth) {
 
   if (session.isAdminParty()) {
 link = {
-  id: "auth",
-  title: "Admin Party!",
-  href: "#createAdmin",
-  icon: "fonticon-user",
+  id: 'auth',
+  title: 'Admin Party!',
+  href: '#createAdmin',
+  icon: 'fonticon-user',
   bottomNav: true
 };
   } else if (session.isLoggedIn()) {
 link = {
-  id: "auth",
+  id: 'auth',
   title: session.user().name,
-  href: "#changePassword",
-  icon: "fonticon-user",
+  href: '#changePassword',
+  icon: 'fonticon-user',
   bottomNav: true
 };
 
 // ensure the footer link is removed before adding it
-FauxtonAPI.removeHeaderLink({id: "logout", footerNav: true});
-
+FauxtonAPI.removeHeaderLink({ id: 'logout', footerNav: true });
 FauxtonAPI.addHeaderLink({
   id: 'logout',
   footerNav: true,
-  href: "#logout",
-  title: "Logout",
-  icon: "",
+  href: '#logout',
+  title: 'Logout',
+  icon: '',
   className: 'logout'
 });
   } else {
 link = {
-  id: "auth",
+  id: 'auth',
   title: 'Login',
-  href: "#login",
-  icon: "fonticon-user",
-  bottomNav: true,
+  href: '#login',
+  icon: 'fonticon-user',
+  bottomNav: true
 };
-FauxtonAPI.removeHeaderLink({id: "logout", footerNav: true});
+FauxtonAPI.removeHeaderLink({ id: 'logout', footerNav: true });
   }
   FauxtonAPI.updateHeaderLink(link);
-
 });
 
 Auth.session.fetchUser().then(function () {
@@ -86,10 +84,10 @@ function (app, FauxtonAPI, Auth) {
   var deferred = $.Deferred();
 
   if (session.isAdminParty()) {
-session.trigger("authenticated");
+session.trigger('authenticated');
 deferred.resolve();
   } else if (session.matchesRoles(roles)) {
-session.trigger("authenticated");
+session.trigger('authenticated');
 deferred.resolve();
   } else {
 deferred.reject();
@@ -105,7 +103,7 @@ function (app, FauxtonAPI, Auth) {
   if (pattern.test(url)) {
 url = url.replace('login?urlback=', '');
   }
-  FauxtonAPI.navigate('/login?urlback=' + url, {replace: true});
+  FauxtonAPI.navigate('/login?urlback=' + url, { replace: true });
 };
 
 FauxtonAPI.auth.registerAuth(auth);



[1/2] fauxton commit: updated refs/heads/master to b2195ac

2015-11-27 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master a0886ac95 -> b2195ac7d


Fix for logout link showing up twice in footer

An old bug is the Logout link in the footer showing up twice. It's
a little difficult to reproduce consistently, but I've found this
works the best (Mac, chrome):
1. open dev tools
2. Login to Fauxton, notice the single "logout" link in footer.
3. click on the browser URL bar and click 
4. Repeat the above until you see two "logout" links in the footer.

What's happening is the change event on Auth.session is firing
twice, each of which adds a new footer link. Seems like with
some page loads it only fires once, sometimes twice.

This ensures the link is removed prior to adding it.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/8311d62f
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/8311d62f
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/8311d62f

Branch: refs/heads/master
Commit: 8311d62f47bd587a98bf385d7820998a5dfd40fc
Parents: a0886ac
Author: Ben Keen 
Authored: Tue Oct 6 20:36:44 2015 -0700
Committer: Ben Keen 
Committed: Fri Nov 27 10:10:19 2015 -0800

--
 app/addons/auth/base.js |  9 --
 app/addons/fauxton/navigation/stores.js |  3 +-
 .../navigation/tests/componentsSpec.react.jsx   | 31 +++-
 3 files changed, 38 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/8311d62f/app/addons/auth/base.js
--
diff --git a/app/addons/auth/base.js b/app/addons/auth/base.js
index 0d3a04a..a0af863 100644
--- a/app/addons/auth/base.js
+++ b/app/addons/auth/base.js
@@ -29,7 +29,7 @@ function (app, FauxtonAPI, Auth) {
   title: "Login",
   href: "#login",
   icon: "fonticon-user",
-  bottomNav: true,
+  bottomNav: true
 });
 
 Auth.session.on('change', function () {
@@ -42,7 +42,7 @@ function (app, FauxtonAPI, Auth) {
   title: "Admin Party!",
   href: "#createAdmin",
   icon: "fonticon-user",
-  bottomNav: true,
+  bottomNav: true
 };
   } else if (session.isLoggedIn()) {
 link = {
@@ -50,9 +50,12 @@ function (app, FauxtonAPI, Auth) {
   title: session.user().name,
   href: "#changePassword",
   icon: "fonticon-user",
-  bottomNav: true,
+  bottomNav: true
 };
 
+// ensure the footer link is removed before adding it
+FauxtonAPI.removeHeaderLink({id: "logout", footerNav: true});
+
 FauxtonAPI.addHeaderLink({
   id: 'logout',
   footerNav: true,

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/8311d62f/app/addons/fauxton/navigation/stores.js
--
diff --git a/app/addons/fauxton/navigation/stores.js 
b/app/addons/fauxton/navigation/stores.js
index 8ec8d0f..248522b 100644
--- a/app/addons/fauxton/navigation/stores.js
+++ b/app/addons/fauxton/navigation/stores.js
@@ -171,13 +171,14 @@ function (app, FauxtonAPI, ActionTypes) {
 
 dispatch: function (action) {
   switch (action.type) {
-
 case ActionTypes.ADD_NAVBAR_LINK:
   this.addLink(action.link);
 break;
+
 case ActionTypes.TOGGLE_NAVBAR_MENU:
   this.toggleMenu();
 break;
+
 case ActionTypes.UPDATE_NAVBAR_LINK:
   this.updateLink(action.link);
 break;

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/8311d62f/app/addons/fauxton/navigation/tests/componentsSpec.react.jsx
--
diff --git a/app/addons/fauxton/navigation/tests/componentsSpec.react.jsx 
b/app/addons/fauxton/navigation/tests/componentsSpec.react.jsx
index 60bb201..cb8d468 100644
--- a/app/addons/fauxton/navigation/tests/componentsSpec.react.jsx
+++ b/app/addons/fauxton/navigation/tests/componentsSpec.react.jsx
@@ -13,9 +13,11 @@ define([
   'api',
   'addons/fauxton/navigation/components.react',
   'addons/fauxton/navigation/actions',
+  'core/auth',
+  'addons/auth/base',
   'testUtils',
   "react"
-], function (FauxtonAPI, Views, Actions, utils, React) {
+], function (FauxtonAPI, Views, Actions, Auth, BaseAuth, utils, React) {
 
   var assert = utils.assert;
   var TestUtils = React.addons.TestUtils;
@@ -42,6 +44,33 @@ define([
 
 });
 
+it('logout link only ever appears once', function () {
+  FauxtonAPI.auth = new Auth();
+  sinon.stub(FauxtonAPI.session, 'isLoggedIn').returns(true);
+  sinon.stub(FauxtonAPI.session, 'isAdminParty').returns(false);
+  

fauxton commit: updated refs/heads/master to 5ee9903

2015-11-27 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master b2195ac7d -> 5ee99031f


Pagination component update

This refactors the  element to make it a bit more
generic. Namely:
- max visible pages that appear in pagination is now configurable
- can add a callback function to be called when the user clicks
a pagination link, instead of just outputting an href on the 
tags


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/5ee99031
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/5ee99031
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/5ee99031

Branch: refs/heads/master
Commit: 5ee99031f04c70b79719a0c958927f7cec3c3702
Parents: b2195ac
Author: Ben Keen 
Authored: Wed Nov 25 15:11:23 2015 -0800
Committer: Ben Keen 
Committed: Fri Nov 27 10:53:18 2015 -0800

--
 app/addons/fauxton/components.react.jsx | 67 
 .../fauxton/tests/componentsSpec.react.jsx  | 44 +
 2 files changed, 85 insertions(+), 26 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/5ee99031/app/addons/fauxton/components.react.jsx
--
diff --git a/app/addons/fauxton/components.react.jsx 
b/app/addons/fauxton/components.react.jsx
index b8bad67..784c514 100644
--- a/app/addons/fauxton/components.react.jsx
+++ b/app/addons/fauxton/components.react.jsx
@@ -234,34 +234,36 @@ function (app, FauxtonAPI, React, ZeroClipboard) {
 }
   });
 
-  var Pagination = React.createClass({
 
-getInitialState: function () {
-  return {};
-},
+  var Pagination = React.createClass({
 
 getDefaultProps: function () {
   return {
 perPage: FauxtonAPI.constants.MISC.DEFAULT_PAGE_SIZE,
+onClick: null,
 page: 1,
-total: 0
+total: 0,
+urlPrefix: '',
+urlSuffix: '',
+maxNavPages: 10
   };
 },
 
 getVisiblePages: function (page, totalPages) {
   var from, to;
-  if (totalPages < 10) {
+  if (totalPages < this.props.maxNavPages) {
 from = 1;
 to = totalPages + 1;
   } else {
-from = page - 5;
-to = page + 5;
+var halfMaxNavPages = Math.floor(this.props.maxNavPages / 2);
+from = page - halfMaxNavPages;
+to = page + halfMaxNavPages;
 if (from <= 1) {
   from = 1;
-  to = 11;
+  to = this.props.maxNavPages + 1;
 }
 if (to > totalPages + 1) {
-  from =  totalPages - 9;
+  from = totalPages - (this.props.maxNavPages - 1);
   to = totalPages + 1;
 }
   }
@@ -271,33 +273,46 @@ function (app, FauxtonAPI, React, ZeroClipboard) {
   };
 },
 
-createItemsForPage: function (visiblePages, page, prefix, suffix) {
+createItemsForPage: function (visiblePages) {
   return _.range(visiblePages.from, visiblePages.to).map(function (i) {
 return (
-  
-{i}
+  
+{this.getLink(i, i)}
   
 );
-  });
+  }.bind(this));
+},
+
+getLink: function (i, label) {
+  if (this.props.onClick) {
+return (
+  
+);
+  }
+  return (
+
+  );
+},
+
+getTotalPages: function () {
+  return this.props.total === 0 ? 1 : Math.ceil(this.props.total / 
this.props.perPage);
 },
 
 render: function () {
-  var page = this.state.page || this.props.page;
-  var total = this.state.total || this.props.total;
-  var perPage = this.props.perPage;
-  var prefix = this.props.urlPrefix || "";
-  var suffix = this.props.urlSuffix || "";
-  var totalPages = total === 0 ? 1 : Math.ceil(total / perPage);
-  var visiblePages = this.getVisiblePages(page, totalPages);
-  var rangeItems = this.createItemsForPage(visiblePages, page, prefix, 
suffix);
+  var totalPages = this.getTotalPages();
+  var visiblePages = this.getVisiblePages(this.props.page, totalPages);
+  var rangeItems = this.createItemsForPage(visiblePages);
+  var prevPage = Math.max(this.props.page - 1, 1);
+  var nextPage = Math.min(this.props.page + 1, totalPages);
+
   return (
 
-  
-
+  
+{this.getLink(prevPage, '')}
   
   {rangeItems}
-  
-
+  
+{this.getLink(nextPage, '')}
   
 
   );

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/5ee99031/app/addons/fauxton/tests/componentsSpec.react.jsx
--
diff --git a/app/addons/fauxton/tests/componentsSpec.react.jsx 

fauxton commit: updated refs/heads/master to c90f22b

2015-11-04 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master e1df89f19 -> c90f22baa


Minor text changes

This PR contains a few small text changes to make upper/lowercase
a little more consistent. From @justin-mcdavid-ibm.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/c90f22ba
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/c90f22ba
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/c90f22ba

Branch: refs/heads/master
Commit: c90f22baafeddd2956c6e9724b424ed03d16b38e
Parents: e1df89f
Author: Ben Keen 
Authored: Mon Oct 26 13:29:13 2015 -0700
Committer: Ben Keen 
Committed: Wed Nov 4 15:15:04 2015 -0800

--
 app/addons/activetasks/components.react.jsx| 4 ++--
 app/addons/activetasks/routes.js   | 2 +-
 app/addons/databases/components.react.jsx  | 6 +++---
 app/addons/documents/index-editor/components.react.jsx | 4 ++--
 app/addons/documents/resources.js  | 2 +-
 app/addons/documents/routes-index-editor.js| 2 +-
 app/addons/documents/sidebar/sidebar.react.jsx | 4 ++--
 7 files changed, 12 insertions(+), 12 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/c90f22ba/app/addons/activetasks/components.react.jsx
--
diff --git a/app/addons/activetasks/components.react.jsx 
b/app/addons/activetasks/components.react.jsx
index 40ce138..7e65399 100644
--- a/app/addons/activetasks/components.react.jsx
+++ b/app/addons/activetasks/components.react.jsx
@@ -209,8 +209,8 @@ define([
 headerNames : [
   ['type', 'Type'],
   ['database', 'Database'],
-  ['started-on', 'Started On'],
-  ['updated-on', 'Updated On'],
+  ['started-on', 'Started on'],
+  ['updated-on', 'Updated on'],
   ['pid', 'PID'],
   ['progress', 'Status']
 ]

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/c90f22ba/app/addons/activetasks/routes.js
--
diff --git a/app/addons/activetasks/routes.js b/app/addons/activetasks/routes.js
index 7352c72..3811a5f 100644
--- a/app/addons/activetasks/routes.js
+++ b/app/addons/activetasks/routes.js
@@ -29,7 +29,7 @@ function (app, FauxtonAPI, ActiveTasksResources, 
ActiveTasksComponents, Actions)
   'activetasks': 'showActiveTasks'
 },
 crumbs: [
-  {'name': 'Active tasks', 'link': 'activetasks'}
+  {'name': 'Active Tasks', 'link': 'activetasks'}
 ],
 apiUrl: function () {
   var apiurl = window.location.origin + '/_active_tasks';

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/c90f22ba/app/addons/databases/components.react.jsx
--
diff --git a/app/addons/databases/components.react.jsx 
b/app/addons/databases/components.react.jsx
index 20110ef..98e85be 100644
--- a/app/addons/databases/components.react.jsx
+++ b/app/addons/databases/components.react.jsx
@@ -235,11 +235,11 @@ define([
 selected={this.state.isPromptVisible}
 toggleCallback={this.onTrayToggle}
 containerClasses={headerButtonContainerClasses}
-title="Add New Database"
+title="Create Database"
 fonticon="fonticon-new-database"
-text="Add New Database" />
+text="Create Database" />
   
-Add New Database
+Create Database
 
 Create
   

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/c90f22ba/app/addons/documents/index-editor/components.react.jsx
--
diff --git a/app/addons/documents/index-editor/components.react.jsx 
b/app/addons/documents/index-editor/components.react.jsx
index 62e52aa..28f0787 100644
--- a/app/addons/documents/index-editor/components.react.jsx
+++ b/app/addons/documents/index-editor/components.react.jsx
@@ -47,7 +47,7 @@ function (app, FauxtonAPI, React, Stores, Actions, 
Components, ReactComponents)
   return (
 
   
-
+
   
 
   );
@@ -420,7 +420,7 @@ function (app, FauxtonAPI, React, Stores, Actions, 
Components, ReactComponents)
 
 
   
-
+
 
 {this.getCompactButton()}
   

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/c90f22ba/app/addons/documents/resources.js
--
diff --git 

fauxton commit: updated refs/heads/master to 0e1333b

2015-10-26 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master 437219f90 -> 0e1333bf9


Sidebar automatically updates after design doc deleted

After deleting a design doc, the sidebar didn't refresh, so you'd
see the old data until the next repaint. This explicitly updates
the sidebar after all document deletes (React will handle the
nasty diffing for us, so it'll be performant).


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/0e1333bf
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/0e1333bf
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/0e1333bf

Branch: refs/heads/master
Commit: 0e1333bf919641266cb68fb370ebae9def6e30dd
Parents: 437219f
Author: Ben Keen 
Authored: Tue Oct 13 14:37:43 2015 -0700
Committer: Ben Keen 
Committed: Mon Oct 26 12:59:37 2015 -0700

--
 app/addons/documents/index-results/actions.js   |  7 +--
 .../tests/index-results.actionsSpec.js  | 10 +++-
 app/addons/documents/sidebar/actions.js |  4 ++
 app/addons/documents/sidebar/actiontypes.js |  5 +-
 app/addons/documents/sidebar/stores.js  |  4 ++
 .../tests/nightwatch/deletesDocuments.js| 49 
 6 files changed, 72 insertions(+), 7 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/0e1333bf/app/addons/documents/index-results/actions.js
--
diff --git a/app/addons/documents/index-results/actions.js 
b/app/addons/documents/index-results/actions.js
index ea22f9a..4fab529 100644
--- a/app/addons/documents/index-results/actions.js
+++ b/app/addons/documents/index-results/actions.js
@@ -15,10 +15,10 @@ define([
   'api',
   'addons/documents/index-results/actiontypes',
   'addons/documents/index-results/stores',
-  'addons/documents/header/header.actions',
-  'addons/documents/resources'
+  'addons/documents/resources',
+  'addons/documents/sidebar/actions'
 ],
-function (app, FauxtonAPI, ActionTypes, Stores, HeaderActions, Documents) {
+function (app, FauxtonAPI, ActionTypes, Stores, Documents, SidebarActions) {
   var indexResultsStore = Stores.indexResultsStore;
 
   var errorMessage = function (ids) {
@@ -198,6 +198,7 @@ function (app, FauxtonAPI, ActionTypes, Stores, 
HeaderActions, Documents) {
   .always(function () {
 reloadResultsList().then(function () {
   selectListOfDocs(selectedIds);
+  SidebarActions.refresh();
 });
   });
 }

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/0e1333bf/app/addons/documents/index-results/tests/index-results.actionsSpec.js
--
diff --git 
a/app/addons/documents/index-results/tests/index-results.actionsSpec.js 
b/app/addons/documents/index-results/tests/index-results.actionsSpec.js
index 97b892a..719cfb9 100644
--- a/app/addons/documents/index-results/tests/index-results.actionsSpec.js
+++ b/app/addons/documents/index-results/tests/index-results.actionsSpec.js
@@ -15,8 +15,9 @@ define([
   'addons/documents/index-results/actions',
   'addons/documents/index-results/stores',
   'addons/documents/resources',
-  'testUtils',
-], function (FauxtonAPI, Actions, Stores, Documents, testUtils) {
+  'addons/documents/sidebar/actions',
+  'testUtils'
+], function (FauxtonAPI, Actions, Stores, Documents, SidebarActions, 
testUtils) {
   var assert = testUtils.assert;
   var restore = testUtils.restore;
   var store = Stores.indexResultsStore;
@@ -75,6 +76,7 @@ define([
   restore(FauxtonAPI.addNotification);
   restore(Actions.reloadResultsList);
   restore(Actions.selectListOfDocs);
+  restore(SidebarActions.refresh);
 });
 
 it('doesn\'t delete if user denies confirmation', function () {
@@ -100,6 +102,7 @@ define([
 
 it('on success notifies all deleted', function () {
   var spy = sinon.spy(FauxtonAPI, 'addNotification');
+  var sidebarSpy = sinon.spy(SidebarActions, 'refresh');
   var promise = FauxtonAPI.Deferred();
   var ids = {
   errorIds: []
@@ -120,10 +123,12 @@ define([
   Actions.deleteSelected();
 
   assert.ok(spy.calledOnce);
+  assert.ok(sidebarSpy.calledOnce);
 });
 
 it('on success with some failed ids, re-selects failed', function () {
   var spy = sinon.spy(Actions, 'selectListOfDocs');
+  var sidebarSpy = sinon.spy(SidebarActions, 'refresh');
 
   var reloadResultsListStub = sinon.stub(Actions, 'reloadResultsList');
   var stubPromise = FauxtonAPI.Deferred();
@@ -146,6 +151,7 @@ define([
 
   Actions.deleteSelected();
   assert.ok(spy.calledWith(ids.errorIds));
+  assert.ok(sidebarSpy.calledOnce);
 });
 
 it('on 

fauxton commit: updated refs/heads/master to 9b99f52

2015-10-23 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master fd8969801 -> 9b99f5234


Change header z-index

This increases the z-index of the headers from 1 to 2. The reason
is that Ace Editor's selected row has a z-inde of 1 and the API
URL bar is being incorrectly overlapped.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/9b99f523
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/9b99f523
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/9b99f523

Branch: refs/heads/master
Commit: 9b99f5234822d0a28d52bd19e1f602e8d7952092
Parents: fd89698
Author: Ben Keen 
Authored: Fri Oct 23 10:14:06 2015 -0700
Committer: Ben Keen 
Committed: Fri Oct 23 11:36:58 2015 -0700

--
 assets/less/fauxton.less | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/9b99f523/assets/less/fauxton.less
--
diff --git a/assets/less/fauxton.less b/assets/less/fauxton.less
index 95cb88d..2d66676 100644
--- a/assets/less/fauxton.less
+++ b/assets/less/fauxton.less
@@ -389,7 +389,7 @@ div.spinner {
 .bottom-shadow-border();
 position: absolute;
 width: 100%;
-z-index: 1;
+z-index: 2; /* needed because ace's selected row has a z-index of 1 & 
can't be overridden */
   }
 }
 



fauxton commit: updated refs/heads/master to 230e5f7

2015-10-21 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master 246057e64 -> 230e5f74e


Add callback to Clipboard component

This just adds a callback to the  component that
gets called once the copy to clipboard action is completed.

Again, this is not testable due to Flash not being available
on the testing environment.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/230e5f74
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/230e5f74
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/230e5f74

Branch: refs/heads/master
Commit: 230e5f74ec8530284c1bd51200a2c343afae6eaa
Parents: 246057e
Author: Ben Keen 
Authored: Tue Oct 20 15:17:10 2015 -0700
Committer: Ben Keen 
Committed: Wed Oct 21 08:53:33 2015 -0700

--
 app/addons/fauxton/components.react.jsx | 8 +++-
 1 file changed, 7 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/230e5f74/app/addons/fauxton/components.react.jsx
--
diff --git a/app/addons/fauxton/components.react.jsx 
b/app/addons/fauxton/components.react.jsx
index caa829b..789413a 100644
--- a/app/addons/fauxton/components.react.jsx
+++ b/app/addons/fauxton/components.react.jsx
@@ -42,7 +42,8 @@ function (app, FauxtonAPI, React, ZeroClipboard) {
 getDefaultProps: function () {
   return {
 displayType: 'icon',
-textDisplay: 'Copy'
+textDisplay: 'Copy',
+onClipboardClick: function () { }
   };
 },
 
@@ -60,6 +61,11 @@ function (app, FauxtonAPI, React, ZeroClipboard) {
 componentDidMount: function () {
   var el = this.getDOMNode();
   this.clipboard = new ZeroClipboard(el);
+  this.clipboard.on('load', function () {
+this.clipboard.on('mouseup', function () {
+  this.props.onClipboardClick();
+}.bind(this));
+  }.bind(this));
 },
 
 render: function () {



[5/5] fauxton commit: updated refs/heads/master to b7dd66c

2015-10-21 Thread benkeen
more fixes


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/b7dd66ce
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/b7dd66ce
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/b7dd66ce

Branch: refs/heads/master
Commit: b7dd66cea48c27c223edb4e12f282711cecf7bfe
Parents: 8032b1d
Author: Robert Kowalski 
Authored: Wed Oct 21 19:05:21 2015 +0200
Committer: Robert Kowalski 
Committed: Wed Oct 21 19:05:21 2015 +0200

--
 app/addons/documents/tests/nightwatch/bulkDelete.js   | 2 +-
 app/addons/documents/tests/nightwatch/deletesDocuments.js | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/b7dd66ce/app/addons/documents/tests/nightwatch/bulkDelete.js
--
diff --git a/app/addons/documents/tests/nightwatch/bulkDelete.js 
b/app/addons/documents/tests/nightwatch/bulkDelete.js
index 4889d15..0721884 100644
--- a/app/addons/documents/tests/nightwatch/bulkDelete.js
+++ b/app/addons/documents/tests/nightwatch/bulkDelete.js
@@ -30,7 +30,7 @@ module.exports = {
   .waitForElementVisible('.prettyprint', waitTime, false)
 
   .clickWhenVisible('.bulk-action-component-selector-group 
input[type="checkbox"]')
-  .clickWhenVisible('.bulk-actions button.fonticon-trash', waitTime, false)
+  .clickWhenVisible('.bulk-action-component-selector-group 
button.fonticon-trash', waitTime, false)
   .acceptAlert()
   .waitForElementVisible('#global-notifications .alert.alert-info', 
waitTime, false)
   .waitForElementNotPresent('[data-id="' + newDocumentName1 + '"]', 
waitTime, false)

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/b7dd66ce/app/addons/documents/tests/nightwatch/deletesDocuments.js
--
diff --git a/app/addons/documents/tests/nightwatch/deletesDocuments.js 
b/app/addons/documents/tests/nightwatch/deletesDocuments.js
index e3e7157..2da8b26 100644
--- a/app/addons/documents/tests/nightwatch/deletesDocuments.js
+++ b/app/addons/documents/tests/nightwatch/deletesDocuments.js
@@ -26,13 +26,13 @@ module.exports = {
   .clickWhenVisible('#dashboard-content a[href="#/database/' + 
newDatabaseName + '/_all_docs"]', waitTime, false)
   .waitForElementVisible('label[for="checkbox-' + newDocumentName + '"]', 
waitTime, false)
   .clickWhenVisible('label[for="checkbox-' + newDocumentName + '"]', 
waitTime, false)
-  .clickWhenVisible('.bulk-actions button.fonticon-trash', waitTime, false)
+  .clickWhenVisible('.bulk-action-component-selector-group 
button.fonticon-trash', waitTime, false)
   .acceptAlert()
   .waitForElementVisible('.alert.alert-info', waitTime, false)
 
   .waitForElementVisible('label[for="checkbox-' + newDocumentName + '2' + 
'"]', waitTime, false)
   .clickWhenVisible('label[for="checkbox-' + newDocumentName + '2' + '"]', 
waitTime, false)
-  .clickWhenVisible('.bulk-actions button.fonticon-trash', waitTime, false)
+  .clickWhenVisible('.bulk-action-component-selector-group 
button.fonticon-trash', waitTime, false)
   .acceptAlert()
 
   .waitForElementVisible('.alert.alert-info', waitTime, false)



[1/5] fauxton commit: updated refs/heads/master to b7dd66c

2015-10-21 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master b76355f30 -> b7dd66cea


fix tests

integration tests were disabled accidentally this week


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/8c268754
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/8c268754
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/8c268754

Branch: refs/heads/master
Commit: 8c268754aad3b3697b840cb8d1a95130e177d886
Parents: b76355f
Author: Robert Kowalski 
Authored: Wed Oct 21 18:53:56 2015 +0200
Committer: Robert Kowalski 
Committed: Wed Oct 21 18:53:56 2015 +0200

--
 app/addons/databases/tests/nightwatch/checkDatabaseTooltip.js | 4 ++--
 app/addons/documents/tests/nightwatch/mangoIndex.js   | 7 ++-
 2 files changed, 4 insertions(+), 7 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/8c268754/app/addons/databases/tests/nightwatch/checkDatabaseTooltip.js
--
diff --git a/app/addons/databases/tests/nightwatch/checkDatabaseTooltip.js 
b/app/addons/databases/tests/nightwatch/checkDatabaseTooltip.js
index f72beb7..ddb6b5f 100644
--- a/app/addons/databases/tests/nightwatch/checkDatabaseTooltip.js
+++ b/app/addons/databases/tests/nightwatch/checkDatabaseTooltip.js
@@ -30,8 +30,8 @@ module.exports = {
   .click('#dashboard-content a[href="#/database/' + newDatabaseName + 
'/_all_docs"]')
 
   //this opens the alternative header
-  .clickWhenVisible('label[for="checkbox-' + newDocumentName + '"]', 
waitTime, false)
-  .clickWhenVisible('.control-delete', waitTime, false)
+  .clickWhenVisible('.bulk-action-component-panel input[type="checkbox"]')
+  .clickWhenVisible('.bulk-action-component-selector-group 
button.fonticon-trash', waitTime, false)
   .acceptAlert()
   .waitForElementVisible('#global-notifications .alert.alert-info', 
waitTime, false)
   .clickWhenVisible('#nav-links a[href="#/_all_dbs"]')

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/8c268754/app/addons/documents/tests/nightwatch/mangoIndex.js
--
diff --git a/app/addons/documents/tests/nightwatch/mangoIndex.js 
b/app/addons/documents/tests/nightwatch/mangoIndex.js
index dce4cb9..8c54d09 100644
--- a/app/addons/documents/tests/nightwatch/mangoIndex.js
+++ b/app/addons/documents/tests/nightwatch/mangoIndex.js
@@ -54,12 +54,9 @@ module.exports = {
   .populateDatabase(newDatabaseName)
   .loginToGUI()
   .url(baseUrl + '/#/database/' + newDatabaseName + '/_index')
-  .waitForElementPresent('.control-toggle-alternative-header', waitTime, 
false)
-  .clickWhenVisible('.control-toggle-alternative-header')
   .assert.containsText('#dashboard-lower-content', 
'ente_ente_mango_ananas')
-  .waitForElementPresent('.control-select-all', waitTime, false)
-  .clickWhenVisible('.control-select-all')
-  .clickWhenVisible('.control-delete')
+  .clickWhenVisible('.bulk-action-component-panel input[type="checkbox"]')
+  .clickWhenVisible('.bulk-action-component-selector-group 
button.fonticon-trash', waitTime, false)
   .acceptAlert()
 
   .checkForStringNotPresent(newDatabaseName + '/_index', 
'"name":"rocko-artischocko"')



[3/5] fauxton commit: updated refs/heads/master to b7dd66c

2015-10-21 Thread benkeen
fix paginateAll test


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/cdd984d1
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/cdd984d1
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/cdd984d1

Branch: refs/heads/master
Commit: cdd984d1aac8030260f6f0d7a5c08e9aa98fc661
Parents: 05495ff
Author: Robert Kowalski 
Authored: Wed Oct 21 18:59:30 2015 +0200
Committer: Robert Kowalski 
Committed: Wed Oct 21 18:59:30 2015 +0200

--
 app/addons/documents/tests/nightwatch/paginateAllDocs.js | 7 ---
 1 file changed, 7 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/cdd984d1/app/addons/documents/tests/nightwatch/paginateAllDocs.js
--
diff --git a/app/addons/documents/tests/nightwatch/paginateAllDocs.js 
b/app/addons/documents/tests/nightwatch/paginateAllDocs.js
index d23ab30..44bf229 100644
--- a/app/addons/documents/tests/nightwatch/paginateAllDocs.js
+++ b/app/addons/documents/tests/nightwatch/paginateAllDocs.js
@@ -23,9 +23,6 @@ module.exports = {
   .loginToGUI()
   .url(baseUrl + '/#/database/' + newDatabaseName + '/_all_docs')
 
-  // ensures the header has been rendered
-  .waitForElementPresent('.control-toggle-alternative-header', waitTime, 
false)
-
   // ensures the main body (results list) has been rendered
   .waitForElementPresent('.prettyprint', waitTime, false)
 
@@ -57,9 +54,6 @@ module.exports = {
   .loginToGUI()
   .url(baseUrl + '/#/database/' + newDatabaseName + '/_all_docs')
 
-  // ensures the header is rendered
-  .waitForElementPresent('.control-toggle-alternative-header', waitTime, 
false)
-
   // ensures the main body (results list) has been rendered
   .waitForElementPresent('.prettyprint', waitTime, false)
 
@@ -84,7 +78,6 @@ module.exports = {
   .populateDatabase(newDatabaseName)
   .loginToGUI()
   .url(baseUrl + '/#/database/' + newDatabaseName + '/_all_docs')
-  .waitForElementPresent('.control-toggle-alternative-header', waitTime, 
false)
 
   // ensures the main body (results list) has been rendered
   .waitForElementPresent('.prettyprint', waitTime, false)



[2/5] fauxton commit: updated refs/heads/master to b7dd66c

2015-10-21 Thread benkeen
fix changes


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/05495ff1
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/05495ff1
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/05495ff1

Branch: refs/heads/master
Commit: 05495ff1064739824509d775e524f7e67a66e077
Parents: 8c26875
Author: Robert Kowalski 
Authored: Wed Oct 21 18:57:44 2015 +0200
Committer: Robert Kowalski 
Committed: Wed Oct 21 18:57:44 2015 +0200

--
 app/addons/documents/tests/nightwatch/changes.js | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/05495ff1/app/addons/documents/tests/nightwatch/changes.js
--
diff --git a/app/addons/documents/tests/nightwatch/changes.js 
b/app/addons/documents/tests/nightwatch/changes.js
index e2de61b..59fab05 100644
--- a/app/addons/documents/tests/nightwatch/changes.js
+++ b/app/addons/documents/tests/nightwatch/changes.js
@@ -12,7 +12,7 @@
 
 module.exports = {
 
-  'Does not display the Select-all-button': function (client) {
+  'Does not display the View-Selector-Button': function (client) {
 var waitTime = client.globals.maxWaitTime,
 newDatabaseName = client.globals.testDatabaseName,
 baseUrl = client.globals.test_settings.launch_url;
@@ -20,10 +20,10 @@ module.exports = {
 client
   .loginToGUI()
   .url(baseUrl + '/#/database/' + newDatabaseName + '/_all_docs')
-  .waitForElementPresent('.control-toggle-alternative-header', waitTime, 
false)
+  .waitForElementPresent('.control-view', waitTime, false)
   .clickWhenVisible('#changes')
   .waitForElementPresent('.js-changes-view', waitTime, false)
-  .assert.elementNotPresent('.control-toggle-alternative-header')
+  .assert.elementNotPresent('.control-view')
   .end();
   },
 



[4/5] fauxton commit: updated refs/heads/master to b7dd66c

2015-10-21 Thread benkeen
remove dead css


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/8032b1d2
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/8032b1d2
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/8032b1d2

Branch: refs/heads/master
Commit: 8032b1d252fe6aede01ddfe03eb0f6a763198fc5
Parents: cdd984d
Author: Robert Kowalski 
Authored: Wed Oct 21 19:05:13 2015 +0200
Committer: Robert Kowalski 
Committed: Wed Oct 21 19:05:13 2015 +0200

--
 .../components/assets/less/bulk-selector.less   | 25 
 1 file changed, 25 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/8032b1d2/app/addons/components/assets/less/bulk-selector.less
--
diff --git a/app/addons/components/assets/less/bulk-selector.less 
b/app/addons/components/assets/less/bulk-selector.less
index b1cd405..193a271 100644
--- a/app/addons/components/assets/less/bulk-selector.less
+++ b/app/addons/components/assets/less/bulk-selector.less
@@ -87,10 +87,6 @@
 height: 15px;
   }
 
-  .bulk-actions {
-height: 27px;
-  }
-
   .bulk-action-component-selector-group {
 
 .fonticon {
@@ -120,25 +116,4 @@
   }
 }
   }
-
-  .bulk-actions {
-margin-left: 10px;
-width: 29px;
-
-float: left;
-
-.fonticon {
-  font-size: 11px;
-  border: 0;
-  background-color: transparent;
-  padding: 2px;
-  width: 13px;
-  margin-top: -5px;
-  color: @darkBorder;
-}
-
-button.disabled {
-  cursor: default;
-}
-  }
 }



fauxton commit: updated refs/heads/master to 852d6ae

2015-10-20 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master 42b9fa406 -> 852d6ae59


Improve db page error handling

This PR fixes an old bug with the databases page where if one
database query fails, the remaining responses that haven't been
returned don't get populated and the database table has a lot
of incomplete rows.

Now the individual failed database rows don't affect the others and
show a "This database failed to load" message to make it clear to
the user.

The actions.js refactor code was needed due to the following.
FauxtonAPI.when() behaves in an unexpected way: when passed an
array of promises it fires the .always() in two conditions:
1. When all promises are resolved, or,
2. When ONE fails

What was happening was that when a db request failed, it didn't
fire any of the remainder requests, which is why the table would
appear partly empty.

Closes COUCHDB-2243


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/852d6ae5
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/852d6ae5
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/852d6ae5

Branch: refs/heads/master
Commit: 852d6ae59b294ccc7dbbca3304ec13c479bcd9fd
Parents: 42b9fa4
Author: Ben Keen 
Authored: Tue Sep 29 10:14:50 2015 -0700
Committer: Ben Keen 
Committed: Tue Oct 20 10:55:51 2015 -0700

--
 app/addons/databases/actions.js | 30 +-
 app/addons/databases/assets/less/databases.less |  5 +++
 app/addons/databases/components.react.jsx   | 15 +
 app/addons/databases/resources.js   |  6 
 .../databases/tests/componentsSpec.react.jsx| 32 
 5 files changed, 81 insertions(+), 7 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/852d6ae5/app/addons/databases/actions.js
--
diff --git a/app/addons/databases/actions.js b/app/addons/databases/actions.js
index aa814e4..423c62a 100644
--- a/app/addons/databases/actions.js
+++ b/app/addons/databases/actions.js
@@ -26,20 +26,36 @@ function (app, FauxtonAPI, Stores, ActionTypes, Resources) {
 
   this.setStartLoading();
   FauxtonAPI.when(databases.fetch({ cache: false })).then(function () {
-FauxtonAPI.when(databases.paginated(page, perPage).map(function 
(database) {
-  return database.status.fetchOnce();
-})).always(function () {
-  //make this always so that even if a user is not allowed access to a 
database
-  //they will still see a list of all databases
+
+// if there are no databases, publish the init message anyway
+if (!databases.paginated(page, perPage).length) {
   FauxtonAPI.dispatch({
 type: ActionTypes.DATABASES_INIT,
 options: {
-  collection: databases.paginated(page, perPage),
+  collection: [],
   backboneCollection: databases,
   page: page
 }
   });
-}.bind(this));
+}
+
+var numComplete = 0;
+_.each(databases.paginated(page, perPage), function (db) {
+  db.status.fetchOnce().always(function () {
+numComplete++;
+if (numComplete < databases.paginated(page, perPage).length) {
+  return;
+}
+FauxtonAPI.dispatch({
+  type: ActionTypes.DATABASES_INIT,
+  options: {
+collection: databases.paginated(page, perPage),
+backboneCollection: databases,
+page: page
+  }
+});
+  });
+});
   }.bind(this));
 },
 

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/852d6ae5/app/addons/databases/assets/less/databases.less
--
diff --git a/app/addons/databases/assets/less/databases.less 
b/app/addons/databases/assets/less/databases.less
index 652530b..e21b8ef 100644
--- a/app/addons/databases/assets/less/databases.less
+++ b/app/addons/databases/assets/less/databases.less
@@ -62,3 +62,8 @@
 #database-pagination {
   float: right;
 }
+
+.database-load-fail {
+  color: #99;
+  height: 49px;
+}

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/852d6ae5/app/addons/databases/components.react.jsx
--
diff --git a/app/addons/databases/components.react.jsx 
b/app/addons/databases/components.react.jsx
index c3e8e7f..998c805 100644
--- a/app/addons/databases/components.react.jsx
+++ b/app/addons/databases/components.react.jsx
@@ -107,6 +107,10 @@ define([
 
   var DatabaseRow = React.createClass({
 
+

fauxton commit: updated refs/heads/master to 0c98393

2015-10-15 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master 916059c51 -> 0c98393b3


Fix for doc typeahead field being hidden

When typing a doc name in the Doc ID field on the Database -> All
Docs page, it would get cut off. This PR ensures it overlaps
the body content.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/0c98393b
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/0c98393b
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/0c98393b

Branch: refs/heads/master
Commit: 0c98393b39a54e4601d6e72add96a166fd88b31b
Parents: 916059c
Author: Ben Keen 
Authored: Wed Oct 14 18:57:50 2015 -0700
Committer: Ben Keen 
Committed: Thu Oct 15 14:36:29 2015 -0700

--
 .travis.yml |  2 +-
 app/addons/databases/components.react.jsx   |  2 +-
 app/addons/documents/templates/jumpdoc.html |  2 +-
 .../tests/nightwatch/selectDocViaTypeahead.js   | 42 
 assets/less/fauxton.less| 13 --
 assets/less/layouts.less|  7 
 assets/less/notification-center.less|  2 +-
 7 files changed, 55 insertions(+), 15 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/0c98393b/.travis.yml
--
diff --git a/.travis.yml b/.travis.yml
index cc6f4f4..0b3e1b4 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -33,7 +33,7 @@ before_script:
   - ./node_modules/grunt-cli/bin/grunt dev &
   - sleep 25
 script:
-  - ./node_modules/grunt-cli/bin/grunt nightwatch
+  - ./node_modules/grunt-cli/bin/grunt nightwatch --file=selectDocViaTypeahead
 
 cache: apt
 

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/0c98393b/app/addons/databases/components.react.jsx
--
diff --git a/app/addons/databases/components.react.jsx 
b/app/addons/databases/components.react.jsx
index 3442163..8736a3b 100644
--- a/app/addons/databases/components.react.jsx
+++ b/app/addons/databases/components.react.jsx
@@ -278,7 +278,7 @@ define([
 
   
 
-
+
   
 
   

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/0c98393b/app/addons/documents/templates/jumpdoc.html
--
diff --git a/app/addons/documents/templates/jumpdoc.html 
b/app/addons/documents/templates/jumpdoc.html
index 5038069..e7e301b 100644
--- a/app/addons/documents/templates/jumpdoc.html
+++ b/app/addons/documents/templates/jumpdoc.html
@@ -15,6 +15,6 @@ the License.
 
   
 
-
+
   
 

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/0c98393b/app/addons/documents/tests/nightwatch/selectDocViaTypeahead.js
--
diff --git a/app/addons/documents/tests/nightwatch/selectDocViaTypeahead.js 
b/app/addons/documents/tests/nightwatch/selectDocViaTypeahead.js
new file mode 100644
index 000..d5ef543
--- /dev/null
+++ b/app/addons/documents/tests/nightwatch/selectDocViaTypeahead.js
@@ -0,0 +1,42 @@
+// Licensed under the Apache License, Version 2.0 (the "License"); you may not
+// use this file except in compliance with the License. You may obtain a copy 
of
+// the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+// License for the specific language governing permissions and limitations 
under
+// the License.
+
+module.exports = {
+
+  'Select doc via typeahead field redirects user': function (client) {
+var waitTime = client.globals.maxWaitTime,
+newDatabaseName = client.globals.testDatabaseName,
+baseUrl = client.globals.test_settings.launch_url;
+
+client
+  .populateDatabase(newDatabaseName, 3)
+  .loginToGUI()
+  .url(baseUrl + '/#/database/' + newDatabaseName + '/_all_docs')
+  .waitForElementPresent('#jump-to-doc-id', waitTime, false)
+  .waitForElementPresent('.prettyprint', waitTime, false)
+  .waitForElementPresent('#documents-pagination', waitTime, false)
+  .waitForElementPresent('.breadcrumb .js-lastelement', waitTime, false)
+  .click('.burger')
+
+  // we need to explicitly show the doc field because it's hidden on 
Travis due to screen width
+  .execute("$('.closeMenu .with-sidebar .searchbox-wrapper').show();")
+  .setValue('#jump-to-doc-id', 

fauxton commit: updated refs/heads/master to 916059c

2015-10-14 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master 087e23fd4 -> 916059c51


Increase height of clickable space for close notification

There's a little "x" that appears in the notification center next
to each message that allows users to remove that single message.
On Firefox, the height of the clickable space wasn't quite large
enough so if you clicked the bottom of the x it wouldn't close.
This fixes it so that it covers the full "x".


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/916059c5
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/916059c5
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/916059c5

Branch: refs/heads/master
Commit: 916059c51cb21a4f609e85086625635be781dc4c
Parents: 087e23f
Author: Ben Keen 
Authored: Wed Oct 14 14:22:37 2015 -0700
Committer: Ben Keen 
Committed: Wed Oct 14 14:22:37 2015 -0700

--
 assets/less/notification-center.less | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/916059c5/assets/less/notification-center.less
--
diff --git a/assets/less/notification-center.less 
b/assets/less/notification-center.less
index 6f873fd..9cd623f 100644
--- a/assets/less/notification-center.less
+++ b/assets/less/notification-center.less
@@ -126,7 +126,7 @@ body #dashboard #notification-center-btn {
   color: #dd;
   background: transparent;
   border: 0;
-  height: 10px;
+  height: 20px;
   margin-top: -4px;
   margin-left: 6px;
 }



fauxton commit: updated refs/heads/master to 6542a69

2015-10-08 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master e77ade9db -> 6542a6928


Fix for header on full page doc editor

Drat, missed this one. This fixes a layout issue on the full
page doc editor. Test included to confirm the breadcrumb
and API URL are always visible.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/6542a692
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/6542a692
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/6542a692

Branch: refs/heads/master
Commit: 6542a692827b7746a72df6e7a353113b91ff00aa
Parents: e77ade9
Author: Ben Keen 
Authored: Wed Oct 7 18:19:02 2015 -0700
Committer: Ben Keen 
Committed: Wed Oct 7 18:26:25 2015 -0700

--
 app/addons/documents/assets/less/doc-editor.less |  4 +++-
 app/addons/documents/tests/nightwatch/createsDocument.js |  4 
 app/templates/layouts/doc_editor.html| 10 ++
 3 files changed, 13 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/6542a692/app/addons/documents/assets/less/doc-editor.less
--
diff --git a/app/addons/documents/assets/less/doc-editor.less 
b/app/addons/documents/assets/less/doc-editor.less
index 3eac02d..ab0cc4a 100644
--- a/app/addons/documents/assets/less/doc-editor.less
+++ b/app/addons/documents/assets/less/doc-editor.less
@@ -55,7 +55,9 @@
 
   

fauxton commit: updated refs/heads/master to e77ade9

2015-10-07 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master eb5124af7 -> e77ade9db


Moving with_sidebar template to flexbox

This ticket directly affects the account page (cluster of one), but
touches on many other pages as well.

After this one's merged, I'll tackle the with_tabs_sidebar template
which should allow me to remove a lot of old CSS.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/e77ade9d
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/e77ade9d
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/e77ade9d

Branch: refs/heads/master
Commit: e77ade9dbeed8a6af9e0332af3f439d180b4eab1
Parents: eb5124a
Author: Ben Keen 
Authored: Mon Oct 5 14:38:10 2015 -0700
Committer: Ben Keen 
Committed: Wed Oct 7 15:56:14 2015 -0700

--
 app/addons/auth/assets/less/auth.less   |  8 ++--
 .../assets/less/header-togglebutton.less|  1 +
 app/templates/layouts/one_pane.html | 12 +++---
 app/templates/layouts/with_sidebar.html | 14 ---
 app/templates/layouts/with_tabs_sidebar.html| 17 
 assets/less/fauxton.less| 35 +++-
 assets/less/layouts.less| 43 ++--
 assets/less/templates.less  | 12 +-
 8 files changed, 84 insertions(+), 58 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/e77ade9d/app/addons/auth/assets/less/auth.less
--
diff --git a/app/addons/auth/assets/less/auth.less 
b/app/addons/auth/assets/less/auth.less
index 45cce45..0a0d24d 100644
--- a/app/addons/auth/assets/less/auth.less
+++ b/app/addons/auth/assets/less/auth.less
@@ -18,16 +18,14 @@
 
 .sidenav header {
   padding-left: 24px;
-
   h3 {
-margin: 8px 0px 4px;
+margin: 8px 0 4px;
   }
 }
 
-.auth-page {
+#dashboard-content .auth-page {
   padding: 20px;
-
   h3 {
-margin-top: 0px;
+margin-top: 0;
   }
 }

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/e77ade9d/app/addons/components/assets/less/header-togglebutton.less
--
diff --git a/app/addons/components/assets/less/header-togglebutton.less 
b/app/addons/components/assets/less/header-togglebutton.less
index d381b25..b8e6e77 100644
--- a/app/addons/components/assets/less/header-togglebutton.less
+++ b/app/addons/components/assets/less/header-togglebutton.less
@@ -62,6 +62,7 @@ button.header-control-box:focus {
 button.control-toggle-alternative-header {
   float: left;
   border-right: 1px solid @btnBorder;
+  border-left: none;
 }
 
 button.control-toggle-alternative-header.js-headerbar-togglebutton-selected {

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/e77ade9d/app/templates/layouts/one_pane.html
--
diff --git a/app/templates/layouts/one_pane.html 
b/app/templates/layouts/one_pane.html
index dc31545..0af0448 100644
--- a/app/templates/layouts/one_pane.html
+++ b/app/templates/layouts/one_pane.html
@@ -12,11 +12,13 @@ License for the specific language governing permissions and 
limitations under
 the License.
 */%>
 
-  
-
-
-
-
+  
+
+  
+  
+  
+  
+
   
 
   

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/e77ade9d/app/templates/layouts/with_sidebar.html
--
diff --git a/app/templates/layouts/with_sidebar.html 
b/app/templates/layouts/with_sidebar.html
index a4bf1ea..6edd592 100644
--- a/app/templates/layouts/with_sidebar.html
+++ b/app/templates/layouts/with_sidebar.html
@@ -11,15 +11,17 @@ WARRANTIES OR CONDITIONS OF ANY KIND, either express or 
implied. See the
 License for the specific language governing permissions and limitations under
 the License.
 */%>
-
+
   
-
-
-
+
+  
+  
+  
+
   
 
-  
+  
 
-
+
   
 

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/e77ade9d/app/templates/layouts/with_tabs_sidebar.html
--
diff --git a/app/templates/layouts/with_tabs_sidebar.html 
b/app/templates/layouts/with_tabs_sidebar.html
index 34d673a..e90d4a5 100644
--- a/app/templates/layouts/with_tabs_sidebar.html
+++ b/app/templates/layouts/with_tabs_sidebar.html
@@ -13,14 +13,15 @@ the License.
 */%>
 
 
-
-  
-
-
-  
-  
-  
-  
+  
+
+  
+  
+
+
+
+
+  
 
   
 

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/e77ade9d/assets/less/fauxton.less

fauxton commit: updated refs/heads/master to eb5124a

2015-10-07 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master c7f09aad3 -> eb5124af7


Notification Center

This PR adds a new notification center panel. A bell icon now
appears at the top right of all pages which when clicked,
opens the notification center. That shows you a log of all
notifications that have occured during your session with the
option to clear single ones, clear all, and view by group.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/eb5124af
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/eb5124af
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/eb5124af

Branch: refs/heads/master
Commit: eb5124af7d19219f74a818720d4235f743fdd4bd
Parents: c7f09aa
Author: Ben Keen 
Authored: Mon Sep 28 13:41:53 2015 -0700
Committer: Ben Keen 
Committed: Wed Oct 7 14:54:03 2015 -0700

--
 app/addons/auth/routes.js   |   3 +-
 .../assets/less/header-togglebutton.less|   6 +-
 app/addons/databases/assets/less/databases.less |   2 +-
 app/addons/databases/components.react.jsx   |   6 +-
 app/addons/documents/assets/less/changes.less   |   5 -
 .../documents/assets/less/doc-editor.less   |   5 -
 .../documents/assets/less/query-options.less|   2 +-
 app/addons/documents/header/header.react.jsx|   2 +-
 .../documents/templates/all_docs_header.html|  20 +-
 app/addons/documents/templates/jumpdoc.html |   8 +-
 app/addons/documents/views.js   |   2 +-
 app/addons/fauxton/base.js  |  33 ++-
 app/addons/fauxton/components.react.jsx |  21 +-
 app/addons/fauxton/notifications/actions.js |  67 +
 app/addons/fauxton/notifications/actiontypes.js |  22 ++
 .../notifications/notifications.react.jsx   | 262 +++
 app/addons/fauxton/notifications/stores.js  | 134 ++
 .../tests/componentsSpec.react.jsx  | 162 
 .../fauxton/notifications/tests/storesSpec.js   | 101 +++
 app/addons/fauxton/tests/baseSpec.js|  26 +-
 .../fauxton/tests/componentsSpec.react.jsx  |  43 ++-
 .../tests/nightwatch/notificationCenter.js  |  38 +++
 app/core/routeObject.js |   1 +
 app/core/tests/utilsSpec.js |  11 +
 app/core/utils.js   |   6 +
 app/templates/layouts/doc_editor.html   |   1 +
 app/templates/layouts/one_pane.html |   1 +
 app/templates/layouts/two_pane.html |   7 +-
 app/templates/layouts/with_sidebar.html |   3 +-
 app/templates/layouts/with_tabs_sidebar.html|   8 +-
 assets/index.underscore |   5 +-
 assets/less/fauxton.less|  20 +-
 assets/less/layouts.less|  52 ++--
 assets/less/mixins.less |   8 +
 assets/less/notification-center.less| 223 
 assets/less/templates.less  |   3 +-
 assets/less/trays.less  |   2 +-
 assets/less/variables.less  |   5 +
 38 files changed, 1214 insertions(+), 112 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/eb5124af/app/addons/auth/routes.js
--
diff --git a/app/addons/auth/routes.js b/app/addons/auth/routes.js
index 5189c92..9fd7189 100644
--- a/app/addons/auth/routes.js
+++ b/app/addons/auth/routes.js
@@ -29,9 +29,10 @@ function (app, FauxtonAPI, Auth, AuthActions, Components, 
ClusterActions) {
   'login': 'login',
   'logout': 'logout',
   'createAdmin': 'checkNodes',
-  'createAdmin/:node': 'createAdminForNode',
+  'createAdmin/:node': 'createAdminForNode'
 },
 disableLoader: true,
+hideNotificationCenter: true,
 
 checkNodes: function () {
   ClusterActions.navigateToNodeBasedOnNodeCount('/createAdmin/');

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/eb5124af/app/addons/components/assets/less/header-togglebutton.less
--
diff --git a/app/addons/components/assets/less/header-togglebutton.less 
b/app/addons/components/assets/less/header-togglebutton.less
index 24b860b..d381b25 100644
--- a/app/addons/components/assets/less/header-togglebutton.less
+++ b/app/addons/components/assets/less/header-togglebutton.less
@@ -21,12 +21,11 @@
   border: none;
   border-left: 1px solid @btnBorder;
   text-decoration: none;
-  float: left;
   .icon {
 font-size: 20px;
 &:before {
   float: left;
-  margin: 10px 6px 0px 0px;
+  margin: 10px 6px 0 0;
 }
   }
 }
@@ -37,7 +36,7 @@
   float: left;
  

fauxton commit: updated refs/heads/master to b539e8b

2015-10-07 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master 191ef07dd -> b539e8ba6


Grunt mocha test file existence check

This is a small tweak to a recent commit that does an up-front
check to confirm the mocha test exists. It had failed to check
the condition where the user was trying to run a .js mocha test
for a ,jsx file that hadn't yet been compiled. This expands on the
existence check for a .jsx version of the file.


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/b539e8ba
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/b539e8ba
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/b539e8ba

Branch: refs/heads/master
Commit: b539e8ba69f4edd0ffc48ba9e8541428e627a9d1
Parents: 191ef07
Author: Ben Keen 
Authored: Tue Oct 6 19:57:01 2015 -0700
Committer: Ben Keen 
Committed: Tue Oct 6 19:57:01 2015 -0700

--
 tasks/fauxton.js | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/b539e8ba/tasks/fauxton.js
--
diff --git a/tasks/fauxton.js b/tasks/fauxton.js
index 630b3ed..66b7398 100644
--- a/tasks/fauxton.js
+++ b/tasks/fauxton.js
@@ -112,7 +112,9 @@ module.exports = function (grunt) {
   // This dies immediately if the file doesn't exist and notifies the user.
   grunt.registerMultiTask('checkTestExists', 'Confirms that if a specific 
mocha test exists', function () {
 var fileSrc = grunt.option('file');
-if (fileSrc && !fs.existsSync(fileSrc)) {
+
+// the + 'x' check checks for jsx files that haven't been compiled yet
+if (fileSrc && !fs.existsSync(fileSrc) && !fs.existsSync(fileSrc + 'x')) {
   grunt.fail.fatal('Mocha test file not found: ' + fileSrc);
 }
   });



fauxton commit: updated refs/heads/master to 191ef07

2015-10-06 Thread benkeen
Repository: couchdb-fauxton
Updated Branches:
  refs/heads/master 604f5346e -> 191ef07dd


Fix for Safari not recognizing autofill on login form

Safari doesn't trigger change events for form field autofills,
so the state of the login component doesn't updated, triggering
the rather irritating "you didn't fill in all the fields" error
when visually you sure did.

Since existing polyfill options don't work (see ticket), this fix
explicitly checks for the condition of a mismatch of
username-password form values and component state. It's a little
inelegant, but justifiable I think.

Closes COUCHDB-2829


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/191ef07d
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/191ef07d
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/191ef07d

Branch: refs/heads/master
Commit: 191ef07dd760c2bad19f6ae6da92e2008af6d22b
Parents: 604f534
Author: Ben Keen 
Authored: Fri Oct 2 10:09:17 2015 -0700
Committer: Ben Keen 
Committed: Tue Oct 6 09:12:15 2015 -0700

--
 app/addons/auth/components.react.jsx| 35 +---
 .../auth/test/auth.componentsSpec.react.jsx | 29 +---
 2 files changed, 55 insertions(+), 9 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/191ef07d/app/addons/auth/components.react.jsx
--
diff --git a/app/addons/auth/components.react.jsx 
b/app/addons/auth/components.react.jsx
index 5fd5c4c..5fe87ca 100644
--- a/app/addons/auth/components.react.jsx
+++ b/app/addons/auth/components.react.jsx
@@ -37,7 +37,11 @@ define([
 
 getDefaultProps: function () {
   return {
-urlBack: ''
+urlBack: '',
+
+// for testing purposes only
+testBlankUsername: null,
+testBlankPassword: null
   };
 },
 
@@ -46,9 +50,30 @@ define([
   this.setState(change);
 },
 
-login: function (e) {
+submit: function (e) {
   e.preventDefault();
-  AuthActions.login(this.state.username, this.state.password, 
this.props.urlBack);
+
+  if (!this.checkUnrecognizedAutoFill()) {
+this.login(this.state.username, this.state.password);
+  }
+},
+
+// Safari has a bug where autofill doesn't trigger a change event. This 
checks for the condition where the state
+// and form fields have a mismatch. See: 
https://issues.apache.org/jira/browse/COUCHDB-2829
+checkUnrecognizedAutoFill: function () {
+  if (this.state.username !== '' || this.state.password !== '') {
+return false;
+  }
+  var username = (this.props.testBlankUsername) ? 
this.props.testBlankUsername : this.refs.username.getDOMNode().value;
+  var password = (this.props.testBlankPassword) ? 
this.props.testBlankPassword : this.refs.password.getDOMNode().value;
+  this.setState({ username: username, password: password }); // doesn't 
set immediately, hence separate login() call
+  this.login(username, password);
+
+  return true;
+},
+
+login: function (username, password) {
+  AuthActions.login(username, password, this.props.urlBack);
 },
 
 componentDidMount: function () {
@@ -59,14 +84,14 @@ define([
   return (
 
   
-
+
   
 Login with your username and password
   
   
   
-  
   
   Login

http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/191ef07d/app/addons/auth/test/auth.componentsSpec.react.jsx
--
diff --git a/app/addons/auth/test/auth.componentsSpec.react.jsx 
b/app/addons/auth/test/auth.componentsSpec.react.jsx
index 937ea78..5113147 100644
--- a/app/addons/auth/test/auth.componentsSpec.react.jsx
+++ b/app/addons/auth/test/auth.componentsSpec.react.jsx
@@ -26,22 +26,43 @@ define([
   describe('Auth -- Components', function () {
 
 describe('LoginForm', function () {
-  var container, loginForm;
+  var container, loginForm, stub;
 
   beforeEach(function () {
+stub = sinon.stub(Actions, 'login');
 container = document.createElement('div');
-loginForm = TestUtils.renderIntoDocument(, 
container);
   });
 
   afterEach(function () {
 React.unmountComponentAtNode(container);
+createAdminSidebarStore.reset();
+Actions.login.restore();
   });
 
   it('should trigger login event when form submitted', function () {
-var spy = sinon.spy(Actions, 'login');
+loginForm = TestUtils.renderIntoDocument(, 
container);
 

  1   2   3   >