Skip to content

Commit 7564a2a

Browse files
authored
Merge branch 'develop' into cypress/optimize-speed-config
2 parents bd57ca6 + 9be2b14 commit 7564a2a

File tree

6 files changed

+13
-40
lines changed

6 files changed

+13
-40
lines changed

app/[locale]/courses/page.tsx

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -52,16 +52,17 @@ export default async function Page({ params }: { params: Params }) {
5252

5353
const contentLanguagesString = locale === 'en' ? 'default' : locale;
5454

55-
const courses = coursesStories?.filter(
56-
(course: ISbStoryData) => !FeatureFlag.getDisabledCourses().has(course.full_slug),
55+
// ✅ NEW logic for filtering courses by Storyblok 'languages' config
56+
const courses = coursesStories?.filter((course: ISbStoryData) =>
57+
course.content.languages?.includes(contentLanguagesString),
5758
);
5859

5960
const conversations = conversationsStories?.filter((conversation: ISbStoryData) =>
60-
conversation.content.languages.includes(contentLanguagesString),
61+
conversation.content.languages?.includes(contentLanguagesString),
6162
);
6263

6364
const shorts = shortsStories?.filter((short: ISbStoryData) =>
64-
short.content.languages.includes(contentLanguagesString),
65+
short.content.languages?.includes(contentLanguagesString),
6566
);
6667

6768
return <CoursesPage courseStories={courses} conversations={conversations} shorts={shorts} />;

components/storyblok/StoryblokRelatedContent.tsx

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -48,27 +48,24 @@ export const StoryblokRelatedContent = (props: StoryblokRelatedContentProps) =>
4848
};
4949
});
5050

51-
const disabledCoursesString = process.env.FF_DISABLED_COURSES;
52-
5351
const filteredRelatedContent = useMemo(() => {
5452
return relatedContent.filter((story) => {
5553
const localeString = locale === 'en' ? 'default' : locale || 'default';
5654
const storyAvailableForLocale =
5755
story.content?.languages?.length > 0
5856
? story.content.languages.includes(localeString)
5957
: true;
60-
const storyDisabled = disabledCoursesString?.includes(story.full_slug);
6158
const storyIncludedForUserPartners =
6259
story.content?.included_for_partners?.length > 0
6360
? userContentPartners.some((partner) =>
6461
story.content?.included_for_partners?.map((p) => p.toLowerCase()).includes(partner),
6562
)
6663
: true;
67-
return storyAvailableForLocale && storyIncludedForUserPartners && !storyDisabled;
64+
return storyAvailableForLocale && storyIncludedForUserPartners;
6865
});
69-
}, [relatedContent, disabledCoursesString, locale, userContentPartners]);
66+
}, [relatedContent, locale, userContentPartners]);
7067

71-
let items = filteredRelatedContent
68+
const items = filteredRelatedContent
7269
.map((relatedContentItem) => (
7370
<RelatedContentCard
7471
key={`related_content_${relatedContentItem.id}`}

lib/featureFlag.test.ts

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,7 @@
11
import { expect } from '@jest/globals';
22
import { FeatureFlag } from './featureFlag';
33

4-
const disabledCourse1 = 'fr/courses/healing-from-sexual-trauma/';
5-
const disabledCourse2 = 'fr/courses/dating-boundaries-and-relationships/';
6-
74
describe('featureFlag', () => {
8-
it('should return disabled courses when environment variable set', () => {
9-
process.env.FF_DISABLED_COURSES = [disabledCourse1, disabledCourse2].join(',');
10-
11-
expect(Array.from(FeatureFlag.getDisabledCourses())).toContain(disabledCourse1);
12-
expect(Array.from(FeatureFlag.getDisabledCourses())).toContain(disabledCourse2);
13-
});
14-
15-
it('should return empty array when environment variable not', () => {
16-
process.env.FF_DISABLED_COURSES = '';
17-
18-
expect(FeatureFlag.getDisabledCourses().size).toEqual(0);
19-
});
20-
215
it('should return user research banner value when environment variable set', () => {
226
process.env.NEXT_PUBLIC_FF_USER_RESEARCH_BANNER = 'true';
237

lib/featureFlag.ts

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,4 @@
11
export namespace FeatureFlag {
2-
export const getDisabledCourses: () => Set<string> = () => {
3-
const disabledCourses: string[] = [];
4-
5-
const disabledCoursesString = process.env.FF_DISABLED_COURSES;
6-
if (disabledCoursesString) disabledCourses.push(...disabledCoursesString.split(','));
7-
8-
return new Set<string>(disabledCourses);
9-
};
10-
112
export const isUserResearchBannerEnabled = () => {
123
return process.env.NEXT_PUBLIC_FF_USER_RESEARCH_BANNER?.toLowerCase() === 'true';
134
};

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@
7373
"react-player": "^2.13.0",
7474
"react-redux": "^9.2.0",
7575
"rollbar": "^2.26.4",
76-
"storyblok-rich-text-react-renderer": "^2.9.0"
76+
"storyblok-rich-text-react-renderer": "^3.0.1"
7777
},
7878
"devDependencies": {
7979
"@cypress/code-coverage": "^3.14.2",

yarn.lock

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8540,10 +8540,10 @@ storyblok-js-client@6.10.11:
85408540
resolved "https://registry.yarnpkg.com/storyblok-js-client/-/storyblok-js-client-6.10.11.tgz#34b5523d8011d83ed44b5a3600492d76bba48205"
85418541
integrity sha512-4FuGbQ93X7Ok1hvTRvMy/p4bfX/3C+Uw/m7Mv+wGZyX22IGdCe01qdwgD3CP1F9l5C0lEFCsWxc2PloiM9NutA==
85428542

8543-
storyblok-rich-text-react-renderer@^2.9.0:
8544-
version "2.9.2"
8545-
resolved "https://registry.yarnpkg.com/storyblok-rich-text-react-renderer/-/storyblok-rich-text-react-renderer-2.9.2.tgz#3450a11d6b2a2f55fd849e7a5564f2480be499f1"
8546-
integrity sha512-ELOuDVoPDpThM0/yYRgZlh1yP2ELSN6N1mh9/i4Z0qwwzQ7mK+mrhGeOJACx1FB7kuaLzFhtDEjVttu0OPYI2A==
8543+
storyblok-rich-text-react-renderer@^3.0.1:
8544+
version "3.0.1"
8545+
resolved "https://registry.yarnpkg.com/storyblok-rich-text-react-renderer/-/storyblok-rich-text-react-renderer-3.0.1.tgz#13171bd703d38235d310545864ddb7a2fd0b5a19"
8546+
integrity sha512-gd1nvjc95LEMLT4kVVXlN3p1qQUcIb/K4+LYnyAypX3MDP3dr2+DAX64nZb4CNbd8qHd+lM6SLxIxO53hgmK2Q==
85478547

85488548
streamroller@^3.1.5:
85498549
version "3.1.5"

0 commit comments

Comments
 (0)