pvanand commited on
Commit
15b9ca1
·
verified ·
1 Parent(s): 79798e5

Upload 21 files

Browse files
static/css/apps-hub/ai-sidebar.css CHANGED
@@ -1,89 +1,81 @@
1
- /* ai-sidebar.css */
2
- /* ai-sidebar.css */
3
- body {
4
- font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
5
- line-height: 1.6;
6
- margin: 0;
7
- padding: 0;
8
- background-color: #f0f2f5;
9
- color: #333;
10
- }
11
-
12
- .ai-sidebar__container {
13
- display: flex;
14
- min-height: 100vh;
15
-
16
- }
17
-
18
- .ai-sidebar__sidebar {
19
- max-width: 250px;
20
- background-color: #ffffff;
21
- padding: 10px;
22
- box-shadow: 2px 0 10px rgba(0, 0, 0, 0.1);
23
- display: flex;
24
- flex-direction: column;
25
- }
26
-
27
- .ai-sidebar__title {
28
- font-size: 1.5rem;
29
- font-weight: bold;
30
- color: #3f72af;
31
- margin-bottom: 20px;
32
- }
33
-
34
- .ai-sidebar__app-list {
35
- list-style-type: none;
36
- padding: 0;
37
- margin: 0;
38
- flex-grow: 1;
39
- }
40
-
41
- .ai-sidebar__app-item {
42
- display: flex;
43
- align-items: center;
44
- padding: 10px;
45
- margin-bottom: 10px;
46
- border-radius: 8px;
47
- cursor: pointer;
48
- transition: background-color 0.2s ease;
49
- }
50
-
51
- .ai-sidebar__app-item:hover {
52
- background-color: #3f72af;
53
- color: white;
54
- }
55
-
56
- .ai-sidebar__app-icon {
57
- width: 36px;
58
- height: 36px;
59
- border-radius: 8px;
60
- display: flex;
61
- justify-content: center;
62
- align-items: center;
63
- margin-right: 16px;
64
- color: white;
65
- font-size: 1.1rem;
66
- }
67
-
68
- .ai-sidebar__app-name {
69
- font-weight: 500;
70
- }
71
-
72
- .ai-sidebar__content {
73
- flex-grow: 1;
74
- padding: 20px;
75
- }
76
-
77
- .ai-sidebar__footer {
78
- margin-top: auto;
79
- }
80
-
81
- .ai-sidebar__footer .ai-sidebar__app-item {
82
- text-decoration: none;
83
- color: inherit;
84
- }
85
-
86
- .ai-sidebar__footer .ai-sidebar__app-icon {
87
- width: 40px;
88
- height: 40px;
89
  }
 
1
+ /* ai-sidebar.css */
2
+
3
+ .ai-sidebar__container {
4
+ display: flex;
5
+ min-height: 100vh;
6
+
7
+ }
8
+
9
+ .ai-sidebar__sidebar {
10
+ max-width: 250px;
11
+ background-color: #ffffff;
12
+ padding: 10px;
13
+ box-shadow: 2px 0 10px rgba(0, 0, 0, 0.1);
14
+ display: flex;
15
+ flex-direction: column;
16
+ font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
17
+ }
18
+
19
+ .ai-sidebar__title {
20
+ font-size: 1.5rem;
21
+ font-weight: bold;
22
+ color: #3f72af;
23
+ margin-bottom: 20px;
24
+ }
25
+
26
+ .ai-sidebar__app-list {
27
+ list-style-type: none;
28
+ padding: 0;
29
+ margin: 0;
30
+ flex-grow: 1;
31
+ }
32
+
33
+ .ai-sidebar__app-item {
34
+ display: flex;
35
+ align-items: center;
36
+ padding: 10px;
37
+ margin-bottom: 10px;
38
+ border-radius: 8px;
39
+ cursor: pointer;
40
+ transition: background-color 0.2s ease;
41
+ }
42
+
43
+ .ai-sidebar__app-item:hover {
44
+ background-color: #3f72af;
45
+ color: white;
46
+ }
47
+
48
+ .ai-sidebar__app-icon {
49
+ width: 36px;
50
+ height: 36px;
51
+ border-radius: 8px;
52
+ display: flex;
53
+ justify-content: center;
54
+ align-items: center;
55
+ margin-right: 16px;
56
+ color: white;
57
+ font-size: 1.1rem;
58
+ }
59
+
60
+ .ai-sidebar__app-name {
61
+ font-weight: 500;
62
+ }
63
+
64
+ .ai-sidebar__content {
65
+ flex-grow: 1;
66
+ padding: 20px;
67
+ }
68
+
69
+ .ai-sidebar__footer {
70
+ margin-top: auto;
71
+ }
72
+
73
+ .ai-sidebar__footer .ai-sidebar__app-item {
74
+ text-decoration: none;
75
+ color: inherit;
76
+ }
77
+
78
+ .ai-sidebar__footer .ai-sidebar__app-icon {
79
+ width: 40px;
80
+ height: 40px;
 
 
 
 
 
 
 
 
81
  }
