UNPKG

solrkit

Version:

![Build Status](https://travis-ci.org/garysieling/solrkit.svg?branch=master) ![Dependencies](https://david-dm.org/garysieling/solrkit/status.svg)

62 lines 2.87 kB
"use strict"; var __extends = (this && this.__extends) || (function () { var extendStatics = Object.setPrototypeOf || ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; }; return function (d, b) { extendStatics(d, b); function __() { this.constructor = d; } d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); Object.defineProperty(exports, "__esModule", { value: true }); var React = require("react"); var _ = require("lodash"); var FacetTypes_1 = require("./FacetTypes"); var ToggleFacet = (function (_super) { __extends(ToggleFacet, _super); function ToggleFacet() { return _super !== null && _super.apply(this, arguments) || this; } ToggleFacet.prototype.onClick = function (value) { var _this = this; return function () { var selections = []; if (value.checked) { selections = []; } else { selections.push(value.value); } var thisFacet = {}; thisFacet[_this.props.facet] = selections; _this.context.transition({ start: 0, facets: thisFacet }); }; }; ToggleFacet.prototype.render = function () { var _this = this; var title = this.props.title; var render = this.props.render || FacetTypes_1.defaultRenderer; return (React.createElement("div", { className: "ui", style: { marginBottom: '1em' } }, title ? (React.createElement("h4", null, title)) : null, _.sortBy(this.props.values, function (v) { return v[0]; }).filter(!this.props.initialValues ? _.stubTrue : (function (row) { return _.includes(_this.props.initialValues, row.value); })).map(function (_a, i) { var value = _a.value, count = _a.count, checked = _a.checked; return (React.createElement("div", { key: i }, React.createElement("div", { className: "ui toggle checkbox" }, React.createElement("input", { checked: checked, type: "checkbox", name: i + '', onClick: _this.onClick({ value: value, count: count, checked: checked }) }), React.createElement("label", { onClick: _this.onClick({ value: value, count: count, checked: checked }) }, render(value, count))))); }))); }; ToggleFacet.contextTypes = { searchState: React.PropTypes.object, transition: React.PropTypes.func }; return ToggleFacet; }(React.Component)); exports.ToggleFacet = ToggleFacet; //# sourceMappingURL=ToggleFacet.js.map