Skip to content

Commit 7e9eab2

Browse files
authored
header component (openedx#101)
* chore: use LearningHeader instead course header * chore: remove course header debris
1 parent 91dd109 commit 7e9eab2

31 files changed

+84
-709
lines changed

package-lock.json

+44-18
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

+1
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
"dependencies": {
2929
"@edx/brand": "npm:@edx/brand-edx.org@^2.0.3",
3030
"@edx/frontend-component-footer": "10.1.6",
31+
"@edx/frontend-component-header": "^2.4.6",
3132
"@edx/frontend-platform": "^1.15.6",
3233
"@edx/paragon": "16.14.4",
3334
"@fortawesome/fontawesome-svg-core": "^1.2.36",

src/App.jsx

+2-2
Original file line numberDiff line numberDiff line change
@@ -4,19 +4,19 @@ import { connect } from 'react-redux';
44
import { BrowserRouter as Router } from 'react-router-dom';
55

66
import Footer from '@edx/frontend-component-footer';
7+
import { LearningHeader as Header } from '@edx/frontend-component-header';
78

89
import { selectors } from 'data/redux';
910

1011
import DemoWarning from 'containers/DemoWarning';
11-
import CourseHeader from 'containers/CourseHeader';
1212
import ListView from 'containers/ListView';
1313

1414
import './App.scss';
1515

1616
export const App = ({ courseMetadata, isEnabled }) => (
1717
<Router>
1818
<div>
19-
<CourseHeader
19+
<Header
2020
courseTitle={courseMetadata.title}
2121
courseNumber={courseMetadata.number}
2222
courseOrg={courseMetadata.org}

src/App.scss

-26
Original file line numberDiff line numberDiff line change
@@ -42,32 +42,6 @@ $input-focus-box-shadow: $input-box-shadow; // hack to get upgrade to paragon 4.
4242
}
4343
}
4444

45-
.course-header {
46-
min-width: 0;
47-
border-bottom: 1px solid black;
48-
49-
.course-title-lockup {
50-
min-width: 0;
51-
52-
span {
53-
white-space: nowrap;
54-
overflow: hidden;
55-
text-overflow: ellipsis;
56-
padding-bottom: 0.1rem;
57-
}
58-
}
59-
60-
.user-dropdown {
61-
.btn {
62-
height: 3rem;
63-
@media (max-width: -1 + map-get($grid-breakpoints, "sm")) {
64-
padding: 0 0.5rem;
65-
}
66-
}
67-
}
68-
}
69-
70-
7145
#paragon-portal-root {
7246
.pgn__modal-layer {
7347
.pgn__modal-close-container {

src/App.test.jsx

+15-1
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import React from 'react';
22
import { shallow } from 'enzyme';
33

44
import Footer from '@edx/frontend-component-footer';
5+
import { LearningHeader as Header } from '@edx/frontend-component-header';
56

67
import ListView from 'containers/ListView';
78

@@ -16,11 +17,13 @@ jest.mock('data/redux', () => ({
1617
},
1718
}));
1819

20+
jest.mock('@edx/frontend-component-header', () => ({
21+
LearningHeader: 'Header',
22+
}));
1923
jest.mock('@edx/frontend-component-footer', () => 'Footer');
2024

2125
jest.mock('containers/DemoWarning', () => 'DemoWarning');
2226
jest.mock('containers/ListView', () => 'ListView');
23-
jest.mock('containers/CourseHeader', () => 'CourseHeader');
2427

2528
const logo = 'fakeLogo.png';
2629
let el;
@@ -57,5 +60,16 @@ describe('App router component', () => {
5760
test('Footer logo drawn from env variable', () => {
5861
expect(router.find(Footer).props().logo).toEqual(logo);
5962
});
63+
64+
test('Header to use courseMetadata props', () => {
65+
const {
66+
courseTitle,
67+
courseNumber,
68+
courseOrg,
69+
} = router.find(Header).props();
70+
expect(courseTitle).toEqual(props.courseMetadata.title);
71+
expect(courseNumber).toEqual(props.courseMetadata.number);
72+
expect(courseOrg).toEqual(props.courseMetadata.org);
73+
});
6074
});
6175
});

src/__snapshots__/App.test.jsx.snap

+2-2
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
exports[`App router component snapshot: disabled (show demo warning) 1`] = `
44
<BrowserRouter>
55
<div>
6-
<CourseHeader
6+
<Header
77
courseNumber="course-number"
88
courseOrg="course-org"
99
courseTitle="course-title"
@@ -22,7 +22,7 @@ exports[`App router component snapshot: disabled (show demo warning) 1`] = `
2222
exports[`App router component snapshot: enabled 1`] = `
2323
<BrowserRouter>
2424
<div>
25-
<CourseHeader
25+
<Header
2626
courseNumber="course-number"
2727
courseOrg="course-org"
2828
courseTitle="course-title"

src/containers/CourseHeader/AnonymousUserMenu.jsx

-38
This file was deleted.

src/containers/CourseHeader/AnonymousUserMenu.test.jsx

-24
This file was deleted.

src/containers/CourseHeader/AuthenticatedUserDropdown/UserAvatar.jsx

-27
This file was deleted.

src/containers/CourseHeader/AuthenticatedUserDropdown/UserAvatar.test.jsx

-23
This file was deleted.

0 commit comments

Comments
 (0)