static/css/apps-hub/research-pro-style.css CHANGED
@@ -2,15 +2,6 @@
2
  --accent-color: #003366; /* Navy blue */
3
  }
4
 
5
- body {
6
- font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
7
- line-height: 1.6;
8
- margin: 0;
9
- padding: 0;
10
- background-color: #f0f2f5;
11
- color: #333;
12
- }
13
-
14
  #input-container {
15
  margin-bottom: 20px;
16
  background-color: #ffffff;
@@ -31,6 +22,13 @@ body {
31
  }
32
 
33
  #report-container, #sources-container {
 
 
 
 
 
 
 
34
  background-color: #ffffff;
35
  padding: 30px;
36
  border-radius: 8px;
@@ -213,6 +211,7 @@ h2 {
213
  }
214
 
215
  .title {
 
216
  font-weight: 700;
217
  font-size: 64px !important;
218
  background: linear-gradient(45deg, #3b82f6, #10b981);
 
2
  --accent-color: #003366; /* Navy blue */
3
  }
4
 
 
 
 
 
 
 
 
 
 
5
  #input-container {
6
  margin-bottom: 20px;
7
  background-color: #ffffff;
 
22
  }
23
 
24
  #report-container, #sources-container {
25
+ font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
26
+ line-height: 1.6;
27
+ margin: 0;
28
+ padding: 0;
29
+ background-color: #f0f2f5;
30
+ color: #333;
31
+
32
  background-color: #ffffff;
33
  padding: 30px;
34
  border-radius: 8px;
 
211
  }
212
 
