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 }) => {
(