diff --git a/src/components/challenge-detail/Header/ChallengeTags.jsx b/src/components/challenge-detail/Header/ChallengeTags.jsx index 35f3d70..4d7bb7b 100644 --- a/src/components/challenge-detail/Header/ChallengeTags.jsx +++ b/src/components/challenge-detail/Header/ChallengeTags.jsx @@ -32,6 +32,7 @@ import "./style.module.scss"; export default function ChallengeTags(props) { const { + selfService, challengeId, challengesUrl, track, @@ -113,6 +114,13 @@ export default function ChallengeTags(props) { {matchSkills.map((item) => ( ))} + { + selfService && ( + + On Demand + + ) + } {tags.map( (tag) => tag && ( @@ -133,6 +141,7 @@ export default function ChallengeTags(props) { ChallengeTags.defaultProps = { events: [], technPlatforms: [], + selfService: false, }; ChallengeTags.propTypes = { @@ -143,4 +152,5 @@ ChallengeTags.propTypes = { technPlatforms: PT.arrayOf(PT.string), challengeType: PT.shape().isRequired, openForRegistrationChallenges: PT.shape().isRequired, + selfService: PT.bool, }; diff --git a/src/components/challenge-detail/Header/index.jsx b/src/components/challenge-detail/Header/index.jsx index 8bb27ef..59f57c0 100644 --- a/src/components/challenge-detail/Header/index.jsx +++ b/src/components/challenge-detail/Header/index.jsx @@ -75,8 +75,11 @@ export default function ChallengeHeader(props) { status, type, track, + legacy, } = challenge; + const { selfService } = legacy; + const tags = challenge.tags || []; const allPhases = challenge.phases || []; @@ -275,6 +278,7 @@ export default function ChallengeHeader(props) {

{name}

- {track.toLowerCase() !== "design" ? ( + {track.toLowerCase() !== "design" && !selfService ? (
{description && (
@@ -390,6 +390,7 @@ ChallengeDetailsView.propTypes = { reviewScorecardId: PT.oneOfType([PT.string, PT.number]), screeningScorecardId: PT.string, forumId: PT.number, + selfService: PT.bool, }), track: PT.string.isRequired, legacyId: PT.oneOfType([PT.string, PT.number]), diff --git a/src/containers/Challenges/Listing/ChallengeItem/Tags/index.jsx b/src/containers/Challenges/Listing/ChallengeItem/Tags/index.jsx index 3daf985..6941afd 100644 --- a/src/containers/Challenges/Listing/ChallengeItem/Tags/index.jsx +++ b/src/containers/Challenges/Listing/ChallengeItem/Tags/index.jsx @@ -1,12 +1,13 @@ import React, { useState, useMemo } from "react"; import PT from "prop-types"; +import _ from 'lodash'; import Tag from "../../../../../components/Tag"; import * as util from "../../../../../utils/tag"; import { useTargetSize } from "../../../../../utils/hooks/useTargetSize"; import "./styles.scss"; -const Tags = ({ tags, onClickTag, tooltip }) => { +const Tags = ({ tags, onClickTag, tooltip, isSelfService }) => { const Tooltip = tooltip; const [size, ref] = useTargetSize(); @@ -41,6 +42,7 @@ const Tags = ({ tags, onClickTag, tooltip }) => { return (
+ {isSelfService && } {visibleTags.map((tag) => ( ))} @@ -54,11 +56,13 @@ const Tags = ({ tags, onClickTag, tooltip }) => { }; Tags.defaultProps = { + isSelfService: false, tags: [], tooltip: ({ children }) => <>{children}, }; Tags.propTypes = { + isSelfService: PT.bool, tags: PT.arrayOf(PT.string), onClickTag: PT.func, }; diff --git a/src/containers/Challenges/Listing/ChallengeItem/index.jsx b/src/containers/Challenges/Listing/ChallengeItem/index.jsx index bab2ad7..08e655a 100644 --- a/src/containers/Challenges/Listing/ChallengeItem/index.jsx +++ b/src/containers/Challenges/Listing/ChallengeItem/index.jsx @@ -64,6 +64,7 @@ const ChallengeItem = ({ challenge, onClickTag, onClickTrack, isLoggedIn }) => {
(