213
  .title {
214
+ font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
215
  font-weight: 700;
216
  font-size: 64px !important;
217
  background: linear-gradient(45deg, #3b82f6, #10b981);
static/js/apps-hub/main-app.js ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ const { createApp } = Vue;
2
+
3
+ const app = createApp({
4
+ components: {
5
+ 'sidebar-component': SidebarComponent
6
+ },
7
+ methods: {
8
+ async checkAuthentication() {
9
+ const session = await checkAuth();
10
+ if (!session) {
11
+ redirectToLogin();
12
+ }
13
+ }
14
+ },
15
+ mounted() {
16
+ this.checkAuthentication();
17
+ }
18
+ });
19
+
20
+ app.mount('#app');
static/js/apps-hub/sidebar-component.js CHANGED
@@ -1,43 +1,42 @@
1
- // sidebar-component.js
2
- const SidebarComponent = {
3
- template: `
4
- <aside class="ai-sidebar__sidebar">
5
- <div class="ai-sidebar__title">AI Apps</div>
6
- <ul class="ai-sidebar__app-list">
7
- <li v-for="app in apps" :key="app.id" class="ai-sidebar__app-item" @click="navigateToApp(app)">
8
- <div class="ai-sidebar__app-icon" :style="{ backgroundColor: app.color }">
9
- <i :class="app.icon"></i>
10
- </div>
11
- <span class="ai-sidebar__app-name">{{ app.name }}</span>
12
- </li>
13
- </ul>
14
- <div class="ai-sidebar__footer">
15
- <a href="/profile" class="ai-sidebar__app-item">
16
- <div class="ai-sidebar__app-icon" style="backgroundColor: #3f72af">
17
- <i class="fas fa-user"></i>
18
- </div>
19
- <span class="ai-sidebar__app-name">Profile</span>
20
- </a>
21
- </div>
22
- </aside>
23
- `,
24
- setup() {
25
- const apps = Vue.ref([
26
- { id: 1, name: 'iResearcher', icon: 'fas fa-flask', color: '#6C5CE7', url: '/research-pro' },
27
- { id: 2, name: 'ArticleCrafter', icon: 'fas fa-pen-fancy', color: '#2ECC71', url: '/article-writer' },
28
- { id: 3, name: 'FollowUpPro', icon: 'fas fa-comments', color: '#3498DB', url: '/followup-agent' },
29
- { id: 4, name: 'DigiYatra Assistant', icon: 'fas fa-plane', color: '#E74C3C', url: '/digiyatra-assistant' },
30
- { id: 5, name: 'FileConverter', icon: 'fas fa-file-export', color: '#F39C12', url: '/file-convert' },
31
-
32
- ]);
33
-
34
- const navigateToApp = (app) => {
35
- window.location.href = app.url;
36
- };
37
-
38
- return {
39
- apps,
40
- navigateToApp
41
- };
42
- }
43
  };
 
1
+ const SidebarComponent = {
2
+ template: `
3
+ <aside class="ai-sidebar__sidebar">
4
+ <h1 class="ai-sidebar__title">AI Suite</h1>
5
+ <nav>
6
+ <ul class="ai-sidebar__app-list">
7
+ <li v-for="app in apps" :key="app.id" class="ai-sidebar__app-item" @click="navigateToApp(app)">
8
+ <div class="ai-sidebar__app-icon" :style="{ backgroundColor: app.color }">
9
+ <i :class="app.icon"></i>
10
+ </div>
11
+ <span class="ai-sidebar__app-name">{{ app.name }}</span>
12
+ </li>
13
+ </ul>
14
+ </nav>
15
+ <div class="ai-sidebar__footer">
16
+ <a href="/profile" class="ai-sidebar__app-item">
17
+ <div class="ai-sidebar__app-icon" style="backgroundColor: #1F4E79">
18
+ <i class="bi bi-person-circle"></i>
19
+ </div>
20
+ <span class="ai-sidebar__app-name">My Profile</span>
21
+ </a>
22
+ </div>
23
+ </aside>
24
+ `,
25
+ setup() {
26
+ const apps = Vue.ref([
27
+ { id: 1, name: 'iResearcher', icon: 'bi bi-search', color: '#3f72af', url: '/research-pro' },
28
+ { id: 2, name: 'ArticleCrafter', icon: 'bi bi-pencil-square', color: '#3f72af', url: '/article-writer' },
29
+ { id: 3, name: 'FollowUpPro', icon: 'bi bi-envelope-paper', color: '#3f72af', url: '/followup-agent' },
30
+ { id: 4, name: 'DigiYatra Assistant', icon: 'bi bi-person-vcard', color: '#3f72af', url: '/digiyatra-assistant' },
31
+ { id: 5, name: 'FileConverter', icon: 'bi bi-arrow-repeat', color: '#3f72af', url: '/file-convert' }
32
+ ]);
33
+ const navigateToApp = (app) => {
34
+ window.location.href = app.url;
35
+ };
36
+
37
+ return {
38
+ apps,
39
+ navigateToApp
40
+ };
41
+ }
 
42
  };
static/png/elevatics.png ADDED
static/svg/analytics.svg ADDED
static/svg/career.svg ADDED
static/svg/code.svg ADDED
static/svg/elevatics.svg ADDED
static/svg/investment.svg ADDED
static/svg/iresearcher.svg ADDED
static/svg/news.svg ADDED
static/svg/speech.svg ADDED