@nauedu/frontend-component-header 18.2.1 → 20.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.rst +6 -0
- package/dist/Header.js +13 -9
- package/dist/Header.js.map +1 -1
- package/dist/Header.test.jsx +3 -0
- package/dist/Icons.js +1 -1
- package/dist/LanguageSelector/data/api.js +13 -5
- package/dist/LanguageSelector/data/api.js.map +1 -1
- package/dist/LanguageSelector/index.js +12 -4
- package/dist/LanguageSelector/index.js.map +1 -1
- package/dist/Logo.js +10 -23
- package/dist/Logo.js.map +1 -1
- package/dist/Menu/Menu.js +11 -11
- package/dist/Menu/Menu.js.map +1 -1
- package/dist/Menu/menu.scss +6 -6
- package/dist/__snapshots__/Header.test.jsx.snap +2 -0
- package/dist/desktop-header/DesktopHeader.js +172 -0
- package/dist/desktop-header/DesktopHeader.js.map +1 -0
- package/dist/desktop-header/DesktopHeaderMainOrSecondaryMenu.js +51 -0
- package/dist/desktop-header/DesktopHeaderMainOrSecondaryMenu.js.map +1 -0
- package/dist/desktop-header/DesktopHeaderUserMenu.js +49 -0
- package/dist/desktop-header/DesktopHeaderUserMenu.js.map +1 -0
- package/dist/desktop-header/DesktopLoggedOutItems.js +22 -0
- package/dist/desktop-header/DesktopLoggedOutItems.js.map +1 -0
- package/dist/desktop-header/DesktopUserMenuToggle.js +25 -0
- package/dist/desktop-header/DesktopUserMenuToggle.js.map +1 -0
- package/dist/frontend-platform.d.ts +41 -0
- package/dist/index.scss +27 -15
- package/dist/learning-header/AnonymousUserMenu.js +11 -8
- package/dist/learning-header/AnonymousUserMenu.js.map +1 -1
- package/dist/learning-header/AuthenticatedUserDropdown.js +32 -24
- package/dist/learning-header/AuthenticatedUserDropdown.js.map +1 -1
- package/dist/learning-header/LearningHeader.js +10 -11
- package/dist/learning-header/LearningHeader.js.map +1 -1
- package/dist/learning-header/LearningHeaderCourseInfo.js +24 -0
- package/dist/learning-header/LearningHeaderCourseInfo.js.map +1 -0
- package/dist/learning-header/LearningHeaderHelpLink.js +13 -0
- package/dist/learning-header/LearningHeaderHelpLink.js.map +1 -0
- package/dist/learning-header/LearningHeaderUserMenuItems.js +20 -0
- package/dist/learning-header/LearningHeaderUserMenuItems.js.map +1 -0
- package/dist/learning-header/LearningLoggedOutButtons.js +24 -0
- package/dist/learning-header/LearningLoggedOutButtons.js.map +1 -0
- package/dist/learning-header/LearningUserMenuToggle.js +26 -0
- package/dist/learning-header/LearningUserMenuToggle.js.map +1 -0
- package/dist/learning-header/data/api.js +12 -4
- package/dist/learning-header/data/api.js.map +1 -1
- package/dist/learning-header/data/api.test.js +92 -95
- package/dist/learning-header/data/api.test.js.map +1 -1
- package/dist/learning-header/messages.js +5 -0
- package/dist/learning-header/messages.js.map +1 -1
- package/dist/mobile-header/MobileHeader.js +197 -0
- package/dist/mobile-header/MobileHeader.js.map +1 -0
- package/dist/mobile-header/MobileHeaderMainMenu.js +46 -0
- package/dist/mobile-header/MobileHeaderMainMenu.js.map +1 -0
- package/dist/mobile-header/MobileHeaderUserMenu.js +38 -0
- package/dist/mobile-header/MobileHeaderUserMenu.js.map +1 -0
- package/dist/mobile-header/MobileLoggedOutItems.js +27 -0
- package/dist/mobile-header/MobileLoggedOutItems.js.map +1 -0
- package/dist/mobile-header/MobileUserMenuToggle.js +19 -0
- package/dist/mobile-header/MobileUserMenuToggle.js.map +1 -0
- package/dist/plugin-slots/CourseInfoSlot/README.md +128 -0
- package/dist/plugin-slots/CourseInfoSlot/images/add_custom_components_before_and_after_course_info.png +0 -0
- package/dist/plugin-slots/CourseInfoSlot/images/replace_course_info_with_custom_component.png +0 -0
- package/dist/plugin-slots/CourseInfoSlot/images/replace_course_title.png +0 -0
- package/dist/plugin-slots/CourseInfoSlot/index.js +32 -0
- package/dist/plugin-slots/CourseInfoSlot/index.js.map +1 -0
- package/dist/plugin-slots/DesktopHeaderSlot/README.md +44 -0
- package/dist/plugin-slots/DesktopHeaderSlot/images/desktop_header_custom_component.png +0 -0
- package/dist/plugin-slots/DesktopHeaderSlot/index.js +16 -0
- package/dist/plugin-slots/DesktopHeaderSlot/index.js.map +1 -0
- package/dist/plugin-slots/DesktopLoggedOutItemsSlot/README.md +137 -0
- package/dist/plugin-slots/DesktopLoggedOutItemsSlot/images/desktop_logged_out_items_custom_component.png +0 -0
- package/dist/plugin-slots/DesktopLoggedOutItemsSlot/images/desktop_logged_out_items_custom_components_before_after.png +0 -0
- package/dist/plugin-slots/DesktopLoggedOutItemsSlot/images/desktop_logged_out_items_modify_items.png +0 -0
- package/dist/plugin-slots/DesktopLoggedOutItemsSlot/index.js +20 -0
- package/dist/plugin-slots/DesktopLoggedOutItemsSlot/index.js.map +1 -0
- package/dist/plugin-slots/DesktopMainMenuSlot/README.md +137 -0
- package/dist/plugin-slots/DesktopMainMenuSlot/images/desktop_main_menu_custom_component.png +0 -0
- package/dist/plugin-slots/DesktopMainMenuSlot/images/desktop_main_menu_custom_components_before_after.png +0 -0
- package/dist/plugin-slots/DesktopMainMenuSlot/images/desktop_main_menu_modify_items.png +0 -0
- package/dist/plugin-slots/DesktopMainMenuSlot/index.js +20 -0
- package/dist/plugin-slots/DesktopMainMenuSlot/index.js.map +1 -0
- package/dist/plugin-slots/DesktopSecondaryMenuSlot/README.md +132 -0
- package/dist/plugin-slots/DesktopSecondaryMenuSlot/images/desktop_secondary_menu_custom_component.png +0 -0
- package/dist/plugin-slots/DesktopSecondaryMenuSlot/images/desktop_secondary_menu_custom_components_before_after.png +0 -0
- package/dist/plugin-slots/DesktopSecondaryMenuSlot/images/desktop_secondary_menu_modify_items.png +0 -0
- package/dist/plugin-slots/DesktopSecondaryMenuSlot/index.js +20 -0
- package/dist/plugin-slots/DesktopSecondaryMenuSlot/index.js.map +1 -0
- package/dist/plugin-slots/DesktopUserMenuSlot/README.md +144 -0
- package/dist/plugin-slots/DesktopUserMenuSlot/images/desktop_user_menu_custom_component.png +0 -0
- package/dist/plugin-slots/DesktopUserMenuSlot/images/desktop_user_menu_custom_components_before_after.png +0 -0
- package/dist/plugin-slots/DesktopUserMenuSlot/images/desktop_user_menu_modify_items.png +0 -0
- package/dist/plugin-slots/DesktopUserMenuSlot/index.js +20 -0
- package/dist/plugin-slots/DesktopUserMenuSlot/index.js.map +1 -0
- package/dist/plugin-slots/DesktopUserMenuToggleSlot/README.md +74 -0
- package/dist/plugin-slots/DesktopUserMenuToggleSlot/images/desktop_user_menu_custom_component.png +0 -0
- package/dist/plugin-slots/DesktopUserMenuToggleSlot/images/desktop_user_menu_modified_toggle.png +0 -0
- package/dist/plugin-slots/DesktopUserMenuToggleSlot/index.js +19 -0
- package/dist/plugin-slots/DesktopUserMenuToggleSlot/index.js.map +1 -0
- package/dist/plugin-slots/LearningHelpSlot/README.md +44 -0
- package/dist/plugin-slots/LearningHelpSlot/images/learning_help_custom_component.png +0 -0
- package/dist/plugin-slots/LearningHelpSlot/index.js +11 -0
- package/dist/plugin-slots/LearningHelpSlot/index.js.map +1 -0
- package/dist/plugin-slots/LearningLoggedOutItemsSlot/README.md +135 -0
- package/dist/plugin-slots/LearningLoggedOutItemsSlot/images/learning_logged_out_items_custom_component.png +0 -0
- package/dist/plugin-slots/LearningLoggedOutItemsSlot/images/learning_logged_out_items_custom_components_before_after.png +0 -0
- package/dist/plugin-slots/LearningLoggedOutItemsSlot/images/learning_logged_out_items_modified_items.png +0 -0
- package/dist/plugin-slots/LearningLoggedOutItemsSlot/index.js +18 -0
- package/dist/plugin-slots/LearningLoggedOutItemsSlot/index.js.map +1 -0
- package/dist/plugin-slots/LearningUserMenuSlot/README.md +133 -0
- package/dist/plugin-slots/LearningUserMenuSlot/images/learning_user_menu_custom_component.png +0 -0
- package/dist/plugin-slots/LearningUserMenuSlot/images/learning_user_menu_custom_components_before_after.png +0 -0
- package/dist/plugin-slots/LearningUserMenuSlot/images/learning_user_menu_modified_items.png +0 -0
- package/dist/plugin-slots/LearningUserMenuSlot/index.js +18 -0
- package/dist/plugin-slots/LearningUserMenuSlot/index.js.map +1 -0
- package/dist/plugin-slots/LearningUserMenuToggleSlot/README.md +74 -0
- package/dist/plugin-slots/LearningUserMenuToggleSlot/images/learning_user_menu_toggle_custom_component.png +0 -0
- package/dist/plugin-slots/LearningUserMenuToggleSlot/images/learning_user_menu_toggle_modified_items.png +0 -0
- package/dist/plugin-slots/LearningUserMenuToggleSlot/index.js +19 -0
- package/dist/plugin-slots/LearningUserMenuToggleSlot/index.js.map +1 -0
- package/dist/plugin-slots/LogoSlot/README.md +72 -0
- package/dist/plugin-slots/LogoSlot/index.js +27 -0
- package/dist/plugin-slots/LogoSlot/index.js.map +1 -0
- package/dist/plugin-slots/MobileHeaderSlot/README.md +44 -0
- package/dist/plugin-slots/MobileHeaderSlot/images/mobile_header_custom_component.png +0 -0
- package/dist/plugin-slots/MobileHeaderSlot/index.js +16 -0
- package/dist/plugin-slots/MobileHeaderSlot/index.js.map +1 -0
- package/dist/plugin-slots/MobileLoggedOutItemsSlot/README.md +136 -0
- package/dist/plugin-slots/MobileLoggedOutItemsSlot/images/mobile_logged_out_items_custom_component.png +0 -0
- package/dist/plugin-slots/MobileLoggedOutItemsSlot/images/mobile_logged_out_items_custom_components_before_after.png +0 -0
- package/dist/plugin-slots/MobileLoggedOutItemsSlot/images/mobile_logged_out_items_modify_items.png +0 -0
- package/dist/plugin-slots/MobileLoggedOutItemsSlot/index.js +20 -0
- package/dist/plugin-slots/MobileLoggedOutItemsSlot/index.js.map +1 -0
- package/dist/plugin-slots/MobileMainMenuSlot/README.md +136 -0
- package/dist/plugin-slots/MobileMainMenuSlot/images/mobile_main_menu_custom_component.png +0 -0
- package/dist/plugin-slots/MobileMainMenuSlot/images/mobile_main_menu_custom_components_before_after.png +0 -0
- package/dist/plugin-slots/MobileMainMenuSlot/images/mobile_main_menu_modify_items.png +0 -0
- package/dist/plugin-slots/MobileMainMenuSlot/index.js +20 -0
- package/dist/plugin-slots/MobileMainMenuSlot/index.js.map +1 -0
- package/dist/plugin-slots/MobileUserMenuSlot/README.md +144 -0
- package/dist/plugin-slots/MobileUserMenuSlot/images/mobile_user_menu_custom_component.png +0 -0
- package/dist/plugin-slots/MobileUserMenuSlot/images/mobile_user_menu_custom_components_before_after.png +0 -0
- package/dist/plugin-slots/MobileUserMenuSlot/images/mobile_user_menu_modify_items.png +0 -0
- package/dist/plugin-slots/MobileUserMenuSlot/index.js +20 -0
- package/dist/plugin-slots/MobileUserMenuSlot/index.js.map +1 -0
- package/dist/plugin-slots/MobileUserMenuToggleSlot/README.md +74 -0
- package/dist/plugin-slots/MobileUserMenuToggleSlot/images/mobile_user_menu_toggle_custom_component.png +0 -0
- package/dist/plugin-slots/MobileUserMenuToggleSlot/images/mobile_user_menu_toggle_modified_items.png +0 -0
- package/dist/plugin-slots/MobileUserMenuToggleSlot/index.js +19 -0
- package/dist/plugin-slots/MobileUserMenuToggleSlot/index.js.map +1 -0
- package/dist/plugin-slots/README.md +26 -0
- package/dist/setupTest.js +0 -2
- package/dist/studio-header/BrandNav.test.tsx +40 -0
- package/dist/studio-header/BrandNav.tsx +25 -0
- package/dist/studio-header/CourseLockUp.test.tsx +59 -0
- package/dist/studio-header/CourseLockUp.tsx +56 -0
- package/dist/studio-header/HeaderBody.test.tsx +102 -0
- package/dist/studio-header/HeaderBody.tsx +196 -0
- package/dist/studio-header/MobileHeader.tsx +74 -0
- package/dist/studio-header/MobileMenu.test.tsx +81 -0
- package/dist/studio-header/MobileMenu.tsx +50 -0
- package/dist/studio-header/NavDropdownMenu.test.tsx +67 -0
- package/dist/studio-header/NavDropdownMenu.tsx +42 -0
- package/dist/studio-header/StudioHeader.scss +8 -8
- package/dist/studio-header/StudioHeader.test.tsx +220 -0
- package/dist/studio-header/StudioHeader.tsx +84 -0
- package/dist/studio-header/UserMenu.tsx +69 -0
- package/dist/studio-header/{index.js → index.ts} +1 -1
- package/dist/studio-header/{messages.js → messages.ts} +15 -14
- package/dist/studio-header/utils.ts +37 -0
- package/dist/test-utils.js +12 -4
- package/dist/test-utils.js.map +1 -1
- package/package.json +28 -30
- package/dist/DesktopHeader.js +0 -242
- package/dist/DesktopHeader.js.map +0 -1
- package/dist/MobileHeader.js +0 -244
- package/dist/MobileHeader.js.map +0 -1
- package/dist/studio-header/BrandNav.js +0 -21
- package/dist/studio-header/BrandNav.js.map +0 -1
- package/dist/studio-header/CourseLockUp.js +0 -45
- package/dist/studio-header/CourseLockUp.js.map +0 -1
- package/dist/studio-header/HeaderBody.js +0 -131
- package/dist/studio-header/HeaderBody.js.map +0 -1
- package/dist/studio-header/MobileHeader.js +0 -79
- package/dist/studio-header/MobileHeader.js.map +0 -1
- package/dist/studio-header/MobileMenu.js +0 -45
- package/dist/studio-header/MobileMenu.js.map +0 -1
- package/dist/studio-header/NavDropdownMenu.js +0 -30
- package/dist/studio-header/NavDropdownMenu.js.map +0 -1
- package/dist/studio-header/StudioHeader.js +0 -72
- package/dist/studio-header/StudioHeader.js.map +0 -1
- package/dist/studio-header/UserMenu.js +0 -55
- package/dist/studio-header/UserMenu.js.map +0 -1
- package/dist/studio-header/index.js.map +0 -1
- package/dist/studio-header/messages.js.map +0 -1
- package/dist/studio-header/utils.js +0 -29
- package/dist/studio-header/utils.js.map +0 -1
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
// frontend-platform currently doesn't provide types... do it ourselves for i18n module at least.
|
|
2
|
+
// We can remove this in the future when we migrate to frontend-shell, or when frontend-platform gets types
|
|
3
|
+
// (whichever comes first).
|
|
4
|
+
|
|
5
|
+
declare module '@edx/frontend-platform/i18n' {
|
|
6
|
+
// eslint-disable-next-line import/no-extraneous-dependencies
|
|
7
|
+
import { injectIntl as _injectIntl } from 'react-intl';
|
|
8
|
+
/** @deprecated Use useIntl() hook instead. */
|
|
9
|
+
export const injectIntl: typeof _injectIntl;
|
|
10
|
+
/** @deprecated Use useIntl() hook instead. */
|
|
11
|
+
export const intlShape: any;
|
|
12
|
+
|
|
13
|
+
// eslint-disable-next-line import/no-extraneous-dependencies
|
|
14
|
+
export {
|
|
15
|
+
createIntl,
|
|
16
|
+
FormattedDate,
|
|
17
|
+
FormattedTime,
|
|
18
|
+
FormattedRelativeTime,
|
|
19
|
+
FormattedNumber,
|
|
20
|
+
FormattedPlural,
|
|
21
|
+
FormattedMessage,
|
|
22
|
+
defineMessages,
|
|
23
|
+
IntlProvider,
|
|
24
|
+
useIntl,
|
|
25
|
+
} from 'react-intl';
|
|
26
|
+
|
|
27
|
+
// Other exports from the i18n module:
|
|
28
|
+
export const configure: any;
|
|
29
|
+
export const getPrimaryLanguageSubtag: (code: string) => string;
|
|
30
|
+
export const getLocale: (locale?: string) => string;
|
|
31
|
+
export const getMessages: any;
|
|
32
|
+
export const isRtl: (locale?: string) => boolean;
|
|
33
|
+
export const handleRtl: any;
|
|
34
|
+
export const mergeMessages: any;
|
|
35
|
+
export const LOCALE_CHANGED: any;
|
|
36
|
+
export const LOCALE_TOPIC: any;
|
|
37
|
+
export const getCountryList: any;
|
|
38
|
+
export const getCountryMessages: any;
|
|
39
|
+
export const getLanguageList: any;
|
|
40
|
+
export const getLanguageMessages: any;
|
|
41
|
+
}
|
package/dist/index.scss
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
$spacer: 1rem;
|
|
2
2
|
$blue: #007db8;
|
|
3
3
|
$white: #fff;
|
|
4
|
+
$component-active-bg: #0A3055FF !default;
|
|
5
|
+
$component-active-color: $white !default;
|
|
6
|
+
$rounded-pill: 50rem !default;
|
|
4
7
|
|
|
5
8
|
@import './Menu/menu.scss';
|
|
6
9
|
@import './studio-header/StudioHeader.scss';
|
|
@@ -21,8 +24,9 @@ $white: #fff;
|
|
|
21
24
|
padding: .75rem;
|
|
22
25
|
justify-content: center;
|
|
23
26
|
align-items:center;
|
|
27
|
+
|
|
24
28
|
&:hover, &:focus {
|
|
25
|
-
background: rgba(0,0,0
|
|
29
|
+
background: rgba(0, 0, 0, .1);
|
|
26
30
|
}
|
|
27
31
|
}
|
|
28
32
|
|
|
@@ -36,7 +40,7 @@ $white: #fff;
|
|
|
36
40
|
white-space: nowrap;
|
|
37
41
|
overflow: hidden;
|
|
38
42
|
text-overflow: ellipsis;
|
|
39
|
-
padding-bottom: 0.
|
|
43
|
+
padding-bottom: calc(var(--pgn-spacing-spacer-base, $spacer)* 0.1);
|
|
40
44
|
}
|
|
41
45
|
}
|
|
42
46
|
|
|
@@ -63,6 +67,7 @@ $white: #fff;
|
|
|
63
67
|
text-decoration: none;
|
|
64
68
|
cursor: pointer;
|
|
65
69
|
}
|
|
70
|
+
|
|
66
71
|
img {
|
|
67
72
|
height: 1.5rem;
|
|
68
73
|
}
|
|
@@ -70,19 +75,22 @@ $white: #fff;
|
|
|
70
75
|
|
|
71
76
|
|
|
72
77
|
.site-header-desktop {
|
|
73
|
-
box-shadow: 0 1px 0 0 rgba(0,0,0
|
|
74
|
-
background: $white;
|
|
78
|
+
box-shadow: 0 1px 0 0 rgba(0, 0, 0, .1);
|
|
79
|
+
background: var(--pgn-color-white, $white);
|
|
80
|
+
|
|
75
81
|
.nav-link {
|
|
76
82
|
text-decoration: none;
|
|
77
83
|
}
|
|
84
|
+
|
|
78
85
|
.logo {
|
|
79
86
|
display: block;
|
|
80
87
|
box-sizing: content-box;
|
|
81
88
|
position: relative;
|
|
82
89
|
top: -.05em;
|
|
83
90
|
height: 1.75rem;
|
|
84
|
-
padding:
|
|
85
|
-
margin-right:
|
|
91
|
+
padding: var(--pgn-spacing-spacer-base, $spacer) 0;
|
|
92
|
+
margin-right: var(--pgn-spacing-spacer-base, $spacer);
|
|
93
|
+
|
|
86
94
|
img {
|
|
87
95
|
display: block;
|
|
88
96
|
height: 100%;
|
|
@@ -93,38 +101,42 @@ $white: #fff;
|
|
|
93
101
|
.nav-link:focus,
|
|
94
102
|
.nav-link.active,
|
|
95
103
|
.expanded .nav-link {
|
|
96
|
-
background: $component-active-bg;
|
|
97
|
-
color: $component-active-color;
|
|
104
|
+
background: var(--pgn-color-bg-active, $component-active-bg);
|
|
105
|
+
color: var(--pgn-color-active, $component-active-color);
|
|
98
106
|
}
|
|
99
107
|
}
|
|
100
108
|
.main-nav {
|
|
101
109
|
.nav-link {
|
|
102
|
-
padding: 1.125rem
|
|
110
|
+
padding: 1.125rem var(--pgn-spacing-spacer-base, $spacer);
|
|
103
111
|
text-decoration: none;
|
|
104
112
|
font-weight: 500;
|
|
105
113
|
letter-spacing: .01em;
|
|
106
114
|
}
|
|
115
|
+
|
|
107
116
|
.nav-link:hover,
|
|
108
117
|
.nav-link:focus,
|
|
109
118
|
.nav-link.active,
|
|
110
119
|
.expanded .nav-link {
|
|
111
|
-
background: $component-active-bg;
|
|
112
|
-
color: $component-active-color;
|
|
120
|
+
background: var(--pgn-color-bg-active, $component-active-bg);
|
|
121
|
+
color: var(--pgn-color-active, $component-active-color);
|
|
113
122
|
}
|
|
123
|
+
|
|
114
124
|
.menu {
|
|
115
125
|
position: static;
|
|
126
|
+
|
|
116
127
|
.menu-content {
|
|
117
|
-
border-top: solid 2px
|
|
128
|
+
border-top: solid 2px var(--pgn-color-bg-active);
|
|
118
129
|
left: 0;
|
|
119
130
|
right: 0;
|
|
120
|
-
box-shadow: 0 1px 2px rgba(0,0,0,.25);
|
|
131
|
+
box-shadow: var(--pgn-elevation-box-shadow-down-1, 0 1px 2px rgba(0,0,0,.25));
|
|
121
132
|
border-bottom-left-radius: 2px;
|
|
122
133
|
border-bottom-right-radius: 2px;
|
|
123
|
-
padding:
|
|
134
|
+
padding: var(--pgn-spacing-spacer-base, $spacer);
|
|
124
135
|
}
|
|
125
136
|
}
|
|
126
137
|
}
|
|
138
|
+
|
|
127
139
|
.search-input {
|
|
128
|
-
border-radius: $rounded-pill;
|
|
140
|
+
border-radius: var(--pgn-size-rounded-pill, $rounded-pill);
|
|
129
141
|
}
|
|
130
142
|
}
|
|
@@ -2,18 +2,21 @@ import React from 'react';
|
|
|
2
2
|
import { getConfig } from '@edx/frontend-platform';
|
|
3
3
|
import { getLoginRedirectUrl } from '@edx/frontend-platform/auth';
|
|
4
4
|
import { injectIntl, intlShape } from '@edx/frontend-platform/i18n';
|
|
5
|
-
import
|
|
5
|
+
import LearningLoggedOutItemsSlot from '../plugin-slots/LearningLoggedOutItemsSlot';
|
|
6
6
|
import genericMessages from '../generic/messages';
|
|
7
7
|
var AnonymousUserMenu = function AnonymousUserMenu(_ref) {
|
|
8
8
|
var intl = _ref.intl;
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
variant: "outline-primary",
|
|
9
|
+
var buttonsInfo = [{
|
|
10
|
+
message: intl.formatMessage(genericMessages.registerSentenceCase),
|
|
12
11
|
href: "".concat(getConfig().LMS_BASE_URL, "/register?next=").concat(encodeURIComponent(global.location.href))
|
|
13
|
-
},
|
|
14
|
-
|
|
15
|
-
href:
|
|
16
|
-
|
|
12
|
+
}, {
|
|
13
|
+
message: intl.formatMessage(genericMessages.signInSentenceCase),
|
|
14
|
+
href: getLoginRedirectUrl(global.location.href),
|
|
15
|
+
variant: 'primary'
|
|
16
|
+
}];
|
|
17
|
+
return /*#__PURE__*/React.createElement(LearningLoggedOutItemsSlot, {
|
|
18
|
+
buttonsInfo: buttonsInfo
|
|
19
|
+
});
|
|
17
20
|
};
|
|
18
21
|
AnonymousUserMenu.propTypes = {
|
|
19
22
|
intl: intlShape.isRequired
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AnonymousUserMenu.js","names":["React","getConfig","getLoginRedirectUrl","injectIntl","intlShape","
|
|
1
|
+
{"version":3,"file":"AnonymousUserMenu.js","names":["React","getConfig","getLoginRedirectUrl","injectIntl","intlShape","LearningLoggedOutItemsSlot","genericMessages","AnonymousUserMenu","_ref","intl","buttonsInfo","message","formatMessage","registerSentenceCase","href","concat","LMS_BASE_URL","encodeURIComponent","global","location","signInSentenceCase","variant","createElement","propTypes","isRequired"],"sources":["../../src/learning-header/AnonymousUserMenu.jsx"],"sourcesContent":["import React from 'react';\n\nimport { getConfig } from '@edx/frontend-platform';\nimport { getLoginRedirectUrl } from '@edx/frontend-platform/auth';\nimport { injectIntl, intlShape } from '@edx/frontend-platform/i18n';\nimport LearningLoggedOutItemsSlot from '../plugin-slots/LearningLoggedOutItemsSlot';\n\nimport genericMessages from '../generic/messages';\n\nconst AnonymousUserMenu = ({ intl }) => {\n const buttonsInfo = [\n {\n message: intl.formatMessage(genericMessages.registerSentenceCase),\n href: `${getConfig().LMS_BASE_URL}/register?next=${encodeURIComponent(global.location.href)}`,\n },\n {\n message: intl.formatMessage(genericMessages.signInSentenceCase),\n href: getLoginRedirectUrl(global.location.href),\n variant: 'primary',\n },\n ];\n\n return <LearningLoggedOutItemsSlot buttonsInfo={buttonsInfo} />;\n};\n\nAnonymousUserMenu.propTypes = {\n intl: intlShape.isRequired,\n};\n\nexport default injectIntl(AnonymousUserMenu);\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAASC,SAAS,QAAQ,wBAAwB;AAClD,SAASC,mBAAmB,QAAQ,6BAA6B;AACjE,SAASC,UAAU,EAAEC,SAAS,QAAQ,6BAA6B;AACnE,OAAOC,0BAA0B,MAAM,4CAA4C;AAEnF,OAAOC,eAAe,MAAM,qBAAqB;AAEjD,IAAMC,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAAC,IAAA,EAAiB;EAAA,IAAXC,IAAI,GAAAD,IAAA,CAAJC,IAAI;EAC/B,IAAMC,WAAW,GAAG,CAClB;IACEC,OAAO,EAAEF,IAAI,CAACG,aAAa,CAACN,eAAe,CAACO,oBAAoB,CAAC;IACjEC,IAAI,KAAAC,MAAA,CAAKd,SAAS,CAAC,CAAC,CAACe,YAAY,qBAAAD,MAAA,CAAkBE,kBAAkB,CAACC,MAAM,CAACC,QAAQ,CAACL,IAAI,CAAC;EAC7F,CAAC,EACD;IACEH,OAAO,EAAEF,IAAI,CAACG,aAAa,CAACN,eAAe,CAACc,kBAAkB,CAAC;IAC/DN,IAAI,EAAEZ,mBAAmB,CAACgB,MAAM,CAACC,QAAQ,CAACL,IAAI,CAAC;IAC/CO,OAAO,EAAE;EACX,CAAC,CACF;EAED,oBAAOrB,KAAA,CAAAsB,aAAA,CAACjB,0BAA0B;IAACK,WAAW,EAAEA;EAAY,CAAE,CAAC;AACjE,CAAC;AAEDH,iBAAiB,CAACgB,SAAS,GAAG;EAC5Bd,IAAI,EAAEL,SAAS,CAACoB;AAClB,CAAC;AAED,eAAerB,UAAU,CAACI,iBAAiB,CAAC","ignoreList":[]}
|
|
@@ -1,42 +1,50 @@
|
|
|
1
|
+
function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
|
|
2
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
3
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
4
|
+
function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
|
|
5
|
+
function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
|
|
6
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
1
7
|
import React from 'react';
|
|
2
8
|
import PropTypes from 'prop-types';
|
|
3
|
-
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
|
4
9
|
import { faUserCircle } from '@fortawesome/free-solid-svg-icons';
|
|
5
10
|
import { getConfig } from '@edx/frontend-platform';
|
|
6
11
|
import { injectIntl, intlShape } from '@edx/frontend-platform/i18n';
|
|
7
12
|
import { Dropdown } from '@openedx/paragon';
|
|
13
|
+
import LearningUserMenuToggleSlot from '../plugin-slots/LearningUserMenuToggleSlot';
|
|
14
|
+
import LearningUserMenuSlot from '../plugin-slots/LearningUserMenuSlot';
|
|
8
15
|
import messages from './messages';
|
|
9
16
|
var AuthenticatedUserDropdown = function AuthenticatedUserDropdown(_ref) {
|
|
10
17
|
var intl = _ref.intl,
|
|
11
18
|
username = _ref.username;
|
|
12
|
-
var
|
|
19
|
+
var dropdownItems = [{
|
|
20
|
+
message: intl.formatMessage(messages.dashboard),
|
|
13
21
|
href: "".concat(getConfig().LMS_BASE_URL, "/dashboard")
|
|
14
|
-
},
|
|
15
|
-
|
|
16
|
-
className: "text-gray-700",
|
|
17
|
-
href: "".concat(getConfig().SUPPORT_URL)
|
|
18
|
-
}, intl.formatMessage(messages.help)), /*#__PURE__*/React.createElement(Dropdown, {
|
|
19
|
-
className: "user-dropdown ml-3"
|
|
20
|
-
}, /*#__PURE__*/React.createElement(Dropdown.Toggle, {
|
|
21
|
-
variant: "outline-primary"
|
|
22
|
-
}, /*#__PURE__*/React.createElement(FontAwesomeIcon, {
|
|
23
|
-
icon: faUserCircle,
|
|
24
|
-
className: "d-md-none",
|
|
25
|
-
size: "lg"
|
|
26
|
-
}), /*#__PURE__*/React.createElement("span", {
|
|
27
|
-
"data-hj-suppress": true,
|
|
28
|
-
className: "d-none d-md-inline"
|
|
29
|
-
}, username)), /*#__PURE__*/React.createElement(Dropdown.Menu, {
|
|
30
|
-
className: "dropdown-menu-right"
|
|
31
|
-
}, dashboardMenuItem, /*#__PURE__*/React.createElement(Dropdown.Item, {
|
|
22
|
+
}, {
|
|
23
|
+
message: intl.formatMessage(messages.profile),
|
|
32
24
|
href: "".concat(getConfig().ACCOUNT_PROFILE_URL, "/u/").concat(username)
|
|
33
|
-
},
|
|
25
|
+
}, {
|
|
26
|
+
message: intl.formatMessage(messages.account),
|
|
34
27
|
href: getConfig().ACCOUNT_SETTINGS_URL
|
|
35
|
-
}
|
|
28
|
+
}].concat(_toConsumableArray(getConfig().ORDER_HISTORY_URL ? [{
|
|
29
|
+
message: intl.formatMessage(messages.orderHistory),
|
|
36
30
|
href: getConfig().ORDER_HISTORY_URL
|
|
37
|
-
}
|
|
31
|
+
}] : []), [{
|
|
32
|
+
message: intl.formatMessage(messages.signOut),
|
|
38
33
|
href: getConfig().LOGOUT_URL
|
|
39
|
-
}
|
|
34
|
+
}]);
|
|
35
|
+
return /*#__PURE__*/React.createElement(Dropdown, {
|
|
36
|
+
className: "user-dropdown ml-3"
|
|
37
|
+
}, /*#__PURE__*/React.createElement(Dropdown.Toggle, {
|
|
38
|
+
variant: "outline-primary",
|
|
39
|
+
"aria-label": intl.formatMessage(messages.userOptionsDropdownLabel)
|
|
40
|
+
}, /*#__PURE__*/React.createElement(LearningUserMenuToggleSlot, {
|
|
41
|
+
label: username,
|
|
42
|
+
icon: faUserCircle
|
|
43
|
+
})), /*#__PURE__*/React.createElement(Dropdown.Menu, {
|
|
44
|
+
className: "dropdown-menu-right"
|
|
45
|
+
}, /*#__PURE__*/React.createElement(LearningUserMenuSlot, {
|
|
46
|
+
items: dropdownItems
|
|
47
|
+
})));
|
|
40
48
|
};
|
|
41
49
|
AuthenticatedUserDropdown.propTypes = {
|
|
42
50
|
intl: intlShape.isRequired,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AuthenticatedUserDropdown.js","names":["React","PropTypes","
|
|
1
|
+
{"version":3,"file":"AuthenticatedUserDropdown.js","names":["React","PropTypes","faUserCircle","getConfig","injectIntl","intlShape","Dropdown","LearningUserMenuToggleSlot","LearningUserMenuSlot","messages","AuthenticatedUserDropdown","_ref","intl","username","dropdownItems","message","formatMessage","dashboard","href","concat","LMS_BASE_URL","profile","ACCOUNT_PROFILE_URL","account","ACCOUNT_SETTINGS_URL","_toConsumableArray","ORDER_HISTORY_URL","orderHistory","signOut","LOGOUT_URL","createElement","className","Toggle","variant","userOptionsDropdownLabel","label","icon","Menu","items","propTypes","isRequired","string"],"sources":["../../src/learning-header/AuthenticatedUserDropdown.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { faUserCircle } from '@fortawesome/free-solid-svg-icons';\nimport { getConfig } from '@edx/frontend-platform';\nimport { injectIntl, intlShape } from '@edx/frontend-platform/i18n';\nimport { Dropdown } from '@openedx/paragon';\n\nimport LearningUserMenuToggleSlot from '../plugin-slots/LearningUserMenuToggleSlot';\nimport LearningUserMenuSlot from '../plugin-slots/LearningUserMenuSlot';\n\nimport messages from './messages';\n\nconst AuthenticatedUserDropdown = ({ intl, username }) => {\n const dropdownItems = [\n {\n message: intl.formatMessage(messages.dashboard),\n href: `${getConfig().LMS_BASE_URL}/dashboard`,\n },\n {\n message: intl.formatMessage(messages.profile),\n href: `${getConfig().ACCOUNT_PROFILE_URL}/u/${username}`,\n },\n {\n message: intl.formatMessage(messages.account),\n href: getConfig().ACCOUNT_SETTINGS_URL,\n },\n ...(getConfig().ORDER_HISTORY_URL ? [{\n message: intl.formatMessage(messages.orderHistory),\n href: getConfig().ORDER_HISTORY_URL,\n }] : []),\n {\n message: intl.formatMessage(messages.signOut),\n href: getConfig().LOGOUT_URL,\n },\n ];\n\n return (\n <Dropdown className=\"user-dropdown ml-3\">\n <Dropdown.Toggle variant=\"outline-primary\" aria-label={intl.formatMessage(messages.userOptionsDropdownLabel)}>\n <LearningUserMenuToggleSlot label={username} icon={faUserCircle} />\n </Dropdown.Toggle>\n <Dropdown.Menu className=\"dropdown-menu-right\">\n <LearningUserMenuSlot items={dropdownItems} />\n </Dropdown.Menu>\n </Dropdown>\n );\n};\n\nAuthenticatedUserDropdown.propTypes = {\n intl: intlShape.isRequired,\n username: PropTypes.string.isRequired,\n};\n\nexport default injectIntl(AuthenticatedUserDropdown);\n"],"mappings":";;;;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAElC,SAASC,YAAY,QAAQ,mCAAmC;AAChE,SAASC,SAAS,QAAQ,wBAAwB;AAClD,SAASC,UAAU,EAAEC,SAAS,QAAQ,6BAA6B;AACnE,SAASC,QAAQ,QAAQ,kBAAkB;AAE3C,OAAOC,0BAA0B,MAAM,4CAA4C;AACnF,OAAOC,oBAAoB,MAAM,sCAAsC;AAEvE,OAAOC,QAAQ,MAAM,YAAY;AAEjC,IAAMC,yBAAyB,GAAG,SAA5BA,yBAAyBA,CAAAC,IAAA,EAA2B;EAAA,IAArBC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IAAEC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;EACjD,IAAMC,aAAa,IACjB;IACEC,OAAO,EAAEH,IAAI,CAACI,aAAa,CAACP,QAAQ,CAACQ,SAAS,CAAC;IAC/CC,IAAI,KAAAC,MAAA,CAAKhB,SAAS,CAAC,CAAC,CAACiB,YAAY;EACnC,CAAC,EACD;IACEL,OAAO,EAAEH,IAAI,CAACI,aAAa,CAACP,QAAQ,CAACY,OAAO,CAAC;IAC7CH,IAAI,KAAAC,MAAA,CAAKhB,SAAS,CAAC,CAAC,CAACmB,mBAAmB,SAAAH,MAAA,CAAMN,QAAQ;EACxD,CAAC,EACD;IACEE,OAAO,EAAEH,IAAI,CAACI,aAAa,CAACP,QAAQ,CAACc,OAAO,CAAC;IAC7CL,IAAI,EAAEf,SAAS,CAAC,CAAC,CAACqB;EACpB,CAAC,EAAAL,MAAA,CAAAM,kBAAA,CACGtB,SAAS,CAAC,CAAC,CAACuB,iBAAiB,GAAG,CAAC;IACnCX,OAAO,EAAEH,IAAI,CAACI,aAAa,CAACP,QAAQ,CAACkB,YAAY,CAAC;IAClDT,IAAI,EAAEf,SAAS,CAAC,CAAC,CAACuB;EACpB,CAAC,CAAC,GAAG,EAAE,IACP;IACEX,OAAO,EAAEH,IAAI,CAACI,aAAa,CAACP,QAAQ,CAACmB,OAAO,CAAC;IAC7CV,IAAI,EAAEf,SAAS,CAAC,CAAC,CAAC0B;EACpB,CAAC,EACF;EAED,oBACE7B,KAAA,CAAA8B,aAAA,CAACxB,QAAQ;IAACyB,SAAS,EAAC;EAAoB,gBACtC/B,KAAA,CAAA8B,aAAA,CAACxB,QAAQ,CAAC0B,MAAM;IAACC,OAAO,EAAC,iBAAiB;IAAC,cAAYrB,IAAI,CAACI,aAAa,CAACP,QAAQ,CAACyB,wBAAwB;EAAE,gBAC3GlC,KAAA,CAAA8B,aAAA,CAACvB,0BAA0B;IAAC4B,KAAK,EAAEtB,QAAS;IAACuB,IAAI,EAAElC;EAAa,CAAE,CACnD,CAAC,eAClBF,KAAA,CAAA8B,aAAA,CAACxB,QAAQ,CAAC+B,IAAI;IAACN,SAAS,EAAC;EAAqB,gBAC5C/B,KAAA,CAAA8B,aAAA,CAACtB,oBAAoB;IAAC8B,KAAK,EAAExB;EAAc,CAAE,CAChC,CACP,CAAC;AAEf,CAAC;AAEDJ,yBAAyB,CAAC6B,SAAS,GAAG;EACpC3B,IAAI,EAAEP,SAAS,CAACmC,UAAU;EAC1B3B,QAAQ,EAAEZ,SAAS,CAACwC,MAAM,CAACD;AAC7B,CAAC;AAED,eAAepC,UAAU,CAACM,yBAAyB,CAAC","ignoreList":[]}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
var _excluded = ["href", "src", "alt"];
|
|
2
|
-
function _slicedToArray(
|
|
2
|
+
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
|
3
3
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
4
|
-
function _unsupportedIterableToArray(
|
|
5
|
-
function _arrayLikeToArray(
|
|
4
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
5
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
6
6
|
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
7
|
-
function _arrayWithHoles(
|
|
8
|
-
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (
|
|
9
|
-
function _objectWithoutProperties(
|
|
10
|
-
function _objectWithoutPropertiesLoose(
|
|
7
|
+
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
8
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
9
|
+
function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
|
|
10
|
+
function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
|
|
11
11
|
import React, { useContext, useEffect, useState } from 'react';
|
|
12
12
|
import Responsive from 'react-responsive';
|
|
13
13
|
import PropTypes from 'prop-types';
|
|
@@ -16,6 +16,7 @@ import { injectIntl, intlShape } from '@edx/frontend-platform/i18n';
|
|
|
16
16
|
import { AppContext } from '@edx/frontend-platform/react';
|
|
17
17
|
import AnonymousUserMenu from './AnonymousUserMenu';
|
|
18
18
|
import AuthenticatedUserDropdown from './AuthenticatedUserDropdown';
|
|
19
|
+
import LogoSlot from '../plugin-slots/LogoSlot';
|
|
19
20
|
import messages from './messages';
|
|
20
21
|
import getCourseLogoOrg from './data/api';
|
|
21
22
|
import LanguageSelector from '../LanguageSelector';
|
|
@@ -58,15 +59,13 @@ var LearningHeader = function LearningHeader(_ref2) {
|
|
|
58
59
|
}, [courseOrg, enableOrgLogo]);
|
|
59
60
|
var headerLogo = /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Responsive, {
|
|
60
61
|
maxWidth: 769
|
|
61
|
-
}, /*#__PURE__*/React.createElement(
|
|
62
|
-
className: "logo",
|
|
62
|
+
}, /*#__PURE__*/React.createElement(LogoSlot, {
|
|
63
63
|
href: "".concat(getConfig().LMS_BASE_URL, "/dashboard"),
|
|
64
64
|
src: getConfig().LOGO_URL_MOBILE || getConfig().LOGO_URL,
|
|
65
65
|
alt: getConfig().SITE_NAME
|
|
66
66
|
})), /*#__PURE__*/React.createElement(Responsive, {
|
|
67
67
|
minWidth: 769
|
|
68
|
-
}, /*#__PURE__*/React.createElement(
|
|
69
|
-
className: "logo",
|
|
68
|
+
}, /*#__PURE__*/React.createElement(LogoSlot, {
|
|
70
69
|
href: "".concat(getConfig().LMS_BASE_URL, "/dashboard"),
|
|
71
70
|
src: getConfig().LOGO_URL,
|
|
72
71
|
alt: getConfig().SITE_NAME
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LearningHeader.js","names":["React","useContext","useEffect","useState","Responsive","PropTypes","getConfig","injectIntl","intlShape","AppContext","AnonymousUserMenu","AuthenticatedUserDropdown","messages","getCourseLogoOrg","LanguageSelector","LinkedLogo","_ref","href","src","alt","attributes","_objectWithoutProperties","_excluded","createElement","_extends","className","propTypes","string","isRequired","LearningHeader","_ref2","courseOrg","courseTitle","intl","showUserDropdown","_useContext","authenticatedUser","_useState","_useState2","_slicedToArray","logoOrg","setLogoOrg","enableOrgLogo","ENABLE_ORG_LOGO","then","logoOrgUrl","headerLogo","Fragment","maxWidth","concat","LMS_BASE_URL","LOGO_URL_MOBILE","LOGO_URL","SITE_NAME","minWidth","formatMessage","skipNavLink","style","maxHeight","fontSize","ENABLE_HEADER_LANG_SELECTOR","options","JSON","parse","SITE_SUPPORTED_LANGUAGES","compact","username","bool","defaultProps"],"sources":["../../src/learning-header/LearningHeader.jsx"],"sourcesContent":["import React, { useContext, useEffect, useState } from 'react';\nimport Responsive from 'react-responsive';\nimport PropTypes from 'prop-types';\nimport { getConfig } from '@edx/frontend-platform';\nimport { injectIntl, intlShape } from '@edx/frontend-platform/i18n';\nimport { AppContext } from '@edx/frontend-platform/react';\n\nimport AnonymousUserMenu from './AnonymousUserMenu';\nimport AuthenticatedUserDropdown from './AuthenticatedUserDropdown';\nimport messages from './messages';\nimport getCourseLogoOrg from './data/api';\nimport LanguageSelector from '../LanguageSelector';\n\nconst LinkedLogo = ({\n href,\n src,\n alt,\n ...attributes\n}) => (\n <a href={href} {...attributes}>\n <img className=\"d-block\" src={src} alt={alt} />\n </a>\n);\n\nLinkedLogo.propTypes = {\n href: PropTypes.string.isRequired,\n src: PropTypes.string.isRequired,\n alt: PropTypes.string.isRequired,\n};\nconst LearningHeader = ({\n courseOrg, courseTitle, intl, showUserDropdown,\n}) => {\n const { authenticatedUser } = useContext(AppContext);\n const [logoOrg, setLogoOrg] = useState(null);\n const enableOrgLogo = getConfig().ENABLE_ORG_LOGO;\n\n useEffect(() => {\n if (courseOrg && enableOrgLogo) {\n getCourseLogoOrg().then((logoOrgUrl) => { setLogoOrg(logoOrgUrl); });\n }\n }, [courseOrg, enableOrgLogo]);\n\n const headerLogo = (\n <>\n <Responsive maxWidth={769}>\n <
|
|
1
|
+
{"version":3,"file":"LearningHeader.js","names":["React","useContext","useEffect","useState","Responsive","PropTypes","getConfig","injectIntl","intlShape","AppContext","AnonymousUserMenu","AuthenticatedUserDropdown","LogoSlot","messages","getCourseLogoOrg","LanguageSelector","LinkedLogo","_ref","href","src","alt","attributes","_objectWithoutProperties","_excluded","createElement","_extends","className","propTypes","string","isRequired","LearningHeader","_ref2","courseOrg","courseTitle","intl","showUserDropdown","_useContext","authenticatedUser","_useState","_useState2","_slicedToArray","logoOrg","setLogoOrg","enableOrgLogo","ENABLE_ORG_LOGO","then","logoOrgUrl","headerLogo","Fragment","maxWidth","concat","LMS_BASE_URL","LOGO_URL_MOBILE","LOGO_URL","SITE_NAME","minWidth","formatMessage","skipNavLink","style","maxHeight","fontSize","ENABLE_HEADER_LANG_SELECTOR","options","JSON","parse","SITE_SUPPORTED_LANGUAGES","compact","username","bool","defaultProps"],"sources":["../../src/learning-header/LearningHeader.jsx"],"sourcesContent":["import React, { useContext, useEffect, useState } from 'react';\nimport Responsive from 'react-responsive';\nimport PropTypes from 'prop-types';\nimport { getConfig } from '@edx/frontend-platform';\nimport { injectIntl, intlShape } from '@edx/frontend-platform/i18n';\nimport { AppContext } from '@edx/frontend-platform/react';\n\nimport AnonymousUserMenu from './AnonymousUserMenu';\nimport AuthenticatedUserDropdown from './AuthenticatedUserDropdown';\nimport LogoSlot from '../plugin-slots/LogoSlot';\nimport messages from './messages';\nimport getCourseLogoOrg from './data/api';\nimport LanguageSelector from '../LanguageSelector';\n\nconst LinkedLogo = ({\n href,\n src,\n alt,\n ...attributes\n}) => (\n <a href={href} {...attributes}>\n <img className=\"d-block\" src={src} alt={alt} />\n </a>\n);\n\nLinkedLogo.propTypes = {\n href: PropTypes.string.isRequired,\n src: PropTypes.string.isRequired,\n alt: PropTypes.string.isRequired,\n};\nconst LearningHeader = ({\n courseOrg, courseTitle, intl, showUserDropdown,\n}) => {\n const { authenticatedUser } = useContext(AppContext);\n const [logoOrg, setLogoOrg] = useState(null);\n const enableOrgLogo = getConfig().ENABLE_ORG_LOGO;\n\n useEffect(() => {\n if (courseOrg && enableOrgLogo) {\n getCourseLogoOrg().then((logoOrgUrl) => { setLogoOrg(logoOrgUrl); });\n }\n }, [courseOrg, enableOrgLogo]);\n\n const headerLogo = (\n <>\n <Responsive maxWidth={769}>\n <LogoSlot\n href={`${getConfig().LMS_BASE_URL}/dashboard`}\n src={getConfig().LOGO_URL_MOBILE || getConfig().LOGO_URL}\n alt={getConfig().SITE_NAME}\n />\n </Responsive>\n <Responsive minWidth={769}>\n <LogoSlot\n href={`${getConfig().LMS_BASE_URL}/dashboard`}\n src={getConfig().LOGO_URL}\n alt={getConfig().SITE_NAME}\n />\n </Responsive>\n </>\n );\n\n return (\n <header className=\"learning-header\">\n <a className=\"sr-only sr-only-focusable\" href=\"#main-content\">{intl.formatMessage(messages.skipNavLink)}</a>\n <div className=\"container-xl py-2 d-flex align-items-center justify-content-between\">\n {headerLogo}\n <div className=\"d-none d-md-block flex-grow-1 course-title-lockup\">\n <div className={`d-md-flex ${enableOrgLogo && 'align-items-center justify-content-center'} w-100`}>\n {enableOrgLogo && courseOrg && logoOrg && (\n <img src={logoOrg} alt={`${courseOrg} logo`} style={{ maxHeight: '3rem', maxWidth: '15rem' }} />\n )}\n <span\n className=\"d-inline-block course-title font-weight-semibold ml-3 text-truncate text-left\"\n style={{ fontSize: '1rem' }}\n >\n {courseTitle}\n </span>\n </div>\n </div>\n <div className=\"d-flex align-items-center\">\n {getConfig().ENABLE_HEADER_LANG_SELECTOR && (\n <div className=\"mx-2 d-md-inline-flex\">\n <Responsive maxWidth={1200}>\n <LanguageSelector\n options={JSON.parse(getConfig().SITE_SUPPORTED_LANGUAGES)}\n compact\n authenticatedUser={authenticatedUser}\n />\n </Responsive>\n <Responsive minWidth={1200}>\n <LanguageSelector\n options={JSON.parse(getConfig().SITE_SUPPORTED_LANGUAGES)}\n compact={false}\n authenticatedUser={authenticatedUser}\n />\n </Responsive>\n </div>\n )}\n {showUserDropdown && authenticatedUser && (\n <AuthenticatedUserDropdown\n username={authenticatedUser.username}\n />\n )}\n {showUserDropdown && !authenticatedUser && (\n <AnonymousUserMenu />\n )}\n </div>\n </div>\n </header>\n );\n};\n\nLearningHeader.propTypes = {\n courseOrg: PropTypes.string,\n courseTitle: PropTypes.string,\n intl: intlShape.isRequired,\n showUserDropdown: PropTypes.bool,\n};\n\nLearningHeader.defaultProps = {\n courseOrg: null,\n courseTitle: null,\n showUserDropdown: true,\n};\n\nexport default injectIntl(LearningHeader);\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import PropTypes from 'prop-types';
|
|
3
|
+
var LearningHeaderCourseInfo = function LearningHeaderCourseInfo(_ref) {
|
|
4
|
+
var courseOrg = _ref.courseOrg,
|
|
5
|
+
courseNumber = _ref.courseNumber,
|
|
6
|
+
courseTitle = _ref.courseTitle;
|
|
7
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
8
|
+
style: {
|
|
9
|
+
minWidth: 0
|
|
10
|
+
}
|
|
11
|
+
}, /*#__PURE__*/React.createElement("span", {
|
|
12
|
+
className: "d-block small m-0"
|
|
13
|
+
}, courseOrg, " ", courseNumber), /*#__PURE__*/React.createElement("span", {
|
|
14
|
+
className: "d-block m-0 font-weight-bold course-title"
|
|
15
|
+
}, courseTitle));
|
|
16
|
+
};
|
|
17
|
+
export var courseInfoDataShape = {
|
|
18
|
+
courseOrg: PropTypes.string,
|
|
19
|
+
courseNumber: PropTypes.string,
|
|
20
|
+
courseTitle: PropTypes.string
|
|
21
|
+
};
|
|
22
|
+
LearningHeaderCourseInfo.propTypes = courseInfoDataShape;
|
|
23
|
+
export default LearningHeaderCourseInfo;
|
|
24
|
+
//# sourceMappingURL=LearningHeaderCourseInfo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LearningHeaderCourseInfo.js","names":["React","PropTypes","LearningHeaderCourseInfo","_ref","courseOrg","courseNumber","courseTitle","createElement","style","minWidth","className","courseInfoDataShape","string","propTypes"],"sources":["../../src/learning-header/LearningHeaderCourseInfo.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst LearningHeaderCourseInfo = ({\n courseOrg,\n courseNumber,\n courseTitle,\n}) => (\n <div style={{ minWidth: 0 }}>\n <span className=\"d-block small m-0\">{courseOrg} {courseNumber}</span>\n <span className=\"d-block m-0 font-weight-bold course-title\">{courseTitle}</span>\n </div>\n);\n\nexport const courseInfoDataShape = {\n courseOrg: PropTypes.string,\n courseNumber: PropTypes.string,\n courseTitle: PropTypes.string,\n};\n\nLearningHeaderCourseInfo.propTypes = courseInfoDataShape;\n\nexport default LearningHeaderCourseInfo;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAElC,IAAMC,wBAAwB,GAAG,SAA3BA,wBAAwBA,CAAAC,IAAA;EAAA,IAC5BC,SAAS,GAAAD,IAAA,CAATC,SAAS;IACTC,YAAY,GAAAF,IAAA,CAAZE,YAAY;IACZC,WAAW,GAAAH,IAAA,CAAXG,WAAW;EAAA,oBAEXN,KAAA,CAAAO,aAAA;IAAKC,KAAK,EAAE;MAAEC,QAAQ,EAAE;IAAE;EAAE,gBAC1BT,KAAA,CAAAO,aAAA;IAAMG,SAAS,EAAC;EAAmB,GAAEN,SAAS,EAAC,GAAC,EAACC,YAAmB,CAAC,eACrEL,KAAA,CAAAO,aAAA;IAAMG,SAAS,EAAC;EAA2C,GAAEJ,WAAkB,CAC5E,CAAC;AAAA,CACP;AAED,OAAO,IAAMK,mBAAmB,GAAG;EACjCP,SAAS,EAAEH,SAAS,CAACW,MAAM;EAC3BP,YAAY,EAAEJ,SAAS,CAACW,MAAM;EAC9BN,WAAW,EAAEL,SAAS,CAACW;AACzB,CAAC;AAEDV,wBAAwB,CAACW,SAAS,GAAGF,mBAAmB;AAExD,eAAeT,wBAAwB","ignoreList":[]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { getConfig } from '@edx/frontend-platform';
|
|
3
|
+
import { useIntl } from '@edx/frontend-platform/i18n';
|
|
4
|
+
import messages from './messages';
|
|
5
|
+
var LearningHeaderHelpLink = function LearningHeaderHelpLink() {
|
|
6
|
+
var intl = useIntl();
|
|
7
|
+
return /*#__PURE__*/React.createElement("a", {
|
|
8
|
+
className: "text-gray-700",
|
|
9
|
+
href: "".concat(getConfig().SUPPORT_URL)
|
|
10
|
+
}, intl.formatMessage(messages.help));
|
|
11
|
+
};
|
|
12
|
+
export default LearningHeaderHelpLink;
|
|
13
|
+
//# sourceMappingURL=LearningHeaderHelpLink.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LearningHeaderHelpLink.js","names":["React","getConfig","useIntl","messages","LearningHeaderHelpLink","intl","createElement","className","href","concat","SUPPORT_URL","formatMessage","help"],"sources":["../../src/learning-header/LearningHeaderHelpLink.jsx"],"sourcesContent":["import React from 'react';\n\nimport { getConfig } from '@edx/frontend-platform';\nimport { useIntl } from '@edx/frontend-platform/i18n';\nimport messages from './messages';\n\nconst LearningHeaderHelpLink = () => {\n const intl = useIntl();\n return (\n <a className=\"text-gray-700\" href={`${getConfig().SUPPORT_URL}`}>{intl.formatMessage(messages.help)}</a>\n );\n};\n\nexport default LearningHeaderHelpLink;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAASC,SAAS,QAAQ,wBAAwB;AAClD,SAASC,OAAO,QAAQ,6BAA6B;AACrD,OAAOC,QAAQ,MAAM,YAAY;AAEjC,IAAMC,sBAAsB,GAAG,SAAzBA,sBAAsBA,CAAA,EAAS;EACnC,IAAMC,IAAI,GAAGH,OAAO,CAAC,CAAC;EACtB,oBACEF,KAAA,CAAAM,aAAA;IAAGC,SAAS,EAAC,eAAe;IAACC,IAAI,KAAAC,MAAA,CAAKR,SAAS,CAAC,CAAC,CAACS,WAAW;EAAG,GAAEL,IAAI,CAACM,aAAa,CAACR,QAAQ,CAACS,IAAI,CAAK,CAAC;AAE5G,CAAC;AAED,eAAeR,sBAAsB","ignoreList":[]}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import PropTypes from 'prop-types';
|
|
3
|
+
import { Dropdown } from '@openedx/paragon';
|
|
4
|
+
var LearningHeaderUserMenuItems = function LearningHeaderUserMenuItems(_ref) {
|
|
5
|
+
var items = _ref.items;
|
|
6
|
+
return items.map(function (item) {
|
|
7
|
+
return /*#__PURE__*/React.createElement(Dropdown.Item, {
|
|
8
|
+
href: item.href
|
|
9
|
+
}, item.message);
|
|
10
|
+
});
|
|
11
|
+
};
|
|
12
|
+
export var learningHeaderUserMenuDataShape = {
|
|
13
|
+
items: PropTypes.arrayOf(PropTypes.shape({
|
|
14
|
+
message: PropTypes.string,
|
|
15
|
+
href: PropTypes.string
|
|
16
|
+
}))
|
|
17
|
+
};
|
|
18
|
+
LearningHeaderUserMenuItems.propTypes = learningHeaderUserMenuDataShape;
|
|
19
|
+
export default LearningHeaderUserMenuItems;
|
|
20
|
+
//# sourceMappingURL=LearningHeaderUserMenuItems.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LearningHeaderUserMenuItems.js","names":["React","PropTypes","Dropdown","LearningHeaderUserMenuItems","_ref","items","map","item","createElement","Item","href","message","learningHeaderUserMenuDataShape","arrayOf","shape","string","propTypes"],"sources":["../../src/learning-header/LearningHeaderUserMenuItems.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { Dropdown } from '@openedx/paragon';\n\nconst LearningHeaderUserMenuItems = ({ items }) => items.map((item) => (\n <Dropdown.Item href={item.href}>\n {item.message}\n </Dropdown.Item>\n));\n\nexport const learningHeaderUserMenuDataShape = {\n items: PropTypes.arrayOf(PropTypes.shape({\n message: PropTypes.string,\n href: PropTypes.string,\n })),\n};\n\nLearningHeaderUserMenuItems.propTypes = learningHeaderUserMenuDataShape;\n\nexport default LearningHeaderUserMenuItems;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAElC,SAASC,QAAQ,QAAQ,kBAAkB;AAE3C,IAAMC,2BAA2B,GAAG,SAA9BA,2BAA2BA,CAAAC,IAAA;EAAA,IAAMC,KAAK,GAAAD,IAAA,CAALC,KAAK;EAAA,OAAOA,KAAK,CAACC,GAAG,CAAC,UAACC,IAAI;IAAA,oBAChEP,KAAA,CAAAQ,aAAA,CAACN,QAAQ,CAACO,IAAI;MAACC,IAAI,EAAEH,IAAI,CAACG;IAAK,GAC5BH,IAAI,CAACI,OACO,CAAC;EAAA,CACjB,CAAC;AAAA;AAEF,OAAO,IAAMC,+BAA+B,GAAG;EAC7CP,KAAK,EAAEJ,SAAS,CAACY,OAAO,CAACZ,SAAS,CAACa,KAAK,CAAC;IACvCH,OAAO,EAAEV,SAAS,CAACc,MAAM;IACzBL,IAAI,EAAET,SAAS,CAACc;EAClB,CAAC,CAAC;AACJ,CAAC;AAEDZ,2BAA2B,CAACa,SAAS,GAAGJ,+BAA+B;AAEvE,eAAeT,2BAA2B","ignoreList":[]}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import PropTypes from 'prop-types';
|
|
3
|
+
import { Button } from '@openedx/paragon';
|
|
4
|
+
var LearningLoggedOutButtons = function LearningLoggedOutButtons(_ref) {
|
|
5
|
+
var buttonsInfo = _ref.buttonsInfo;
|
|
6
|
+
return buttonsInfo.map(function (buttonInfo) {
|
|
7
|
+
var _buttonInfo$variant;
|
|
8
|
+
return /*#__PURE__*/React.createElement(Button, {
|
|
9
|
+
className: "ml-3",
|
|
10
|
+
variant: (_buttonInfo$variant = buttonInfo.variant) !== null && _buttonInfo$variant !== void 0 ? _buttonInfo$variant : 'outline-primary',
|
|
11
|
+
href: buttonInfo.href
|
|
12
|
+
}, buttonInfo.message);
|
|
13
|
+
});
|
|
14
|
+
};
|
|
15
|
+
export var learningHeaderLoggedOutItemsDataShape = {
|
|
16
|
+
buttonsInfo: PropTypes.arrayOf(PropTypes.shape({
|
|
17
|
+
message: PropTypes.string,
|
|
18
|
+
href: PropTypes.string,
|
|
19
|
+
variant: PropTypes.string
|
|
20
|
+
}))
|
|
21
|
+
};
|
|
22
|
+
LearningLoggedOutButtons.propTypes = learningHeaderLoggedOutItemsDataShape;
|
|
23
|
+
export default LearningLoggedOutButtons;
|
|
24
|
+
//# sourceMappingURL=LearningLoggedOutButtons.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LearningLoggedOutButtons.js","names":["React","PropTypes","Button","LearningLoggedOutButtons","_ref","buttonsInfo","map","buttonInfo","_buttonInfo$variant","createElement","className","variant","href","message","learningHeaderLoggedOutItemsDataShape","arrayOf","shape","string","propTypes"],"sources":["../../src/learning-header/LearningLoggedOutButtons.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { Button } from '@openedx/paragon';\n\nconst LearningLoggedOutButtons = ({ buttonsInfo }) => buttonsInfo.map(buttonInfo => (\n <Button\n className=\"ml-3\"\n variant={buttonInfo.variant ?? 'outline-primary'}\n href={buttonInfo.href}\n >\n {buttonInfo.message}\n </Button>\n));\n\nexport const learningHeaderLoggedOutItemsDataShape = {\n buttonsInfo: PropTypes.arrayOf(PropTypes.shape({\n message: PropTypes.string,\n href: PropTypes.string,\n variant: PropTypes.string,\n })),\n};\n\nLearningLoggedOutButtons.propTypes = learningHeaderLoggedOutItemsDataShape;\n\nexport default LearningLoggedOutButtons;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAElC,SAASC,MAAM,QAAQ,kBAAkB;AAEzC,IAAMC,wBAAwB,GAAG,SAA3BA,wBAAwBA,CAAAC,IAAA;EAAA,IAAMC,WAAW,GAAAD,IAAA,CAAXC,WAAW;EAAA,OAAOA,WAAW,CAACC,GAAG,CAAC,UAAAC,UAAU;IAAA,IAAAC,mBAAA;IAAA,oBAC9ER,KAAA,CAAAS,aAAA,CAACP,MAAM;MACLQ,SAAS,EAAC,MAAM;MAChBC,OAAO,GAAAH,mBAAA,GAAED,UAAU,CAACI,OAAO,cAAAH,mBAAA,cAAAA,mBAAA,GAAI,iBAAkB;MACjDI,IAAI,EAAEL,UAAU,CAACK;IAAK,GAErBL,UAAU,CAACM,OACN,CAAC;EAAA,CACV,CAAC;AAAA;AAEF,OAAO,IAAMC,qCAAqC,GAAG;EACnDT,WAAW,EAAEJ,SAAS,CAACc,OAAO,CAACd,SAAS,CAACe,KAAK,CAAC;IAC7CH,OAAO,EAAEZ,SAAS,CAACgB,MAAM;IACzBL,IAAI,EAAEX,SAAS,CAACgB,MAAM;IACtBN,OAAO,EAAEV,SAAS,CAACgB;EACrB,CAAC,CAAC;AACJ,CAAC;AAEDd,wBAAwB,CAACe,SAAS,GAAGJ,qCAAqC;AAE1E,eAAeX,wBAAwB","ignoreList":[]}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
|
3
|
+
import PropTypes from 'prop-types';
|
|
4
|
+
var LearningUserMenuToggle = function LearningUserMenuToggle(_ref) {
|
|
5
|
+
var label = _ref.label,
|
|
6
|
+
icon = _ref.icon;
|
|
7
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(FontAwesomeIcon, {
|
|
8
|
+
icon: icon,
|
|
9
|
+
className: "d-md-none",
|
|
10
|
+
size: "lg"
|
|
11
|
+
}), /*#__PURE__*/React.createElement("span", {
|
|
12
|
+
"data-hj-suppress": true,
|
|
13
|
+
className: "d-none d-md-inline"
|
|
14
|
+
}, label));
|
|
15
|
+
};
|
|
16
|
+
export var LearningUserMenuTogglePropTypes = {
|
|
17
|
+
label: PropTypes.string.isRequired,
|
|
18
|
+
// Full shape available by examining @fortawesome/fontawesome-common-types/index.d.ts.
|
|
19
|
+
icon: PropTypes.shape({
|
|
20
|
+
prefix: PropTypes.string.isRequired,
|
|
21
|
+
iconName: PropTypes.string.isRequired
|
|
22
|
+
}).isRequired
|
|
23
|
+
};
|
|
24
|
+
LearningUserMenuToggle.propTypes = LearningUserMenuTogglePropTypes;
|
|
25
|
+
export default LearningUserMenuToggle;
|
|
26
|
+
//# sourceMappingURL=LearningUserMenuToggle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LearningUserMenuToggle.js","names":["React","FontAwesomeIcon","PropTypes","LearningUserMenuToggle","_ref","label","icon","createElement","Fragment","className","size","LearningUserMenuTogglePropTypes","string","isRequired","shape","prefix","iconName","propTypes"],"sources":["../../src/learning-header/LearningUserMenuToggle.jsx"],"sourcesContent":["import React from 'react';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport PropTypes from 'prop-types';\n\nconst LearningUserMenuToggle = ({\n label,\n icon,\n}) => (\n <>\n <FontAwesomeIcon icon={icon} className=\"d-md-none\" size=\"lg\" />\n <span data-hj-suppress className=\"d-none d-md-inline\">\n {label}\n </span>\n </>\n);\n\nexport const LearningUserMenuTogglePropTypes = {\n label: PropTypes.string.isRequired,\n // Full shape available by examining @fortawesome/fontawesome-common-types/index.d.ts.\n icon: PropTypes.shape({\n prefix: PropTypes.string.isRequired,\n iconName: PropTypes.string.isRequired,\n }).isRequired,\n};\n\nLearningUserMenuToggle.propTypes = LearningUserMenuTogglePropTypes;\n\nexport default LearningUserMenuToggle;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,eAAe,QAAQ,gCAAgC;AAChE,OAAOC,SAAS,MAAM,YAAY;AAElC,IAAMC,sBAAsB,GAAG,SAAzBA,sBAAsBA,CAAAC,IAAA;EAAA,IAC1BC,KAAK,GAAAD,IAAA,CAALC,KAAK;IACLC,IAAI,GAAAF,IAAA,CAAJE,IAAI;EAAA,oBAEJN,KAAA,CAAAO,aAAA,CAAAP,KAAA,CAAAQ,QAAA,qBACER,KAAA,CAAAO,aAAA,CAACN,eAAe;IAACK,IAAI,EAAEA,IAAK;IAACG,SAAS,EAAC,WAAW;IAACC,IAAI,EAAC;EAAI,CAAE,CAAC,eAC/DV,KAAA,CAAAO,aAAA;IAAM,wBAAgB;IAACE,SAAS,EAAC;EAAoB,GAClDJ,KACG,CACN,CAAC;AAAA,CACJ;AAED,OAAO,IAAMM,+BAA+B,GAAG;EAC7CN,KAAK,EAAEH,SAAS,CAACU,MAAM,CAACC,UAAU;EAClC;EACAP,IAAI,EAAEJ,SAAS,CAACY,KAAK,CAAC;IACpBC,MAAM,EAAEb,SAAS,CAACU,MAAM,CAACC,UAAU;IACnCG,QAAQ,EAAEd,SAAS,CAACU,MAAM,CAACC;EAC7B,CAAC,CAAC,CAACA;AACL,CAAC;AAEDV,sBAAsB,CAACc,SAAS,GAAGN,+BAA+B;AAElE,eAAeR,sBAAsB","ignoreList":[]}
|