|
|
@@ -9,17 +9,31 @@ import { ImageType } from "shared/types";
|
|
|
import Loading from "../Loading";
|
|
|
import TagList from "./TagList";
|
|
|
|
|
|
-type PropsType = {
|
|
|
- selectedImageUrl: string | null;
|
|
|
- selectedTag: string | null;
|
|
|
- clickedImage: ImageType | null;
|
|
|
- registry?: any;
|
|
|
- noTagSelection?: boolean;
|
|
|
- setSelectedImageUrl: (x: string) => void;
|
|
|
- setSelectedTag: (x: string) => void;
|
|
|
- setClickedImage: (x: ImageType) => void;
|
|
|
- disableImageSelect?: boolean;
|
|
|
-};
|
|
|
+type PropsType =
|
|
|
+ | {
|
|
|
+ selectedImageUrl: string | null;
|
|
|
+ selectedTag: string | null;
|
|
|
+ clickedImage: ImageType | null;
|
|
|
+ registry?: any;
|
|
|
+ noTagSelection?: boolean;
|
|
|
+ setSelectedImageUrl: (x: string) => void;
|
|
|
+ setSelectedTag: (x: string) => void;
|
|
|
+ setClickedImage: (x: ImageType) => void;
|
|
|
+ disableImageSelect?: boolean;
|
|
|
+ readOnly?: boolean;
|
|
|
+ }
|
|
|
+ | {
|
|
|
+ selectedImageUrl: string | null;
|
|
|
+ selectedTag: string | null;
|
|
|
+ clickedImage: ImageType | null;
|
|
|
+ registry?: any;
|
|
|
+ noTagSelection?: boolean;
|
|
|
+ setSelectedImageUrl?: (x: string) => void;
|
|
|
+ setSelectedTag?: (x: string) => void;
|
|
|
+ setClickedImage?: (x: ImageType) => void;
|
|
|
+ disableImageSelect?: boolean;
|
|
|
+ readOnly: true;
|
|
|
+ };
|
|
|
|
|
|
type StateType = {
|
|
|
loading: boolean;
|
|
|
@@ -222,28 +236,41 @@ export default class ImageList extends Component<PropsType, StateType> {
|
|
|
renderExpanded = () => {
|
|
|
let { selectedTag, selectedImageUrl, setSelectedTag } = this.props;
|
|
|
|
|
|
- if (!this.props.clickedImage || this.props.noTagSelection) {
|
|
|
+ if (this.props.readOnly && this.props.clickedImage) {
|
|
|
return (
|
|
|
- <div>
|
|
|
- <ExpandedWrapper>{this.renderImageList()}</ExpandedWrapper>
|
|
|
- {this.renderBackButton()}
|
|
|
- </div>
|
|
|
+ <ExpandedWrapper>
|
|
|
+ <TagList
|
|
|
+ selectedTag={selectedTag}
|
|
|
+ selectedImageUrl={selectedImageUrl}
|
|
|
+ registryId={this.props.clickedImage.registryId}
|
|
|
+ readOnly
|
|
|
+ />
|
|
|
+ </ExpandedWrapper>
|
|
|
);
|
|
|
- } else {
|
|
|
+ }
|
|
|
+
|
|
|
+ if (!this.props.clickedImage || this.props.noTagSelection) {
|
|
|
return (
|
|
|
<div>
|
|
|
- <ExpandedWrapper>
|
|
|
- <TagList
|
|
|
- selectedTag={selectedTag}
|
|
|
- selectedImageUrl={selectedImageUrl}
|
|
|
- setSelectedTag={setSelectedTag}
|
|
|
- registryId={this.props.clickedImage.registryId}
|
|
|
- />
|
|
|
- </ExpandedWrapper>
|
|
|
+ <ExpandedWrapper>{this.renderImageList()}</ExpandedWrapper>
|
|
|
{this.renderBackButton()}
|
|
|
</div>
|
|
|
);
|
|
|
}
|
|
|
+
|
|
|
+ return (
|
|
|
+ <div>
|
|
|
+ <ExpandedWrapper>
|
|
|
+ <TagList
|
|
|
+ selectedTag={selectedTag}
|
|
|
+ selectedImageUrl={selectedImageUrl}
|
|
|
+ setSelectedTag={setSelectedTag}
|
|
|
+ registryId={this.props.clickedImage.registryId}
|
|
|
+ />
|
|
|
+ </ExpandedWrapper>
|
|
|
+ {this.renderBackButton()}
|
|
|
+ </div>
|
|
|
+ );
|
|
|
};
|
|
|
|
|
|
render() {
|