@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 -->
40 lines (39 loc) • 1.84 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const react_1 = __importDefault(require("react"));
const styles_1 = require("app/styles");
const AddedDeleted_1 = require("app/components/AddedDeleted");
const EllipsizedFileName_1 = require("app/components/EllipsizedFileName");
const defaultContainerStyle = {
marginBottom: 10,
};
const renderNone = () => {
return react_1.default.createElement("span", null, "No files effected");
};
const renderFile = (file, index, onClick) => {
return (react_1.default.createElement("div", { key: index, style: { wordBreak: 'break-all' } },
react_1.default.createElement(AddedDeleted_1.AddedDeleted, { linesAdded: file.linesAdded, linesDeleted: file.linesDeleted }),
react_1.default.createElement(EllipsizedFileName_1.EllipsizedFileName, { style: styles_1.style('smallerText'), fileName: file.name, maxCharacters: 58, onClick: onClick })));
};
const renderFiles = (files, onFileClick) => {
return files.map((file, index) => renderFile(file, index, onFileClick));
};
const renderSummary = (files) => {
const noun = files.length === 1 ? 'file' : 'files';
return (react_1.default.createElement("span", { style: styles_1.style('link') },
files.length,
" ",
noun,
" changed"));
};
exports.CommitCardFiles = (props) => {
return (react_1.default.createElement("div", { style: styles_1.style(defaultContainerStyle, props.style) }, props.files.length <= 0
? renderNone()
: props.isExpanded
? renderFiles(props.files, props.onFileClick)
: renderSummary(props.files)));
};
exports.CommitCardFiles.displayName = 'CommitCardFiles';