Ejemplo n.º 1
0
	render() {
		let trimmedPath = this.props.repo;
		if (trimmedPath.indexOf("sourcegraph.com/") !== -1) {
			trimmedPath = trimmedPath.substring("sourcegraph.com/".length);
		}
		if (trimmedPath.indexOf("github.com/") !== -1) {
			trimmedPath = trimmedPath.substring("github.com/".length);
		}
		let pathBreadcrumb = breadcrumb(
			trimmedPath,
			(i) => <span key={i} className={base.mh1}> / </span>,
			(path, component, i, isLast) => (
				isLast && !this.props.disabledLink ?
					<Link to={this.props.rev ? urlToRepoRev(this.props.repo, this.props.rev) : urlToRepo(this.props.repo)}
						title={trimmedPath}
						key={i}
						styleName={isLast ? "active" : "inactive"}
						onClick={() => this.context.eventLogger.logEvent("RepoClicked", {repoName: trimmedPath})}>
						{component}
					</Link> :
					<span key={i}>{component}</span>
			),
		);

		return <span className={this.props.className}>{pathBreadcrumb}</span>;
	}
Ejemplo n.º 2
0
	render() {
		if (!this.state.treePath) return null;
		let pathParts = this.state.treePath.split("/");
		let pathBreadcrumb = breadcrumb(
			`/${this.state.treePath}`,
			(i) => <span key={i} styleName="sep">/</span>,
			(path, component, i, isLast) => (
				<Link to={urlTo("tree", {...this.state.params, splat: [this.state.params.splat[0], pathParts.slice(0, i).join("/")]})}
					key={i}
					styleName={isLast ? "active" : "inactive"}>
					{component}
				</Link>
			),
		);

		return (
			<span>{pathBreadcrumb}</span>
		);
	}