cyber-elx 1.1.5 → 1.1.9

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.
@@ -607,6 +607,14 @@ module.exports = {
607
607
  }
608
608
  `,
609
609
 
610
+ computed: /* js */`
611
+ {
612
+ counterText() {
613
+ return this.counter + " Counts";
614
+ }
615
+ }
616
+ `,
617
+
610
618
  methods: /* js */`
611
619
  {
612
620
  increment() {
@@ -525,6 +525,14 @@ module.exports = {
525
525
  }
526
526
  `,
527
527
 
528
+ computed: /* js */`
529
+ {
530
+ counterText() {
531
+ return this.counter + " Counts";
532
+ }
533
+ }
534
+ `,
535
+
528
536
  methods: /* js */`
529
537
  {
530
538
  increment() {
package/DEV_DOC/README.md CHANGED
@@ -0,0 +1,29 @@
1
+ # CyberOcean Custom Pages CLI Tool
2
+
3
+ This directory contains documentation for customizing the CyberOcean ELX platform.
4
+
5
+ ## Documentation Index
6
+
7
+ ### [LoginRegisterPagesDev.md](LoginRegisterPagesDev.md)
8
+ Custom Login & Register pages using Vue.js components. Covers the multi-step login flow (email → password → login) and password recovery flow (send code → verify → new password). Also documents the registration form with optional email verification. Includes available props, events to emit, and complete working examples.
9
+
10
+ ### [PaymentPageDev.md](PaymentPageDev.md)
11
+ Custom Payment page for course enrollment. Handles guest vs logged-in user states, displays course information with price breakdown, and provides payment method selection (online payment or course request). Documents the course object structure, user object, and all dialog interactions.
12
+
13
+ ### [StudentCssDev.md](StudentCssDev.md)
14
+ CSS customization guide for the Student Dashboard. Covers navbar styling (background color, profile button, dropdown menu) and sidebar styling (background, active items, hover effects, submenu items). Includes important notes about using `::before` for backgrounds and required `!important` overrides.
15
+
16
+ ### [StudentListCoursesPageDev.md](StudentListCoursesPageDev.md)
17
+ Custom Student List Courses page (course catalog). Displays categories grid, featured courses with flip-card hover effect, and promoted courses horizontal slider with navigation. Includes responsive design (1-4 columns), primary color theming via Vuex store, and slider state management with resize handling.
18
+
19
+ ### [StudentMyCoursesPageDev.md](StudentMyCoursesPageDev.md)
20
+ Custom Student My Courses page (student dashboard home). Shows statistics cards (total courses, completed, certificates), course list with progress bars, and certificate generation for completed courses. Documents the cardsInfos structure, courses array with progress tracking, and available translation keys.
21
+
22
+ ### [StudentStartupDev.md](StudentStartupDev.md)
23
+ Available JavaScript variables for student-related customizations. Documents the student user object accessible via `$nuxt.$store.state.auth.user` including fields like id, name, email, phone, grade, and profile image.
24
+
25
+ ### [TeacherCssDev.md](TeacherCssDev.md)
26
+ CSS customization guide for the Teacher Dashboard. Same structure as StudentCssDev.md - covers navbar styling and sidebar styling with examples for background colors, active states, hover effects, and responsive behavior.
27
+
28
+ ### [ThemeDev.md](ThemeDev.md)
29
+ Comprehensive theme development guide using Liquid templating. Covers layout structure, sections, templates, and all available Liquid variables for each page type (home, course, courses, category, blog, blogs, contact, about). Includes object structures for courses, categories, articles, and website URLs.
@@ -0,0 +1,313 @@
1
+ # Student Dashboard Customization Guide (using CSS)
2
+
3
+ ## All student dashboard pages background color
4
+ - **IMPORTANT:** The background color should be very light, since most of pages content are dark
5
+ ```css
6
+ .v-main {
7
+ background: #e2f1ffff !important;
8
+ }
9
+ ```
10
+ - **Do not** Edit `.v-main::before` or `.v-main::after` unless requested
11
+
12
+
13
+ ## Navbar Customization Guide
14
+
15
+ ### Important: CSS Selector Rules
16
+
17
+ **All your custom CSS must start with this selector:**
18
+
19
+ - `.navbar` - Applies to the navbar/top bar
20
+
21
+ ##### Example Structure:
22
+ ```css
23
+ /* Navbar styles */
24
+ .navbar { }
25
+ ```
26
+
27
+ ### Basic Structure
28
+
29
+ Main classes within the navbar:
30
+ - `.navbar` - The main top bar container
31
+ - `.v-btn` - Buttons (menu toggle, profile button)
32
+ - `.profile` - User profile avatar
33
+ - `.toolbar-menu-item` - User dropdown menu
34
+ - `.v-list-item` - Menu items in dropdown
35
+
36
+ ### Common Customizations
37
+
38
+ ### 1. Change Navbar Background Color
39
+
40
+ ```css
41
+ /* Navbar background - use ::before for proper override */
42
+ .navbar::before {
43
+ /* --- those are required for background to be applied --- */
44
+ content: "";
45
+ position: absolute;
46
+ top: 0;
47
+ left: 0;
48
+ width: 100%;
49
+ height: 100%;
50
+ /* ------ */
51
+ background-color: #1c4bd5 !important; /* Desired color here (Should be a dark color, since all texts are white) */
52
+ }
53
+ ```
54
+
55
+ ### 2. Change Navbar border
56
+
57
+ ```css
58
+ .navbar {
59
+ border-bottom: 2px solid #e0e0e0 !important;
60
+ }
61
+ ```
62
+
63
+ ### 3. Customize Profile Name Text
64
+
65
+ ```css
66
+ /* Profile name styling */
67
+ .navbar .v-btn span {
68
+ color: #333333 !important;
69
+ font-size: 15px !important;
70
+ font-weight: 600 !important;
71
+ }
72
+ ```
73
+
74
+ ### 4. Customize Profile Avatar
75
+
76
+ ```css
77
+ /* Avatar border/styling */
78
+ .navbar .profile {
79
+ border: 2px solid #1976d2 !important;
80
+ }
81
+ ```
82
+
83
+ ### 5. Customize Sidebar Toggle Button
84
+
85
+ ```css
86
+ /* Sidebar toggle button color */
87
+ .navbar .v-btn .v-icon {
88
+ color: #333333 !important;
89
+ }
90
+
91
+ /* Sidebar toggle button on hover */
92
+ .navbar .v-btn:hover {
93
+ background-color: rgba(0, 0, 0, 0.05) !important;
94
+ }
95
+ ```
96
+
97
+ ### 6. Customize Dropdown Menu
98
+
99
+ ```css
100
+ /* Dropdown menu background */
101
+ .navbar .toolbar-menu-item .v-list {
102
+ background-color: #ffffff !important;
103
+ }
104
+
105
+ /* Dropdown menu items */
106
+ .navbar .v-list-item {
107
+ color: #333333 !important;
108
+ }
109
+
110
+ /* Dropdown menu items on hover */
111
+ .navbar .v-list-item:hover {
112
+ background-color: #f5f5f5 !important;
113
+ }
114
+
115
+ /* Dropdown menu item titles */
116
+ .navbar .v-list-item-title {
117
+ font-size: 14px !important;
118
+ font-weight: 400 !important;
119
+ }
120
+ ```
121
+
122
+ ### 7. Customize Icons Color
123
+
124
+ ```css
125
+ /* All icons in navbar */
126
+ .navbar .v-icon {
127
+ color: #555555 !important;
128
+ }
129
+
130
+ /* Icons in dropdown menu */
131
+ .navbar .v-list-item .v-icon {
132
+ color: #666666 !important;
133
+ }
134
+ ```
135
+
136
+ ### 8. Add Gradient Background
137
+
138
+ ```css
139
+ /* Gradient navbar background */
140
+ .navbar::before {
141
+ background: linear-gradient(90deg, #667eea 0%, #764ba2 100%) !important;
142
+ }
143
+
144
+ /* Adjust text colors for gradient */
145
+ .navbar .v-btn span,
146
+ .navbar .v-icon {
147
+ color: white !important;
148
+ }
149
+ ```
150
+
151
+ ### 9. Navbar Height
152
+
153
+ - **Do not change the height**, it is not customizable
154
+
155
+ ### Tips
156
+ - **Always** start selectors with `.navbar`
157
+ - Use `.navbar::before` for background color changes
158
+ - Always use `!important` to override defaults
159
+ - Keep contrast ratios accessible
160
+ - Keep in mind that all Vuetify elements used are in dark mode, so most of the texts color is white
161
+
162
+ ## Sidebar Customization Guide
163
+
164
+ This guide will help you customize the sidebar appearance using CSS. Add your custom CSS to your theme or style settings.
165
+
166
+ ### Important: CSS Selector Rules
167
+
168
+ **All your custom CSS must start with one of these selectors:**
169
+
170
+ - `.sidebar` - Applies to sidebar in all states
171
+ - `.sidebar:not(.v-navigation-drawer--is-mouseover)` - Only applies when sidebar is collapsed/minimized
172
+ - `.sidebar.v-navigation-drawer--is-mouseover` - Only applies when sidebar is expanded/full width
173
+
174
+ #### Example Structure:
175
+ ```css
176
+ /* Applies always */
177
+ .sidebar { }
178
+
179
+ /* Only when sidebar is minimized */
180
+ .sidebar:not(.v-navigation-drawer--is-mouseover) { }
181
+
182
+ /* Only when sidebar is expanded */
183
+ .sidebar.v-navigation-drawer--is-mouseover { }
184
+ ```
185
+
186
+ ### Sidebar States
187
+
188
+ The sidebar has two states:
189
+
190
+ 1. **Expanded** (`.sidebar.v-navigation-drawer--is-mouseover`) - Full sidebar showing text and icons
191
+ 2. **Minimized** (`.sidebar:not(.v-navigation-drawer--is-mouseover)`) - Collapsed sidebar showing only icons
192
+
193
+ ### Basic Structure
194
+
195
+ Main classes within the sidebar:
196
+ - `.v-list-item` - Menu items
197
+ - `.v-list-item--active` - Active/selected menu item
198
+ - `.sidebar-menu-subitem` - Submenu items
199
+ - `.v-toolbar` - Top bar (logo area) || it is better **not to make a background color change** for this, since the sidebar background color is already under it
200
+
201
+ ### Common Customizations
202
+
203
+ #### 1. Change Sidebar Background Color
204
+ - **IMPORTANT:** The background color should be dark, since it's content is light
205
+
206
+ ```css
207
+ /* Light theme sidebar - all states */
208
+ .sidebar::before {
209
+ background-color: #1b42eeff !important;
210
+ } /* As you can see, the sidebar background color is changable from ::before */
211
+ ```
212
+
213
+ #### 2. Change Active Item Color
214
+
215
+ ```css
216
+ /* Active menu item text color */
217
+ .sidebar .v-list-item--active .v-list-item__title {
218
+ color: #ff6b6b !important;
219
+ font-weight: bold;
220
+ }
221
+
222
+ /* Active menu item icon color */
223
+ .sidebar .v-list-item--active .v-icon {
224
+ color: #ff6b6b !important;
225
+ }
226
+
227
+ /* Active item in expanded sidebar only */
228
+ .sidebar.v-navigation-drawer--is-mouseover .v-list-item--active {
229
+ border-left: 4px solid #ff6b6b;
230
+ }
231
+ ```
232
+
233
+ #### 3. Customize Menu Item Hover Effect
234
+
235
+ ```css
236
+ /* Hover effect - all states */
237
+ .sidebar .v-list-item:hover {
238
+ background-color: rgba(0, 0, 0, 0.05) !important;
239
+ }
240
+
241
+ /* Different hover for minimized state */
242
+ .sidebar:not(.v-navigation-drawer--is-mouseover) .v-list-item:hover {
243
+ background-color: rgba(0, 0, 0, 0.1) !important;
244
+ }
245
+ ```
246
+
247
+ #### 4. Change Top Bar (Logo Area) Colors
248
+
249
+ ```css
250
+ /* Top toolbar background */
251
+ .sidebar .v-toolbar {
252
+ background-color: #1c4bd5 !important; /* (ONLY WHEN NEEDED) Better not change the background color, for more stylized sidebar, set a background for the whole sidebar::before instead */
253
+ }
254
+
255
+ /* App name text color */
256
+ .sidebar .toolbar .text {
257
+ color: white !important;
258
+ }
259
+
260
+ /* Hide logo when minimized */
261
+ .sidebar:not(.v-navigation-drawer--is-mouseover) .wide-logo-img {
262
+ opacity: 0.7;
263
+ }
264
+ ```
265
+
266
+ #### 5. Customize Submenu Items
267
+
268
+ ```css
269
+ /* Submenu background - only visible in expanded state */
270
+ .sidebar.v-navigation-drawer--is-mouseover .sidebar-menu-subitem {
271
+ background-color: #fafafa !important;
272
+ /* Do not change margins/transform:translate to do not break the layout */
273
+ }
274
+
275
+ /* Active submenu item */
276
+ .sidebar .sidebar-menu-subitem.v-list-item--active {
277
+ background-color: #e3f2fd !important;
278
+ border-left: 3px solid #2196f3;
279
+ /* Do not change margins/transform:translate to do not break the layout */
280
+ }
281
+ ```
282
+
283
+ #### 6. Change Font Sizes
284
+
285
+ ```css
286
+ /* Main menu items */
287
+ .sidebar .v-list-item-title {
288
+ font-size: 16px !important;
289
+ font-weight: 400 !important;
290
+ }
291
+
292
+ /* Smaller font when minimized (shown on hover) */
293
+ .sidebar:not(.v-navigation-drawer--is-mouseover) .v-list-item-title {
294
+ font-size: 14px !important;
295
+ }
296
+
297
+ /* App name */
298
+ .sidebar .toolbar .text {
299
+ font-size: 24px !important;
300
+ }
301
+ ```
302
+
303
+ #### 7. Width Customization
304
+
305
+ - **Do not change the width**, it is not customizable
306
+
307
+ ### Tips
308
+ - **Always** start selectors with `.sidebar`
309
+ - Use `.sidebar:not(.v-navigation-drawer--is-mouseover)` for minimized state styles
310
+ - Use `.sidebar.v-navigation-drawer--is-mouseover` for expanded state styles
311
+ - Always use `!important` to override defaults
312
+ - Keep contrast ratios accessible
313
+ - Keep in mind that all Vuetify elements used are in dark mode, so most of the texts color is white