We now use the `preferredHandle` exposed by Sandstorm as source for
the username and append a number if the username is already taken
since we need to ensure username uniqueness (eg 'max', 'max1', 'max2')
Fixes#352
This commit stands on the initial support implemented in #342. We now
avoid error-prone parsing step by adding the member or the label
directly to the card object.
We also added support for `Tab` to completion on our textComplete
component.
Closes#342
This version includes a more complete selection of ES2015 polyfills
that I started used across the code base, for instance by replacing
`$.trim(str)` by `str.trim()`.
Since 07cc454 (ie the switch to Meteor 1.2) we includes the `es5-shim`
polyfill to support methods like `Array.prototype.forEach` in a
consistent way across all supported browsers (IE8+).
MDG recently released a blog post recommending the use of these native
methods instead of underscore [0]. We know follow this recommendation.
This commit also favor some ES6 features (argument defaults,
destructing assignment) in places where we didn’t use them.
[0]: http://info.meteor.com/blog/es2015-get-started
When creating a new [mini]card, typing `@` or `#` brings up an
auto-complete box for board members and labels which will get applied to
the card upon creation. These textual tags are removed from the card
title before saving to maintain sanity. If a label doesn't have a name,
it's colour is used (i.e. `red`, `purple`, etc).
This was developed to ease the creation of new cards and allow users to
rapidly create cards without having to click numerous times just to
apply labels & members.
The removeMemberPopup was missing the required helper to get the user and board
information and the user profile field is called "fullname" and not "name".
We need to use "function() {}" instead of the ES6 style "() {}" with
popup.afterCommit because we need the original value of "this" inside
the callback.
If every element already has the label/member, we do not need to add it
but it should be removed and if every element does not have the element,
we should add it.