UNPKG

@git-temporal/git-temporal-react

Version:

<!-- START doctoc generated TOC please keep comment here to allow auto update --> <!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->

49 lines (48 loc) 2.43 kB
"use strict"; var __importStar = (this && this.__importStar) || function (mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; result["default"] = mod; return result; }; Object.defineProperty(exports, "__esModule", { value: true }); const react_1 = __importStar(require("react")); const react_redux_1 = require("react-redux"); const styles_1 = require("app/styles"); const selectors_1 = require("app/selectors"); const RadioMenuItem_1 = require("app/components/RadioMenuItem"); const ActionMenu_1 = require("app/components/ActionMenu"); const actions_1 = require("app/actions"); const ActionTypes_1 = require("app/actions/ActionTypes"); const containerStyle = { _extends: 'normalText', position: 'absolute', right: 10, }; class CommitsActionMenu extends react_1.Component { constructor() { super(...arguments); this.state = { isMenuOpen: false }; this.onMenuToggle = () => { this.setState({ isMenuOpen: !this.state.isMenuOpen }); }; } render() { const { commitsContainerSort } = this.props; return (react_1.default.createElement(ActionMenu_1.ActionMenu, { style: styles_1.style(containerStyle), isMenuOpen: this.state.isMenuOpen, onMenuToggle: this.onMenuToggle }, react_1.default.createElement("div", { style: styles_1.style('h5Text') }, "Sort by"), react_1.default.createElement(RadioMenuItem_1.RadioMenuItem, { testId: "sortTime", onClick: () => { this.sortCommits(ActionTypes_1.CommitsContainerSorts.TIME); }, isSelected: commitsContainerSort === ActionTypes_1.CommitsContainerSorts.TIME }, "by time"), react_1.default.createElement(RadioMenuItem_1.RadioMenuItem, { testId: "sortLines", onClick: () => { this.sortCommits(ActionTypes_1.CommitsContainerSorts.LINES); }, isSelected: commitsContainerSort === ActionTypes_1.CommitsContainerSorts.LINES }, "by lines changed"))); } sortCommits(newCommitsContainerSort) { this.props.dispatch(actions_1.setCommitsContainerSort(newCommitsContainerSort)); this.setState({ isMenuOpen: false }); } } exports.CommitsActionMenu = CommitsActionMenu; exports.default = react_redux_1.connect(selectors_1.getCommitsActionMenuState)(CommitsActionMenu);