l-min-components 1.0.370 → 1.0.377

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "l-min-components",
3
- "version": "1.0.370",
3
+ "version": "1.0.377",
4
4
  "type": "module",
5
5
  "files": [
6
6
  "src/assets",
@@ -20,6 +20,7 @@ import {
20
20
  SideMenu,
21
21
  } from "../";
22
22
  import { leftNavMenu, user, sideMenuOptions } from "../../hooks/leftNavMenu";
23
+ import InstructorAccountSwitcher from "../instructorAccountSwitcher";
23
24
  // import SideMenu from "../sideBar/sideMenu";
24
25
 
25
26
  const AppMainLayout = () => {
@@ -121,6 +122,9 @@ const AppMainLayout = () => {
121
122
  )}
122
123
  </LeftLayout>
123
124
  <CenterLayout isOpen={isOpen} style={centerLayoutStyle}>
125
+ {window.location.pathname.includes("instructor") && (
126
+ <InstructorAccountSwitcher />
127
+ )}
124
128
  <Outlet />
125
129
  </CenterLayout>
126
130
 
@@ -0,0 +1,11 @@
1
+ const LessonIcon = () => {
2
+ return(
3
+ <svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
4
+ <path d="M13.2047 10.3862V3.3902C13.2047 2.69466 12.6367 2.1788 11.9469 2.23676H11.9121C10.6949 2.34109 8.84595 2.96128 7.81423 3.61046L7.7157 3.67421C7.54761 3.77855 7.26939 3.77855 7.1013 3.67421L6.9564 3.58727C5.92467 2.94389 4.08148 2.3295 2.86428 2.23096C2.17454 2.173 1.6123 2.69466 1.6123 3.3844V10.3862C1.6123 10.9426 2.06441 11.4643 2.62084 11.5339L2.78893 11.557C4.04671 11.7251 5.98843 12.3627 7.1013 12.9713L7.12448 12.9829C7.28098 13.0698 7.53022 13.0698 7.68092 12.9829C8.79379 12.3685 10.7413 11.7251 12.0049 11.557L12.1962 11.5339C12.7526 11.4643 13.2047 10.9426 13.2047 10.3862Z" stroke="white" stroke-width="1.00467" stroke-linecap="round" stroke-linejoin="round"/>
5
+ <path d="M7.4082 3.86523V12.5595" stroke="white" stroke-width="1.00467" stroke-linecap="round" stroke-linejoin="round"/>
6
+ <path d="M4.94477 5.60352H3.64062" stroke="white" stroke-width="1.00467" stroke-linecap="round" stroke-linejoin="round"/>
7
+ <path d="M5.37948 7.34375H3.64062" stroke="white" stroke-width="1.00467" stroke-linecap="round" stroke-linejoin="round"/>
8
+ </svg>
9
+ )
10
+ }
11
+ export default LessonIcon
@@ -0,0 +1,11 @@
1
+ const LessonFlag = () => {
2
+ return(
3
+ <svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
4
+ <path d="M5.51758 5.92969C6.5493 6.30644 7.67376 6.30644 8.70548 5.92969" stroke="white" stroke-width="0.772826" stroke-linecap="round" stroke-linejoin="round"/>
5
+ <path d="M9.90592 1.84375H4.31839C3.0838 1.84375 2.08105 2.85229 2.08105 4.08108V12.2479C2.08105 13.2912 2.82876 13.7317 3.74456 13.2275L6.5731 11.6567C6.87451 11.4886 7.36139 11.4886 7.65699 11.6567L10.4855 13.2275C11.4013 13.7375 12.149 13.297 12.149 12.2479V4.08108C12.1432 2.85229 11.1405 1.84375 9.90592 1.84375Z" stroke="white" stroke-width="1.15924" stroke-linecap="round" stroke-linejoin="round"/>
6
+ <path d="M9.90592 1.84375H4.31839C3.0838 1.84375 2.08105 2.85229 2.08105 4.08108V12.2479C2.08105 13.2912 2.82876 13.7317 3.74456 13.2275L6.5731 11.6567C6.87451 11.4886 7.36139 11.4886 7.65699 11.6567L10.4855 13.2275C11.4013 13.7375 12.149 13.297 12.149 12.2479V4.08108C12.1432 2.85229 11.1405 1.84375 9.90592 1.84375Z" stroke="white" stroke-width="0.772826" stroke-linecap="round" stroke-linejoin="round"/>
7
+ </svg>
8
+ )
9
+ }
10
+
11
+ export default LessonFlag;
@@ -0,0 +1,13 @@
1
+ const SliderIcon = () => {
2
+ return(
3
+ <svg width="53" height="5" viewBox="0 0 53 5" fill="none" xmlns="http://www.w3.org/2000/svg">
4
+ <rect x="0.871094" y="0.384766" width="19.3206" height="3.86413" rx="1.93206" fill="#00C2C2"/>
5
+ <rect x="23.2832" y="0.384766" width="7.72826" height="3.86413" rx="1.93206" fill="#DFE6E6"/>
6
+ <rect x="34.1025" y="0.384766" width="7.72826" height="3.86413" rx="1.93206" fill="#DFE6E6"/>
7
+ <rect x="44.9219" y="0.384766" width="7.72826" height="3.86413" rx="1.93206" fill="#DFE6E6"/>
8
+ </svg>
9
+ )
10
+ }
11
+
12
+ export default SliderIcon;
13
+
@@ -11,6 +11,7 @@ const UpgradeComponent = () => {
11
11
  return (
12
12
 
13
13
  <Upgrade>
14
+ <div className="container">
14
15
  <img src={UpgradeIcon} alt="upgrad lock" />
15
16
  <p>
16
17
  Upgrade to <span>ENTERPRISE</span> for more features.
@@ -21,12 +22,15 @@ const UpgradeComponent = () => {
21
22
  styles={{
22
23
  marginTop: "12px",
23
24
  fontSize: "16px",
24
- width: "200px",
25
+ width: "171px",
25
26
  height: "38.641px",
26
27
  gap: "8px",
27
28
  padding: "15.457px 30.913px",
28
29
  }}
29
30
  />
31
+
32
+ </div>
33
+
30
34
  </Upgrade>
31
35
  );
32
36
  };
@@ -0,0 +1,101 @@
1
+ import React from "react";
2
+ import {
3
+ BannerWrapper,
4
+ InstructorContainer,
5
+ NewLanguage,
6
+ RecentAdded,
7
+ Container,
8
+ Upgrade,
9
+ Users,
10
+ UploadProgressContainer
11
+ } from "../styles";
12
+ import Button from "../../button";
13
+ import CircularProgressBar from "../components/progressBar";
14
+ import UpgradeIcon from "../assets/Feature.png";
15
+ import { UploadProgress } from "../assets/uploadProgressIcon";
16
+ import ProgressBar from "../../progressBar";
17
+ import UpgradeComponent from "./upgrade";
18
+ import LessonIcon from "../assets/lession";
19
+ import LessonFlag from "../assets/lessonflag";
20
+ import Ellipse from "../assets/Ellipse.png";
21
+ import Ellipse2 from "../assets/Ellipse2.png";
22
+ import Ellipse3 from "../assets/Ellipse3.png";
23
+ import Ellipse4 from "../assets/Ellipse4.png";
24
+ import SliderIcon from "../assets/slider";
25
+
26
+ /**
27
+ * @param {{
28
+ * CourseClick: function,
29
+ * UpgradeClick: function,
30
+ * }} props - properties of graph Component
31
+ *
32
+ */
33
+
34
+ const EnterpriseRightBar = ({UpgradeClick, CourseClick}) => {
35
+
36
+ return (
37
+ <InstructorContainer>
38
+ <BannerWrapper>
39
+ <div className="head_instructor head_enterprise">
40
+ <h3>Best Course</h3>
41
+ </div>
42
+ <NewLanguage>
43
+ <div className="top_section">
44
+ <div className="lession_cont">
45
+ <LessonIcon />
46
+ <p> 9 lessions</p>
47
+ </div>
48
+ <div className="flag_cont">
49
+ <LessonFlag />
50
+
51
+ </div>
52
+ </div>
53
+
54
+ <div className="buttom_section">
55
+ <p>French for Beginners</p>
56
+ </div>
57
+ </NewLanguage>
58
+ <SliderIcon />
59
+ </BannerWrapper>
60
+ <RecentAdded>
61
+ <div className="top_area">
62
+ <h5>Recently added</h5>
63
+ <p>See all</p>
64
+ </div>
65
+ <div className="users_list">
66
+ <div className="user">
67
+ <img src={Ellipse} alt="user" />
68
+ </div>
69
+ <div className="user">
70
+ <img src={Ellipse2} alt="user" />
71
+ </div>
72
+ <div className="user">
73
+ <img src={Ellipse3} alt="user" />
74
+ </div>
75
+ <div className="user">
76
+ <img src={Ellipse4} alt="user" />
77
+ </div>
78
+ </div>
79
+ <Button
80
+ type="primary"
81
+ text="Create Course"
82
+ styles={{
83
+ marginTop: "29px",
84
+ fontSize: "16px",
85
+ width: "203px",
86
+ gap: "8px",
87
+ padding: "20px 6px",
88
+ height: "40px",
89
+ boxShadow: "0px 10px 20px 0px rgba(254, 191, 16, 0.25)",
90
+ }}
91
+ onClick={CourseClick}
92
+ />
93
+ </RecentAdded>
94
+
95
+ <UpgradeComponent UpgradeClick={UpgradeClick} />
96
+
97
+ </InstructorContainer>
98
+ );
99
+ };
100
+
101
+ export default EnterpriseRightBar;
@@ -0,0 +1,43 @@
1
+ import React from "react";
2
+ import {
3
+ Upgrade,
4
+ } from "../styles";
5
+ import Button from "../../button";
6
+ import UpgradeIcon from "../assets/Feature.png";
7
+ import EnterpriseUpgrade from "../assets/enterpriseUpgrade.png"
8
+
9
+
10
+ const UpgradeComponent = ({UpgradeClick}) => {
11
+
12
+ return (
13
+
14
+ <Upgrade>
15
+ <div className="container">
16
+ <img src={EnterpriseUpgrade} alt="upgrad box" />
17
+ <div className="upgrade_text">
18
+ <p>You are running out of slot?</p>
19
+ </div>
20
+ <p className="reminder">
21
+ 45 slots remaining out of 50 slots for bronze package
22
+ </p>
23
+ <Button
24
+ type="primary"
25
+ text="Upgrade"
26
+ styles={{
27
+ marginTop: "12px",
28
+ fontSize: "16px",
29
+ width: "171px",
30
+ height: "38.641px",
31
+ gap: "8px",
32
+ padding: "15.457px 30.913px",
33
+ }}
34
+ onClick={UpgradeClick}
35
+ />
36
+
37
+ </div>
38
+
39
+ </Upgrade>
40
+ );
41
+ };
42
+
43
+ export default UpgradeComponent;
@@ -0,0 +1,101 @@
1
+ import React from "react";
2
+ import {
3
+ BannerWrapper,
4
+ InstructorContainer,
5
+ NewLanguage,
6
+ RecentAdded,
7
+ Container,
8
+ Upgrade,
9
+ Users,
10
+ UploadProgressContainer
11
+ } from "./styles";
12
+ import Button from "../button";
13
+ import CircularProgressBar from "./components/progressBar";
14
+ import UpgradeIcon from "./assets/Feature.png";
15
+ import { UploadProgress } from "./assets/uploadProgressIcon";
16
+ import ProgressBar from "../progressBar";
17
+ import UpgradeComponent from "./components/ugradeLock";
18
+ import LessonIcon from "./assets/lession";
19
+ import LessonFlag from "./assets/lessonflag";
20
+ import Ellipse from "./assets/Ellipse.png";
21
+ import Ellipse2 from "./assets/Ellipse2.png";
22
+ import Ellipse3 from "./assets/Ellipse3.png";
23
+ import Ellipse4 from "./assets/Ellipse4.png";
24
+ import SliderIcon from "./assets/slider";
25
+
26
+
27
+ /**
28
+ * @param {{
29
+ * onClick: function,
30
+ * }} props - properties of graph Component
31
+ *
32
+ */
33
+
34
+ const InstructorRightBar = (props) => {
35
+
36
+ return (
37
+ <InstructorContainer>
38
+ <BannerWrapper>
39
+ <div className="head_instructor">
40
+ <h3>Learn a new language today</h3>
41
+ </div>
42
+ <NewLanguage>
43
+ <div className="top_section">
44
+ <div className="lession_cont">
45
+ <LessonIcon />
46
+ <p> 9 lessions</p>
47
+ </div>
48
+ <div className="flag_cont">
49
+ <LessonFlag />
50
+
51
+ </div>
52
+ </div>
53
+
54
+ <div className="buttom_section">
55
+ <p>French for Beginners</p>
56
+ </div>
57
+ </NewLanguage>
58
+ <SliderIcon />
59
+ <Button
60
+ type="primary"
61
+ text="Create Personal Account"
62
+ styles={{
63
+ marginTop: "29px",
64
+ fontSize: "16px",
65
+ width: "203px",
66
+ gap: "8px",
67
+ padding: "20px 6px",
68
+ height: "40px",
69
+ boxShadow: "0px 10px 20px 0px rgba(254, 191, 16, 0.25)",
70
+ }}
71
+ onClick={props.onClick}
72
+ />
73
+ </BannerWrapper>
74
+ <RecentAdded>
75
+ <div className="top_area">
76
+ <h5>Recently added</h5>
77
+ <p>See all</p>
78
+ </div>
79
+ <div className="users_list">
80
+ <div className="user">
81
+ <img src={Ellipse} alt="user" />
82
+ </div>
83
+ <div className="user">
84
+ <img src={Ellipse2} alt="user" />
85
+ </div>
86
+ <div className="user">
87
+ <img src={Ellipse3} alt="user" />
88
+ </div>
89
+ <div className="user">
90
+ <img src={Ellipse4} alt="user" />
91
+ </div>
92
+ </div>
93
+
94
+ </RecentAdded>
95
+ <UpgradeComponent />
96
+
97
+ </InstructorContainer>
98
+ );
99
+ };
100
+
101
+ export default InstructorRightBar;
@@ -1,6 +1,21 @@
1
1
  import styled from "styled-components";
2
2
  import { FaArrowRight } from "react-icons/fa";
3
3
  import BannerImg from "../assets/Vector19.png"
4
+ import InstructorBanner from "../assets/newLanguage.png";
5
+ import UpgradeIcon from "../assets/Feature.png";
6
+
7
+
8
+ export const InstructorContainer = styled.div`
9
+ background: #fff;
10
+ max-width: 232px;
11
+ display: flex;
12
+ /* align-items: center; */
13
+ text-align: center;
14
+ flex-direction: column;
15
+ padding: 10px 0px;
16
+ border-radius: 30px;
17
+
18
+ `;
4
19
 
5
20
  export const Container = styled.div`
6
21
  background-color: transparent;
@@ -39,6 +54,40 @@ export const BannerWrapper = styled.div`
39
54
  margin-bottom: 20px;
40
55
  width: 100%;
41
56
 
57
+ .head_instructor{
58
+ width: 100%;
59
+ h3{
60
+ color: var(--Neutral-90, #313333);
61
+ font-family: Nunito;
62
+ font-size: 13.911px;
63
+ font-style: normal;
64
+ font-weight: 700;
65
+ line-height: 15.457px; /* 111.111% */
66
+ letter-spacing: 0.278px;
67
+ }
68
+ }
69
+
70
+ .head_enterprise{
71
+ text-align: left;
72
+ color: var(--Neutral-90, #313333);
73
+ font-family: Nunito;
74
+ font-size: 13.911px;
75
+ font-style: normal;
76
+ font-weight: 700;
77
+ line-height: 15.457px; /* 111.111% */
78
+ letter-spacing: 0.278px;
79
+
80
+ h3{
81
+ color: var(--Neutral-90, #313333);
82
+ font-family: Nunito;
83
+ font-size: 13.911px;
84
+ font-style: normal;
85
+ font-weight: 700;
86
+ line-height: 15.457px; /* 111.111% */
87
+ letter-spacing: 0.278px;
88
+ }
89
+ }
90
+
42
91
  .head{
43
92
  display: flex;
44
93
  align-items: center;
@@ -126,17 +175,61 @@ export const AbsoluteSVG = styled.svg`
126
175
 
127
176
 
128
177
  export const Upgrade = styled.div`
129
- background-color: #fff;
178
+ padding: 10px;
179
+ margin-top: 20px;
180
+
181
+ .container{
182
+ /* background-color: #fff; */
183
+ border-radius: 23.185px;
184
+ background: var(--Neutral-10, #F5F7F7);
130
185
  width: 100%;
131
186
  max-width: 232px;
132
- border-radius: 36px;
133
- padding: 30px 16px 21px;
134
- overflow: hidden;
135
- border-radius: 30px;
187
+ padding: 10px 0px;
188
+ /* border-radius: 30px; */
136
189
  display: flex;
137
190
  flex-direction: column;
138
191
  justify-content: center;
139
192
  align-items: center;
193
+ margin-top: 20px;
194
+
195
+ img{
196
+ object-fit: cover;
197
+ margin-top: -27%;
198
+ }
199
+
200
+ .upgrade_text{
201
+ background: rgba(0,194,194,0.1);
202
+ border-radius: 5px;
203
+ padding: 5px;
204
+ height: 32px;
205
+ width: 100%;
206
+ margin-bottom: 10px;
207
+ margin-top: -10px;
208
+ display: flex;
209
+ justify-content: center;
210
+ align-items: center;
211
+
212
+ p{
213
+ color: var(--Neutral-90, #313333);
214
+ text-align: center;
215
+ font-family: Nunito;
216
+ font-size: 14px;
217
+ font-style: normal;
218
+ font-weight: 500;
219
+ width: 100%;
220
+
221
+ }
222
+ }
223
+
224
+ .reminder{
225
+ color: var(--Neutral-70, #636666);
226
+ text-align: center;
227
+ font-family: Nunito;
228
+ font-size: 14px;
229
+ font-style: normal;
230
+ font-weight: 400;
231
+ width: 100%;
232
+ }
140
233
 
141
234
  p{
142
235
  color: var(--neutral-80, #4A4D4D);
@@ -149,7 +242,7 @@ export const Upgrade = styled.div`
149
242
  letter-spacing: 0.773px;
150
243
  width: 70%;
151
244
  text-align: center;
152
- margin-top: 10px;
245
+ margin-top: 0px;
153
246
 
154
247
  span{
155
248
  color: var(--primary-color-main, #FEBF10);
@@ -161,7 +254,7 @@ export const Upgrade = styled.div`
161
254
  letter-spacing: 0.773px;
162
255
  }
163
256
  }
164
-
257
+ }
165
258
  `;
166
259
 
167
260
  export const Users = styled.div`
@@ -290,4 +383,140 @@ export const UploadProgressContainer = styled.div`
290
383
  }
291
384
  }
292
385
 
293
- `
386
+ `
387
+
388
+ export const NewLanguage = styled.div`
389
+ background-image: url(${InstructorBanner});
390
+ background-size: cover;
391
+ background-repeat: no-repeat;
392
+ margin-top: 10px;
393
+ width: 100%;
394
+ height: 126.743px;
395
+ display: flex;
396
+ flex-direction: column;
397
+ justify-content: start;
398
+ gap: 60px;
399
+ padding: 10px;
400
+ margin-bottom: 10px;
401
+
402
+ .top_section{
403
+ display: flex;
404
+ justify-content: space-between;
405
+ align-items: center;
406
+
407
+
408
+ .lession_cont{
409
+ display: flex;
410
+ align-items: center;
411
+ border-radius: 6.183px;
412
+ background: rgba(12, 13, 13, 0.1);
413
+ padding: 3px;
414
+
415
+ p{
416
+ color: var(--white, #FFF);
417
+ font-family: Nunito;
418
+ font-size: 10.82px;
419
+ font-style: normal;
420
+ font-weight: 700;
421
+ line-height: 17.002px; /* 157.143% */
422
+ letter-spacing: 0.216px;
423
+ }
424
+
425
+ svg{
426
+ margin-right: 4px;;
427
+ }
428
+ }
429
+
430
+ .flag_cont{
431
+ border-radius: 6.183px;
432
+ background: rgba(12, 13, 13, 0.1);
433
+ padding: 3px;
434
+ display: flex;
435
+ justify-content: center;
436
+ align-items: center;
437
+ }
438
+ }
439
+
440
+ .buttom_section{
441
+ display: flex;
442
+ justify-content: start;
443
+
444
+ p{
445
+ color: var(--white, #FFF);
446
+ font-family: Nunito;
447
+ font-size: 14.911px;
448
+ font-style: normal;
449
+ font-weight: 700;
450
+ line-height: 10.82px; /* 77.778% */
451
+ letter-spacing: 0.278px;
452
+ }
453
+ }
454
+ `
455
+
456
+ export const RecentAdded = styled.div`
457
+ display: flex;
458
+ flex-direction: column;
459
+ padding: 10px 20px;
460
+ margin-top: -30px;
461
+ .top_area{
462
+ display: flex;
463
+ justify-content: space-between;
464
+ align-items: center;
465
+ margin-bottom: 10px;
466
+
467
+ h5{
468
+ color: var(--Neutral-90, #313333);
469
+ font-family: Nunito;
470
+ font-size: 13.911px;
471
+ font-style: normal;
472
+ font-weight: 700;
473
+ line-height: 15.457px; /* 111.111% */
474
+ letter-spacing: 0.278px;
475
+ }
476
+
477
+ p{
478
+ color: var(--Primary-color-main, #FEBF10);
479
+ font-family: Nunito;
480
+ font-size: 12px;
481
+ font-style: normal;
482
+ font-weight: 700;
483
+ line-height: 15.457px; /* 128.804% */
484
+ letter-spacing: 0.24px;
485
+ }
486
+ }
487
+ .users_list {
488
+ display: flex;
489
+ gap: 12px;
490
+ }
491
+
492
+ .user {
493
+ position: relative; /* Make the parent container relative */
494
+ width: 40px;
495
+ height: 40px;
496
+ }
497
+
498
+ .user::before {
499
+ content: "";
500
+ position: absolute;
501
+ width: 8px;
502
+ height: 8px;
503
+ background-color: #30D468;
504
+ border-radius: 50%;
505
+ bottom: 0;
506
+ right: 0;
507
+ }
508
+
509
+ .user:nth-child(2)::before {
510
+ background-color: #F39B33;
511
+ }
512
+
513
+ .user:nth-child(3)::before {
514
+ background-color: #30D468;
515
+ }
516
+
517
+ .user:nth-child(4)::before {
518
+ background-color: #C6CCCC;
519
+ }
520
+
521
+
522
+ `;
@@ -32,3 +32,4 @@ export { default as DatePickerCalender } from "./datePicker";
32
32
  export { default as TextEditor } from "./textEditor";
33
33
  export { default as MessageAddon } from "./messageAddon/messages";
34
34
  export { default as InstructorAccountSwitcher } from "./instructorAccountSwitcher";
35
+ export { default as InstructorRightBar } from "./fileRightBar/instructorRightBar"
@@ -9,6 +9,7 @@ export const MessagesWrapper = styled.div`
9
9
  right: 0;
10
10
  border-radius: 30px;
11
11
  background-color: rgba(0, 194, 194, 1);
12
+ z-index: 99;
12
13
 
13
14
  .message_by_wrapper {
14
15
  border-radius: ${({ isFullHeight }) =>