@vc-shell/framework 1.1.25 → 1.1.27
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/CHANGELOG.md +20 -0
- package/core/composables/useAppInsights/index.ts +2 -2
- package/core/composables/useErrorHandler/index.ts +3 -2
- package/core/composables/useGlobalSearch/useGlobalSearch.md +263 -0
- package/core/composables/usePermissions/index.ts +2 -2
- package/core/composables/useTheme/index.ts +74 -26
- package/core/composables/useUser/index.ts +29 -8
- package/core/composables/useUserManagement/index.ts +45 -0
- package/core/interceptors/index.ts +2 -2
- package/core/plugins/signalR/index.ts +2 -2
- package/core/services/global-search-service/global-search-service.md +203 -0
- package/core/services/widget-service.ts +35 -12
- package/dist/core/composables/useErrorHandler/index.d.ts.map +1 -1
- package/dist/core/composables/useTheme/index.d.ts +14 -5
- package/dist/core/composables/useTheme/index.d.ts.map +1 -1
- package/dist/core/composables/useUser/index.d.ts +11 -3
- package/dist/core/composables/useUser/index.d.ts.map +1 -1
- package/dist/core/composables/useUserManagement/index.d.ts +23 -0
- package/dist/core/composables/useUserManagement/index.d.ts.map +1 -0
- package/dist/core/services/widget-service.d.ts +9 -7
- package/dist/core/services/widget-service.d.ts.map +1 -1
- package/dist/framework.js +94 -93
- package/dist/{index-BnqqEJTE.js → index-7QxPGzyc.js} +1 -1
- package/dist/{index-BbuBDu8A.js → index-BTSkZXT8.js} +1 -1
- package/dist/{index-Cmbxdwnl.js → index-BY-R-HdZ.js} +1 -1
- package/dist/{index-BLmjssqE.js → index-BZxRjAGk.js} +1 -1
- package/dist/{index-DAnceKLv.js → index-BqYr-8f0.js} +1 -1
- package/dist/{index-Cxkjjuah.js → index-BzqwPR6i.js} +1 -1
- package/dist/{index-Br7ZwtRW.js → index-C0M62ScY.js} +1 -1
- package/dist/{index-eOG-NNYN.js → index-C3-32wVM.js} +1 -1
- package/dist/{index-cuex9jil.js → index-CDDikrWT.js} +1 -1
- package/dist/{index-CGL9e-cM.js → index-D0ULQYO-.js} +1 -1
- package/dist/{index-CRwMOCjN.js → index-DH6g1vn6.js} +1 -1
- package/dist/{index-DvenBxy6.js → index-DOWE0lAY.js} +23639 -23558
- package/dist/{index-DoArZBIw.js → index-DgTmfnFD.js} +1 -1
- package/dist/{index-CLAYu8Qj.js → index-DjFrEbcz.js} +1 -1
- package/dist/{index-CIzLBvgg.js → index-Ytl5MiZA.js} +1 -1
- package/dist/{index-Dk1K3-27.js → index-bTh-yQ1Q.js} +1 -1
- package/dist/{index-BYcoxn-f.js → index-copXmHaa.js} +1 -1
- package/dist/index.css +1 -1
- package/dist/locales/de.json +6 -0
- package/dist/locales/en.json +6 -0
- package/dist/shared/components/change-password/change-password.vue.d.ts.map +1 -1
- package/dist/shared/components/notifications/components/notification-container/index.d.ts +1 -1
- package/dist/shared/components/notifications/components/notification-container/index.d.ts.map +1 -1
- package/dist/shared/components/settings-menu/settings-menu.vue.d.ts.map +1 -1
- package/dist/shared/components/settings-menu-item/settings-menu-item.vue.d.ts +6 -11
- package/dist/shared/components/settings-menu-item/settings-menu-item.vue.d.ts.map +1 -1
- package/dist/shared/components/sidebar/sidebar.vue.d.ts +3 -11
- package/dist/shared/components/sidebar/sidebar.vue.d.ts.map +1 -1
- package/dist/shared/components/theme-selector/theme-selector.vue.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/pages/dynamic-blade-form.vue.d.ts.map +1 -1
- package/dist/shared/pages/InvitePage/components/invite/Invite.vue.d.ts.map +1 -1
- package/dist/shared/pages/LoginPage/components/login/Login.vue.d.ts.map +1 -1
- package/dist/shared/pages/ResetPasswordPage/components/reset-password/ResetPassword.vue.d.ts.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/ui/components/atoms/vc-widget/vc-widget.vue.d.ts.map +1 -1
- package/dist/ui/components/molecules/vc-input-dropdown/vc-input-dropdown.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-app/vc-app.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/vc-widget-container-desktop.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/vc-widget-container-mobile.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-popup/vc-popup.vue.d.ts +1 -1
- package/dist/ui/components/organisms/vc-popup/vc-popup.vue.d.ts.map +1 -1
- package/package.json +4 -4
- package/shared/components/change-password/change-password.vue +2 -3
- package/shared/components/logout-button/logout-button.vue +2 -2
- package/shared/components/settings-menu/settings-menu.vue +1 -4
- package/shared/components/settings-menu-item/settings-menu-item.vue +9 -1
- package/shared/components/sidebar/sidebar.vue +6 -1
- package/shared/components/theme-selector/theme-selector.vue +11 -11
- package/shared/components/user-dropdown-button/_internal/user-info.vue +2 -2
- package/shared/modules/dynamic/pages/dynamic-blade-form.vue +1 -0
- package/shared/pages/InvitePage/components/invite/Invite.vue +217 -216
- package/shared/pages/LoginPage/components/login/Login.vue +3 -2
- package/shared/pages/ResetPasswordPage/components/reset-password/ResetPassword.vue +3 -2
- package/ui/components/atoms/vc-widget/vc-widget.vue +13 -6
- package/ui/components/molecules/vc-input-dropdown/vc-input-dropdown.stories.ts +0 -2
- package/ui/components/molecules/vc-input-dropdown/vc-input-dropdown.vue +11 -0
- package/ui/components/organisms/vc-app/vc-app.vue +4 -3
- package/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/vc-widget-container-desktop.vue +2 -1
- package/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/vc-widget-container-mobile.vue +2 -0
- package/ui/components/organisms/vc-popup/vc-popup.stories.ts +398 -0
- package/ui/components/organisms/vc-popup/vc-popup.vue +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vc-widget.vue.d.ts","sourceRoot":"","sources":["../../../../../ui/components/atoms/vc-widget/vc-widget.vue"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"vc-widget.vue.d.ts","sourceRoot":"","sources":["../../../../../ui/components/atoms/vc-widget/vc-widget.vue"],"names":[],"mappings":"AAqLA,MAAM,WAAW,KAAK;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;;;;;;AA6ID,wBAOG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vc-input-dropdown.vue.d.ts","sourceRoot":"","sources":["../../../../../ui/components/molecules/vc-input-dropdown/vc-input-dropdown.vue"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"vc-input-dropdown.vue.d.ts","sourceRoot":"","sources":["../../../../../ui/components/molecules/vc-input-dropdown/vc-input-dropdown.vue"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vc-app.vue.d.ts","sourceRoot":"","sources":["../../../../../ui/components/organisms/vc-app/vc-app.vue"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"vc-app.vue.d.ts","sourceRoot":"","sources":["../../../../../ui/components/organisms/vc-app/vc-app.vue"],"names":[],"mappings":"AAuUA,MAAM,WAAW,KAAK;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAWD,KAAK,WAAW,GAAG;IACjB,cAAc,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC;CACrC,CAAC;AAyUF,QAAA,MAAM,eAAe;mCAnVe,IAAI;;uCAAJ,IAAI;kFA0VtC,CAAC;wBACkB,eAAe,CAAC,OAAO,eAAe,EAAE,WAAW,CAAC;AAAzE,wBAA0E;AAQ1E,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KAEV,CAAA;CACD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vc-widget-container-desktop.vue.d.ts","sourceRoot":"","sources":["../../../../../../../../ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/vc-widget-container-desktop.vue"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"vc-widget-container-desktop.vue.d.ts","sourceRoot":"","sources":["../../../../../../../../ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/vc-widget-container-desktop.vue"],"names":[],"mappings":"AA2GA,OAAO,EAAE,OAAO,EAAE,MAAM,oCAAoC,CAAC;AAI7D,UAAU,KAAK;IACb,OAAO,EAAE,OAAO,EAAE,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;;AAsJD,wBAMG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vc-widget-container-mobile.vue.d.ts","sourceRoot":"","sources":["../../../../../../../../ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/vc-widget-container-mobile.vue"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"vc-widget-container-mobile.vue.d.ts","sourceRoot":"","sources":["../../../../../../../../ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/vc-widget-container-mobile.vue"],"names":[],"mappings":"AAwJA,OAAO,EAAE,OAAO,EAAE,MAAM,oCAAoC,CAAC;AAI7D,UAAU,KAAK;IACb,OAAO,EAAE,OAAO,EAAE,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;;AA+KD,wBAMG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vc-popup.vue.d.ts","sourceRoot":"","sources":["../../../../../ui/components/organisms/vc-popup/vc-popup.vue"],"names":[],"mappings":"AAmWA,
|
|
1
|
+
{"version":3,"file":"vc-popup.vue.d.ts","sourceRoot":"","sources":["../../../../../ui/components/organisms/vc-popup/vc-popup.vue"],"names":[],"mappings":"AAmWA,MAAM,WAAW,KAAK;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,CAAC;IAC/D,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAgBD,KAAK,WAAW,GAAG;IACjB,MAAM,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC;IAC5B,OAAO,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC;IAC7B,MAAM,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,IAAI,CAAA;KAAE,KAAK,GAAG,CAAC;CAC/C,CAAC;AA2TF,QAAA,MAAM,eAAe;;;;;aAnVT,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM;cADnD,OAAO;gBAIL,MAAM;6EAwVnB,CAAC;wBACkB,eAAe,CAAC,OAAO,eAAe,EAAE,WAAW,CAAC;AAAzE,wBAA0E;AAa1E,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KAEV,CAAA;CACD,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vc-shell/framework",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.27",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/framework.js",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
@@ -70,9 +70,9 @@
|
|
|
70
70
|
"devDependencies": {
|
|
71
71
|
"@fullhuman/postcss-purgecss": "^7.0.2",
|
|
72
72
|
"@types/dompurify": "^3.0.5",
|
|
73
|
-
"@vc-shell/api-client-generator": "^1.1.
|
|
74
|
-
"@vc-shell/config-generator": "^1.1.
|
|
75
|
-
"@vc-shell/ts-config": "^1.1.
|
|
73
|
+
"@vc-shell/api-client-generator": "^1.1.27",
|
|
74
|
+
"@vc-shell/config-generator": "^1.1.27",
|
|
75
|
+
"@vc-shell/ts-config": "^1.1.27",
|
|
76
76
|
"@vitejs/plugin-vue": "^5.2.3",
|
|
77
77
|
"@vue/test-utils": "^2.4.5",
|
|
78
78
|
"cypress-signalr-mock": "^1.5.0",
|
|
@@ -137,7 +137,7 @@ import { nextTick, reactive, computed } from "vue";
|
|
|
137
137
|
import { useIsFormValid, Field, useIsFormDirty, useForm } from "vee-validate";
|
|
138
138
|
import { VcInput, VcHint, VcButton, VcPopup, VcForm } from "./../../../ui/components";
|
|
139
139
|
import { IIdentityError } from "./../../../core/api/platform";
|
|
140
|
-
import {
|
|
140
|
+
import { useUserManagement } from "./../../../core/composables/useUserManagement";
|
|
141
141
|
import { useI18n } from "vue-i18n";
|
|
142
142
|
import { useRouter } from "vue-router";
|
|
143
143
|
|
|
@@ -162,12 +162,11 @@ interface Emits {
|
|
|
162
162
|
|
|
163
163
|
const emit = defineEmits<Emits>();
|
|
164
164
|
const { t } = useI18n({ useScope: "global" });
|
|
165
|
-
const { changeUserPassword, loading, validatePassword } =
|
|
165
|
+
const { changeUserPassword, loading, validatePassword, signOut } = useUserManagement();
|
|
166
166
|
useForm({ validateOnMount: false });
|
|
167
167
|
const isValid = useIsFormValid();
|
|
168
168
|
const isDirty = useIsFormDirty();
|
|
169
169
|
const router = useRouter();
|
|
170
|
-
const { signOut } = useUser();
|
|
171
170
|
|
|
172
171
|
const form = reactive<IChangePassForm>({
|
|
173
172
|
isValid: false,
|
|
@@ -9,11 +9,11 @@
|
|
|
9
9
|
<script lang="ts" setup>
|
|
10
10
|
import { SettingsMenuItem } from "../settings-menu-item";
|
|
11
11
|
import { LogoutIcon } from "../../../ui/components/atoms/vc-icon/icons";
|
|
12
|
-
import {
|
|
12
|
+
import { useUserManagement } from "../../../core/composables/useUserManagement";
|
|
13
13
|
import { useRouter } from "vue-router";
|
|
14
14
|
import { useBladeNavigation } from "../blade-navigation";
|
|
15
15
|
|
|
16
|
-
const { signOut } =
|
|
16
|
+
const { signOut } = useUserManagement();
|
|
17
17
|
const router = useRouter();
|
|
18
18
|
const { closeBlade } = useBladeNavigation();
|
|
19
19
|
|
|
@@ -10,12 +10,9 @@
|
|
|
10
10
|
</template>
|
|
11
11
|
|
|
12
12
|
<script lang="ts" setup>
|
|
13
|
-
import { inject } from "vue";
|
|
14
13
|
import { useSettingsMenu } from "../../../core/composables/useSettingsMenu";
|
|
15
|
-
import { SettingsMenuServiceKey } from "../../../injection-keys";
|
|
16
14
|
|
|
17
|
-
const
|
|
18
|
-
const { items } = settingsMenu;
|
|
15
|
+
const { items } = useSettingsMenu();
|
|
19
16
|
</script>
|
|
20
17
|
|
|
21
18
|
<style lang="scss">
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
<slot name="content" />
|
|
42
42
|
</div>
|
|
43
43
|
</template>
|
|
44
|
-
|
|
44
|
+
<!-- eslint-disable @typescript-eslint/no-explicit-any -->
|
|
45
45
|
<script lang="ts" setup>
|
|
46
46
|
import { Component } from "vue";
|
|
47
47
|
import { VcIcon, VcImage } from "../../../ui/components";
|
|
@@ -62,6 +62,14 @@ const props = withDefaults(defineProps<Props>(), {
|
|
|
62
62
|
triggerAction: "click",
|
|
63
63
|
});
|
|
64
64
|
|
|
65
|
+
defineSlots<{
|
|
66
|
+
trigger: (props: any) => any;
|
|
67
|
+
icon: (props: any) => any;
|
|
68
|
+
title: (props: any) => any;
|
|
69
|
+
additional: (props: any) => any;
|
|
70
|
+
content: (props: any) => any;
|
|
71
|
+
}>();
|
|
72
|
+
|
|
65
73
|
const emit = defineEmits<{
|
|
66
74
|
(e: "trigger:click"): void;
|
|
67
75
|
(e: "trigger:hover"): void;
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
</template>
|
|
43
43
|
</Teleport>
|
|
44
44
|
</template>
|
|
45
|
-
|
|
45
|
+
<!-- eslint-disable @typescript-eslint/no-explicit-any -->
|
|
46
46
|
<script lang="ts" setup>
|
|
47
47
|
import { h } from "vue";
|
|
48
48
|
import { VcIcon, CrossSignIcon } from "../../../ui/components";
|
|
@@ -59,6 +59,11 @@ export interface Emits {
|
|
|
59
59
|
(event: "close"): void;
|
|
60
60
|
}
|
|
61
61
|
|
|
62
|
+
defineSlots<{
|
|
63
|
+
header: (props: any) => any;
|
|
64
|
+
content: (props: any) => any;
|
|
65
|
+
}>();
|
|
66
|
+
|
|
62
67
|
const emit = defineEmits<Emits>();
|
|
63
68
|
|
|
64
69
|
const props = withDefaults(defineProps<Props>(), {
|
|
@@ -16,16 +16,16 @@
|
|
|
16
16
|
<GenericDropdown
|
|
17
17
|
:opened="opened"
|
|
18
18
|
:items="themes"
|
|
19
|
-
:is-item-active="(theme) => theme ===
|
|
19
|
+
:is-item-active="(theme) => theme.key === currentThemeKey"
|
|
20
20
|
@item-click="handleThemeSelect"
|
|
21
21
|
>
|
|
22
22
|
<template #item="{ item: theme, click }">
|
|
23
23
|
<div
|
|
24
24
|
class="vc-theme-selector__item"
|
|
25
|
-
:class="{ 'vc-theme-selector__item--active': theme ===
|
|
25
|
+
:class="{ 'vc-theme-selector__item--active': theme.key === currentThemeKey }"
|
|
26
26
|
@click="click"
|
|
27
27
|
>
|
|
28
|
-
<span class="vc-theme-selector__item-title">{{
|
|
28
|
+
<span class="vc-theme-selector__item-title">{{ theme.name }}</span>
|
|
29
29
|
</div>
|
|
30
30
|
</template>
|
|
31
31
|
</GenericDropdown>
|
|
@@ -38,24 +38,24 @@ import { GenericDropdown } from "../generic-dropdown";
|
|
|
38
38
|
import { useTheme } from "../../../core/composables/useTheme";
|
|
39
39
|
import { ref, watch } from "vue";
|
|
40
40
|
import { notification } from "..";
|
|
41
|
-
import * as _ from "lodash-es";
|
|
42
41
|
import { SettingsMenuItem } from "../settings-menu-item";
|
|
43
42
|
import { VcIcon } from "../../../ui/components";
|
|
44
43
|
|
|
45
|
-
const {
|
|
44
|
+
const { currentThemeKey, currentLocalizedName, themes, setTheme } = useTheme();
|
|
46
45
|
const opened = ref(false);
|
|
47
46
|
|
|
48
|
-
const handleThemeSelect = (theme: string) => {
|
|
49
|
-
setTheme(theme);
|
|
47
|
+
const handleThemeSelect = (theme: { key: string; name: string }) => {
|
|
48
|
+
setTheme(theme.key);
|
|
50
49
|
opened.value = false;
|
|
51
50
|
};
|
|
52
51
|
|
|
53
52
|
watch(
|
|
54
|
-
() =>
|
|
55
|
-
(
|
|
56
|
-
|
|
53
|
+
() => currentLocalizedName.value,
|
|
54
|
+
(newLocalizedName) => {
|
|
55
|
+
if (newLocalizedName) {
|
|
56
|
+
notification(newLocalizedName);
|
|
57
|
+
}
|
|
57
58
|
},
|
|
58
|
-
{ deep: true },
|
|
59
59
|
);
|
|
60
60
|
</script>
|
|
61
61
|
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
|
|
32
32
|
<script lang="ts" setup>
|
|
33
33
|
import { computed } from "vue";
|
|
34
|
-
import {
|
|
34
|
+
import { useUserManagement } from "../../../../core/composables/useUserManagement";
|
|
35
35
|
import { VcIcon } from "../../../../ui/components";
|
|
36
36
|
|
|
37
37
|
export interface Props {
|
|
@@ -42,7 +42,7 @@ export interface Props {
|
|
|
42
42
|
}
|
|
43
43
|
|
|
44
44
|
const props = defineProps<Props>();
|
|
45
|
-
const { user } =
|
|
45
|
+
const { user } = useUserManagement();
|
|
46
46
|
|
|
47
47
|
const imageHandler = computed(() => {
|
|
48
48
|
if (props.avatarUrl) {
|