@apptegy/nuxt-navigation 0.1.61 → 0.1.62

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/dist/module.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "nuxt": ">=3.0.0"
5
5
  },
6
6
  "configKey": "@apptegy/nuxt-navigation",
7
- "version": "0.1.61",
7
+ "version": "0.1.62",
8
8
  "builder": {
9
9
  "@nuxt/module-builder": "1.0.1",
10
10
  "unbuild": "unknown"
@@ -9,7 +9,24 @@
9
9
  </div>
10
10
  <slot name="org-select" />
11
11
  <slot name="user-controls" />
12
- <NavUserDropdown :user="user" :user-dropdown-options="userDropdownOptions" @select-option="(index) => $emit('selected-option', index)"/>
12
+ <div class="user-control-actions">
13
+ <NavUserDropdown
14
+ :user="user"
15
+ :user-dropdown-options="userDropdownOptions"
16
+ @select-option="(index) => $emit('selected-option', index)"
17
+ />
18
+ <NuxtLink
19
+ v-if="impersonatedUser?.show"
20
+ class="logout-impersonate-user"
21
+ :to="'/logout'"
22
+ >
23
+ <a-icon
24
+ class="icon"
25
+ :icon="'16:logout'"
26
+ font-size="20px"
27
+ />
28
+ </NuxtLink>
29
+ </div>
13
30
  </header>
14
31
  </template>
15
32
 
@@ -17,6 +34,7 @@
17
34
  defineProps({
18
35
  sticky: { type: Boolean, required: false },
19
36
  user: { type: Object, required: true },
37
+ impersonatedUser: { type: Object, required: false },
20
38
  userDropdownOptions: { type: Array, required: true }
21
39
  });
22
40
  defineEmits(["selected-option"]);
@@ -36,6 +54,22 @@ header.header {
36
54
  background-color: var(--primary-white);
37
55
  font: var(--font-regular);
38
56
  }
57
+ header.header .user-control-actions {
58
+ display: flex;
59
+ gap: 8px;
60
+ }
61
+ header.header .logout-impersonate-user {
62
+ width: 32px;
63
+ height: 32px;
64
+ border-radius: 16px;
65
+ background: var(--purple-20);
66
+ display: flex;
67
+ align-items: center;
68
+ justify-content: center;
69
+ }
70
+ header.header .logout-impersonate-user:hover {
71
+ background: var(--purple-30);
72
+ }
39
73
  @media only screen and (width <= 960px) {
40
74
  header.header {
41
75
  padding-left: 32px;
@@ -1,3 +1,4 @@
1
+ import type { IUser } from '../../types/index.js';
1
2
  interface IHeaderProps {
2
3
  sticky?: boolean;
3
4
  }
@@ -7,6 +8,7 @@ interface IUserDropdown {
7
8
  email: string;
8
9
  avatar?: string;
9
10
  };
11
+ impersonatedUser?: IUser;
10
12
  userDropdownOptions: Array<unknown>;
11
13
  }
12
14
  type __VLS_Props = IHeaderProps & IUserDropdown;
@@ -35,12 +35,12 @@ declare const __VLS_component: import("vue").DefineComponent<ISidebarProps, void
35
35
  }, string, import("vue").PublicProps, Readonly<ISidebarProps> & Readonly<{
36
36
  "onToggle-expand"?: ((width: number) => any) | undefined;
37
37
  }>, {
38
+ impersonatedUser: IUser;
38
39
  helpArticleOptions: Array<unknown>;
39
40
  settingsRoute: string;
40
41
  schoolWebsite: string;
41
42
  showHelpArticles: boolean;
42
43
  fixed: boolean;
43
- impersonatedUser: IUser;
44
44
  clientId: number;
45
45
  applications: Array<IApplication>;
46
46
  currentApplication: IApplication["text"];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@apptegy/nuxt-navigation",
3
- "version": "0.1.61",
3
+ "version": "0.1.62",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": {
@@ -46,5 +46,5 @@
46
46
  "vue": "^3.5.13",
47
47
  "vue-tsc": "^3.0.3"
48
48
  },
49
- "gitHead": "abf879ffbcaab70578099916ab9a3ef1c432b7b3"
49
+ "gitHead": "c921c9ad5a3fad0db88eee75364b7e45435e6170"
50
50
  }