2014-12-03 02:02:48 +00:00
|
|
|
import _ from 'lodash';
|
2014-12-13 14:09:58 +00:00
|
|
|
import Q from 'q';
|
2014-12-03 02:02:48 +00:00
|
|
|
import Base from './base.js';
|
|
|
|
|
|
|
|
export default _.extend({}, Base, {
|
2014-12-07 22:38:24 +00:00
|
|
|
type: 'charset',
|
|
|
|
|
2014-12-11 00:01:57 +00:00
|
|
|
_render() {
|
2014-12-13 18:26:43 +00:00
|
|
|
var partContainer = this.container.group();
|
2014-12-07 22:38:24 +00:00
|
|
|
|
2014-12-13 17:55:03 +00:00
|
|
|
return Q.all(_.map(this.parts.elements, part => {
|
|
|
|
return part.render(partContainer.group());
|
|
|
|
}))
|
|
|
|
.then((() => {
|
|
|
|
this.spaceVertically(this.parts.elements, {
|
|
|
|
padding: 5
|
|
|
|
});
|
2014-12-07 22:38:24 +00:00
|
|
|
|
2014-12-13 18:26:43 +00:00
|
|
|
return this.renderLabeledBox(this.invert() ? 'None of:' : 'One of:', partContainer, {
|
2014-12-13 17:55:03 +00:00
|
|
|
padding: 5
|
|
|
|
});
|
|
|
|
}).bind(this));
|
2014-12-07 22:38:24 +00:00
|
|
|
},
|
|
|
|
|
|
|
|
invert() {
|
|
|
|
return this._invert.textValue !== '';
|
|
|
|
}
|
2014-12-03 02:02:48 +00:00
|
|
|
});
|