Merged in feature/plugin_center (pull request #291)

Feature/plugin center
This commit is contained in:
Sebastian Sdorra
2019-08-19 12:14:03 +00:00
84 changed files with 1323 additions and 984 deletions

View File

@@ -1,7 +1,7 @@
// @flow
import React from "react";
import { AsyncCreatable, Async } from "react-select";
import type { AutocompleteObject, SelectValue } from "@scm-manager/ui-types";
import {Async, AsyncCreatable} from "react-select";
import type {AutocompleteObject, SelectValue} from "@scm-manager/ui-types";
import LabelWithHelpIcon from "./forms/LabelWithHelpIcon";
type Props = {

View File

@@ -25,12 +25,17 @@ const styles = {
},
content: {
display: "flex",
flexGrow: 1
flexGrow: 1,
alignItems: "center",
justifyContent: "space-between"
},
footer: {
display: "flex",
marginTop: "auto",
paddingBottom: "1.5rem"
},
noBottomMargin: {
marginBottom: "0 !important"
}
};
@@ -38,9 +43,11 @@ type Props = {
title: string,
description: string,
avatar: React.Node,
contentRight?: React.Node,
footerLeft: React.Node,
footerRight: React.Node,
link: string,
// context props
classes: any
};
@@ -55,7 +62,15 @@ class CardColumn extends React.Component<Props> {
};
render() {
const { avatar, title, description, footerLeft, footerRight, classes } = this.props;
const {
avatar,
title,
description,
contentRight,
footerLeft,
footerRight,
classes
} = this.props;
const link = this.createLink();
return (
<>
@@ -64,16 +79,29 @@ class CardColumn extends React.Component<Props> {
<figure className={classNames(classes.centerImage, "media-left")}>
{avatar}
</figure>
<div className={classNames("media-content", "text-box", classes.flexFullHeight)}>
<div
className={classNames(
"media-content",
"text-box",
classes.flexFullHeight
)}
>
<div className={classes.content}>
<div className="content shorten-text">
<div
className={classNames(
"content",
"shorten-text",
classes.noBottomMargin
)}
>
<p className="is-marginless">
<strong>{title}</strong>
</p>
<p className="shorten-text">{description}</p>
</div>
{contentRight && contentRight}
</div>
<div className={classNames(classes.footer, "level")}>
<div className={classNames("level", classes.footer)}>
<div className="level-left is-hidden-mobile">{footerLeft}</div>
<div className="level-right is-mobile">{footerRight}</div>
</div>

View File

@@ -1,7 +1,7 @@
//@flow
import React from "react";
import { translate } from "react-i18next";
import { BackendError, ForbiddenError, UnauthorizedError } from "./errors";
import {translate} from "react-i18next";
import {BackendError, ForbiddenError, UnauthorizedError} from "./errors";
import Notification from "./Notification";
import BackendErrorNotification from "./BackendErrorNotification";

View File

@@ -1,6 +1,6 @@
// @flow
import React from "react";
import { translate } from "react-i18next";
import {translate} from "react-i18next";
import type AutocompleteProps from "./UserGroupAutocomplete";
import UserGroupAutocomplete from "./UserGroupAutocomplete";

View File

@@ -1,6 +1,6 @@
// @flow
import React from "react";
import { translate } from "react-i18next";
import {translate} from "react-i18next";
import type AutocompleteProps from "./UserGroupAutocomplete";
import UserGroupAutocomplete from "./UserGroupAutocomplete";

View File

@@ -1,6 +1,6 @@
// @flow
import React from "react";
import type { SelectValue } from "@scm-manager/ui-types";
import type {SelectValue} from "@scm-manager/ui-types";
import Autocomplete from "./Autocomplete";
export type AutocompleteProps = {

View File

@@ -1,7 +1,7 @@
//@flow
import React from "react";
import DiffFile from "./DiffFile";
import type { DiffObjectProps, File } from "./DiffTypes";
import type {DiffObjectProps, File} from "./DiffTypes";
type Props = DiffObjectProps & {
diff: File[]

View File

@@ -1,17 +1,10 @@
//@flow
import React from "react";
import {
Hunk,
Diff as DiffComponent,
getChangeKey,
Change,
DiffObjectProps,
File
} from "react-diff-view";
import {Change, Diff as DiffComponent, DiffObjectProps, File, getChangeKey, Hunk} from "react-diff-view";
import injectSheets from "react-jss";
import classNames from "classnames";
import { translate } from "react-i18next";
import { ButtonGroup, Button } from "../buttons";
import {translate} from "react-i18next";
import {Button, ButtonGroup} from "../buttons";
const styles = {
panel: {

View File

@@ -1,6 +1,6 @@
//@flow
import React from "react";
import { apiClient } from "../apiclient";
import {apiClient} from "../apiclient";
import ErrorNotification from "../ErrorNotification";
import parser from "gitdiff-parser";

View File

@@ -1,9 +1,9 @@
//@flow
import React from "react";
import type { Changeset, Repository } from "@scm-manager/ui-types";
import { ButtonAddons, Button } from "../../buttons";
import { createChangesetLink, createSourcesLink } from "./changesets";
import { translate } from "react-i18next";
import type {Changeset, Repository} from "@scm-manager/ui-types";
import {Button, ButtonAddons} from "../../buttons";
import {createChangesetLink, createSourcesLink} from "./changesets";
import {translate} from "react-i18next";
type Props = {
repository: Repository,

View File

@@ -1,16 +1,16 @@
//@flow
import React from "react";
import type { Changeset, Repository, Tag } from "@scm-manager/ui-types";
import type {Changeset, Repository} from "@scm-manager/ui-types";
import classNames from "classnames";
import { Interpolate, translate } from "react-i18next";
import {Interpolate, translate} from "react-i18next";
import ChangesetId from "./ChangesetId";
import injectSheet from "react-jss";
import { DateFromNow } from "../..";
import {DateFromNow} from "../..";
import ChangesetAuthor from "./ChangesetAuthor";
import { parseDescription } from "./changesets";
import { AvatarWrapper, AvatarImage } from "../../avatar";
import { ExtensionPoint} from "@scm-manager/ui-extensions";
import {parseDescription} from "./changesets";
import {AvatarImage, AvatarWrapper} from "../../avatar";
import {ExtensionPoint} from "@scm-manager/ui-extensions";
import ChangesetTags from "./ChangesetTags";
import ChangesetButtonGroup from "./ChangesetButtonGroup";

View File

@@ -1,5 +1,6 @@
// @flow
import * as diffs from "./diffs";
export { diffs };
export * from "./changesets";