Skip to content

Commit 4fe992f

Browse files
committed
Merge branch 'develop' into feature-service-account-budget
Signed-off-by: 이승연 <[email protected]>
2 parents 50282db + 2f92161 commit 4fe992f

File tree

121 files changed

+4702
-3323
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

121 files changed

+4702
-3323
lines changed

Diff for: apps/web/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "web",
3-
"version": "2.0.0-dev344",
3+
"version": "2.0.0-dev346",
44
"private": true,
55
"description": "Cloudforet Console Web Application",
66
"author": "Cloudforet",

Diff for: apps/web/src/api-clients/_common/composables/use-scoped-query.ts

+2-1
Original file line numberDiff line numberDiff line change
@@ -68,8 +68,9 @@ export const useScopedQuery = <TQueryFnData = unknown, TError = unknown, TData =
6868
isValidScope: computed(() => requiredScopes.includes(_state.currentGrantScope)),
6969
});
7070

71-
const queryEnabled = computed<boolean>(() => {
71+
const queryEnabled = computed<boolean|undefined>(() => {
7272
const _inheritedEnabled = options?.enabled as MaybeRef<boolean> | undefined;
73+
if (_inheritedEnabled === undefined) return undefined;
7374
if (_inheritedEnabled !== undefined && !toValue(_inheritedEnabled)) return false;
7475
return _state.isValidScope && !_state.isLoading;
7576
});

Diff for: apps/web/src/api-clients/dashboard/private-dashboard/composables/use-private-dashboard-api.ts

-13
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,5 @@
1-
import type { ComputedRef } from 'vue';
2-
3-
import type { QueryKey } from '@tanstack/vue-query';
4-
51
import { SpaceConnector } from '@cloudforet/core-lib/space-connector';
62

7-
import { useAPIQueryKey } from '@/api-clients/_common/composables/use-api-query-key';
83
import type { ListResponse } from '@/api-clients/_common/schema/api-verbs/list';
94
import type { PrivateDashboardChangeFolderParameters } from '@/api-clients/dashboard/private-dashboard/schema/api-verbs/change-folder';
105
import type { PrivateDashboardCreateParameters } from '@/api-clients/dashboard/private-dashboard/schema/api-verbs/create';
@@ -15,8 +10,6 @@ import type { PrivateDashboardUpdateParameters } from '@/api-clients/dashboard/p
1510
import type { PrivateDashboardModel } from '@/api-clients/dashboard/private-dashboard/schema/model';
1611

1712
interface UsePrivateDashboardApiReturn {
18-
privateDashboardGetQueryKey: ComputedRef<QueryKey>;
19-
privateDashboardListQueryKey: ComputedRef<QueryKey>;
2013
privateDashboardAPI: {
2114
create: (params: PrivateDashboardCreateParameters) => Promise<PrivateDashboardModel>;
2215
update: (params: PrivateDashboardUpdateParameters) => Promise<PrivateDashboardModel>;
@@ -27,11 +20,7 @@ interface UsePrivateDashboardApiReturn {
2720
}
2821
}
2922

30-
3123
export const usePrivateDashboardApi = (): UsePrivateDashboardApiReturn => {
32-
const privateDashboardGetQueryKey = useAPIQueryKey('dashboard', 'private-dashboard', 'get');
33-
const privateDashboardListQueryKey = useAPIQueryKey('dashboard', 'private-dashboard', 'list');
34-
3524
const actions = {
3625
async create(params: PrivateDashboardCreateParameters) {
3726
return SpaceConnector.clientV2.dashboard.privateDashboard.create<PrivateDashboardCreateParameters, PrivateDashboardModel>(params);
@@ -54,8 +43,6 @@ export const usePrivateDashboardApi = (): UsePrivateDashboardApiReturn => {
5443
};
5544

5645
return {
57-
privateDashboardGetQueryKey,
58-
privateDashboardListQueryKey,
5946
privateDashboardAPI: actions,
6047
};
6148
};

Diff for: apps/web/src/api-clients/dashboard/private-data-table/composables/use-private-data-table-api.ts

-15
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,5 @@
1-
import type { ComputedRef } from 'vue';
2-
3-
import type { QueryKey } from '@tanstack/vue-query';
4-
51
import { SpaceConnector } from '@cloudforet/core-lib/space-connector';
62

7-
import { useAPIQueryKey } from '@/api-clients/_common/composables/use-api-query-key';
83
import type { ListResponse } from '@/api-clients/_common/schema/api-verbs/list';
94
import type { DataTableLoadResponse } from '@/api-clients/dashboard/_types/widget-type';
105
import type { PrivateDataTableModel } from '@/api-clients/dashboard/private-data-table/schema/model';
@@ -17,9 +12,6 @@ import type { DataTableTransformParameters } from '@/api-clients/dashboard/publi
1712
import type { DataTableUpdateParameters } from '@/api-clients/dashboard/public-data-table/schema/api-verbs/update';
1813

1914
interface UsePrivateDataTableApiReturn {
20-
privateDataTableGetQueryKey: ComputedRef<QueryKey>;
21-
privateDataTableListQueryKey: ComputedRef<QueryKey>;
22-
privateDataTableLoadQueryKey: ComputedRef<QueryKey>;
2315
privateDataTableAPI: {
2416
add: (params: DataTableAddParameters) => Promise<PrivateDataTableModel>;
2517
transform: (params: DataTableTransformParameters) => Promise<PrivateDataTableModel>;
@@ -32,10 +24,6 @@ interface UsePrivateDataTableApiReturn {
3224
}
3325

3426
export const usePrivateDataTableApi = (): UsePrivateDataTableApiReturn => {
35-
const privateDataTableGetQueryKey = useAPIQueryKey('dashboard', 'private-data-table', 'get');
36-
const privateDataTableListQueryKey = useAPIQueryKey('dashboard', 'private-dashboard', 'list');
37-
const privateDataTableLoadQueryKey = useAPIQueryKey('dashboard', 'private-dashboard', 'list');
38-
3927
const action = {
4028
async add(params: DataTableAddParameters) {
4129
return SpaceConnector.clientV2.dashboard.privateDataTable.add<DataTableAddParameters, PrivateDataTableModel>(params);
@@ -61,9 +49,6 @@ export const usePrivateDataTableApi = (): UsePrivateDataTableApiReturn => {
6149
};
6250

6351
return {
64-
privateDataTableGetQueryKey,
65-
privateDataTableListQueryKey,
66-
privateDataTableLoadQueryKey,
6752
privateDataTableAPI: action,
6853
};
6954
};

Diff for: apps/web/src/api-clients/dashboard/private-folder/composables/use-private-folder-api.ts

-12
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,5 @@
1-
import type { ComputedRef } from 'vue';
2-
3-
import type { QueryKey } from '@tanstack/vue-query';
4-
51
import { SpaceConnector } from '@cloudforet/core-lib/space-connector';
62

7-
import { useAPIQueryKey } from '@/api-clients/_common/composables/use-api-query-key';
83
import type { ListResponse } from '@/api-clients/_common/schema/api-verbs/list';
94
import type { PrivateFolderCreateParameters } from '@/api-clients/dashboard/private-folder/schema/api-verbs/create';
105
import type { PrivateFolderDeleteParameters } from '@/api-clients/dashboard/private-folder/schema/api-verbs/delete';
@@ -14,8 +9,6 @@ import type { PrivateFolderUpdateParameters } from '@/api-clients/dashboard/priv
149
import type { PrivateFolderModel } from '@/api-clients/dashboard/private-folder/schema/model';
1510

1611
interface UsePrivateFolderApiReturn {
17-
privateFolderGetQueryKey: ComputedRef<QueryKey>;
18-
privateFolderListQueryKey: ComputedRef<QueryKey>;
1912
privateFolderAPI: {
2013
create: (params: PrivateFolderCreateParameters) => Promise<PrivateFolderModel>;
2114
update: (params: PrivateFolderUpdateParameters) => Promise<PrivateFolderModel>;
@@ -26,9 +19,6 @@ interface UsePrivateFolderApiReturn {
2619
}
2720

2821
export const usePrivateFolderApi = (): UsePrivateFolderApiReturn => {
29-
const privateFolderGetQueryKey = useAPIQueryKey('dashboard', 'private-folder', 'get');
30-
const privateFolderListQueryKey = useAPIQueryKey('dashboard', 'private-folder', 'list');
31-
3222
const action = {
3323
async create(params: PrivateFolderCreateParameters) {
3424
return SpaceConnector.clientV2.dashboard.privateFolder.create<PrivateFolderCreateParameters, PrivateFolderModel>(params);
@@ -48,8 +38,6 @@ export const usePrivateFolderApi = (): UsePrivateFolderApiReturn => {
4838
};
4939

5040
return {
51-
privateFolderGetQueryKey,
52-
privateFolderListQueryKey,
5341
privateFolderAPI: action,
5442
};
5543
};

Diff for: apps/web/src/api-clients/dashboard/private-widget/composables/use-private-widget-api.ts

-18
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,5 @@
1-
import type { ComputedRef } from 'vue';
2-
3-
import type { QueryKey } from '@tanstack/vue-query';
4-
51
import { SpaceConnector } from '@cloudforet/core-lib/space-connector';
62

7-
import { useAPIQueryKey } from '@/api-clients/_common/composables/use-api-query-key';
83
import type { ListResponse } from '@/api-clients/_common/schema/api-verbs/list';
94
import type { WidgetLoadResponse } from '@/api-clients/dashboard/_types/widget-type';
105
import type { PrivateWidgetCreateParameters } from '@/api-clients/dashboard/private-widget/schema/api-verbs/create';
@@ -17,10 +12,6 @@ import type { PrivateWidgetUpdateParameters } from '@/api-clients/dashboard/priv
1712
import type { PrivateWidgetModel } from '@/api-clients/dashboard/private-widget/schema/model';
1813

1914
interface UsePrivateWidgetApiReturn {
20-
privateWidgetGetQueryKey: ComputedRef<QueryKey>;
21-
privateWidgetListQueryKey: ComputedRef<QueryKey>;
22-
privateWidgetLoadQueryKey: ComputedRef<QueryKey>;
23-
privateWidgetLoadSumQueryKey: ComputedRef<QueryKey>;
2415
privateWidgetAPI: {
2516
create: (params: PrivateWidgetCreateParameters) => Promise<PrivateWidgetModel>;
2617
update: (params: PrivateWidgetUpdateParameters) => Promise<PrivateWidgetModel>;
@@ -33,11 +24,6 @@ interface UsePrivateWidgetApiReturn {
3324
}
3425

3526
export const usePrivateWidgetApi = (): UsePrivateWidgetApiReturn => {
36-
const privateWidgetGetQueryKey = useAPIQueryKey('dashboard', 'private-widget', 'get');
37-
const privateWidgetListQueryKey = useAPIQueryKey('dashboard', 'private-widget', 'list');
38-
const privateWidgetLoadQueryKey = useAPIQueryKey('dashboard', 'private-widget', 'load');
39-
const privateWidgetLoadSumQueryKey = useAPIQueryKey('dashboard', 'private-widget', 'load-sum');
40-
4127
const action = {
4228
async create(params: PrivateWidgetCreateParameters) {
4329
return SpaceConnector.clientV2.dashboard.privateWidget.create<PrivateWidgetCreateParameters, PrivateWidgetModel>(params);
@@ -63,10 +49,6 @@ export const usePrivateWidgetApi = (): UsePrivateWidgetApiReturn => {
6349
};
6450

6551
return {
66-
privateWidgetGetQueryKey,
67-
privateWidgetListQueryKey,
68-
privateWidgetLoadQueryKey,
69-
privateWidgetLoadSumQueryKey,
7052
privateWidgetAPI: action,
7153
};
7254
};

Diff for: apps/web/src/api-clients/dashboard/public-dashboard/composables/use-public-dashboard-api.ts

-12
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,5 @@
1-
import type { ComputedRef } from 'vue';
2-
3-
import type { QueryKey } from '@tanstack/vue-query';
4-
51
import { SpaceConnector } from '@cloudforet/core-lib/space-connector';
62

7-
import { useAPIQueryKey } from '@/api-clients/_common/composables/use-api-query-key';
83
import type { ListResponse } from '@/api-clients/_common/schema/api-verbs/list';
94
import type { PublicDashboardChangeFolderParameters } from '@/api-clients/dashboard/public-dashboard/schema/api-verbs/change-folder';
105
import type { PublicDashboardCreateParameters } from '@/api-clients/dashboard/public-dashboard/schema/api-verbs/create';
@@ -17,8 +12,6 @@ import type { PublicDashboardUpdateParameters } from '@/api-clients/dashboard/pu
1712
import type { PublicDashboardModel } from '@/api-clients/dashboard/public-dashboard/schema/model';
1813

1914
interface UsePublicDashboardApiReturn {
20-
publicDashboardGetQueryKey: ComputedRef<QueryKey>;
21-
publicDashboardListQueryKey: ComputedRef<QueryKey>;
2215
publicDashboardAPI: {
2316
create: (params: PublicDashboardCreateParameters) => Promise<PublicDashboardModel>;
2417
update: (params: PublicDashboardUpdateParameters) => Promise<PublicDashboardModel>;
@@ -32,9 +25,6 @@ interface UsePublicDashboardApiReturn {
3225
}
3326

3427
export const usePublicDashboardApi = (): UsePublicDashboardApiReturn => {
35-
const publicDashboardGetQueryKey = useAPIQueryKey('dashboard', 'public-dashboard', 'get');
36-
const publicDashboardListQueryKey = useAPIQueryKey('dashboard', 'public-dashboard', 'list');
37-
3828
const actions = {
3929
async create(params: PublicDashboardCreateParameters) {
4030
return SpaceConnector.clientV2.dashboard.publicDashboard.create<PublicDashboardCreateParameters, PublicDashboardModel>(params);
@@ -63,8 +53,6 @@ export const usePublicDashboardApi = (): UsePublicDashboardApiReturn => {
6353
};
6454

6555
return {
66-
publicDashboardGetQueryKey,
67-
publicDashboardListQueryKey,
6856
publicDashboardAPI: actions,
6957
};
7058
};

Diff for: apps/web/src/api-clients/dashboard/public-data-table/composables/use-public-data-table-api.ts

-15
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,5 @@
1-
import type { ComputedRef } from 'vue';
2-
3-
import type { QueryKey } from '@tanstack/vue-query';
4-
51
import { SpaceConnector } from '@cloudforet/core-lib/space-connector';
62

7-
import { useAPIQueryKey } from '@/api-clients/_common/composables/use-api-query-key';
83
import type { ListResponse } from '@/api-clients/_common/schema/api-verbs/list';
94
import type { DataTableLoadResponse } from '@/api-clients/dashboard/_types/widget-type';
105
import type { DataTableAddParameters } from '@/api-clients/dashboard/public-data-table/schema/api-verbs/add';
@@ -18,9 +13,6 @@ import type { PublicDataTableModel } from '@/api-clients/dashboard/public-data-t
1813

1914

2015
interface UsePublicDataTableApiReturn {
21-
publicDataTableGetQueryKey: ComputedRef<QueryKey>;
22-
publicDataTableListQueryKey: ComputedRef<QueryKey>;
23-
publicDataTableLoadQueryKey: ComputedRef<QueryKey>;
2416
publicDataTableAPI: {
2517
add: (params: DataTableAddParameters) => Promise<PublicDataTableModel>;
2618
transform: (params: DataTableTransformParameters) => Promise<PublicDataTableModel>;
@@ -33,10 +25,6 @@ interface UsePublicDataTableApiReturn {
3325
}
3426

3527
export const usePublicDataTableApi = (): UsePublicDataTableApiReturn => {
36-
const publicDataTableGetQueryKey = useAPIQueryKey('dashboard', 'public-data-table', 'get');
37-
const publicDataTableListQueryKey = useAPIQueryKey('dashboard', 'public-data-table', 'list');
38-
const publicDataTableLoadQueryKey = useAPIQueryKey('dashboard', 'public-data-table', 'load');
39-
4028
const action = {
4129
async add(params: DataTableAddParameters) {
4230
return SpaceConnector.clientV2.dashboard.publicDataTable.add<DataTableAddParameters, PublicDataTableModel>(params);
@@ -62,9 +50,6 @@ export const usePublicDataTableApi = (): UsePublicDataTableApiReturn => {
6250
};
6351

6452
return {
65-
publicDataTableGetQueryKey,
66-
publicDataTableListQueryKey,
67-
publicDataTableLoadQueryKey,
6853
publicDataTableAPI: action,
6954
};
7055
};

Diff for: apps/web/src/api-clients/dashboard/public-folder/composables/use-public-folder-api.ts

-12
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,5 @@
1-
import type { ComputedRef } from 'vue';
2-
3-
import type { QueryKey } from '@tanstack/vue-query';
4-
51
import { SpaceConnector } from '@cloudforet/core-lib/space-connector';
62

7-
import { useAPIQueryKey } from '@/api-clients/_common/composables/use-api-query-key';
83
import type { ListResponse } from '@/api-clients/_common/schema/api-verbs/list';
94
import type { PublicFolderCreateParameters } from '@/api-clients/dashboard/public-folder/schema/api-verbs/create';
105
import type { PublicFolderDeleteParameters } from '@/api-clients/dashboard/public-folder/schema/api-verbs/delete';
@@ -16,8 +11,6 @@ import type { PublicFolderUpdateParameters } from '@/api-clients/dashboard/publi
1611
import type { PublicFolderModel } from '@/api-clients/dashboard/public-folder/schema/model';
1712

1813
interface UsePublicFolderApiReturn {
19-
publicFolderGetQueryKey: ComputedRef<QueryKey>;
20-
publicFolderListQueryKey: ComputedRef<QueryKey>;
2114
publicFolderAPI: {
2215
create: (params: PublicFolderCreateParameters) => Promise<PublicFolderModel>;
2316
update: (params: PublicFolderUpdateParameters) => Promise<PublicFolderModel>;
@@ -30,9 +23,6 @@ interface UsePublicFolderApiReturn {
3023
}
3124

3225
export const usePublicFolderApi = (): UsePublicFolderApiReturn => {
33-
const publicFolderGetQueryKey = useAPIQueryKey('dashboard', 'public-folder', 'get');
34-
const publicFolderListQueryKey = useAPIQueryKey('dashboard', 'public-folder', 'list');
35-
3626
const action = {
3727
async create(params: PublicFolderCreateParameters) {
3828
return SpaceConnector.clientV2.dashboard.publicFolder.create<PublicFolderCreateParameters, PublicFolderModel>(params);
@@ -58,8 +48,6 @@ export const usePublicFolderApi = (): UsePublicFolderApiReturn => {
5848
};
5949

6050
return {
61-
publicFolderGetQueryKey,
62-
publicFolderListQueryKey,
6351
publicFolderAPI: action,
6452
};
6553
};

Diff for: apps/web/src/api-clients/dashboard/public-widget/composables/use-public-widget-api.ts

-18
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,5 @@
1-
import type { ComputedRef } from 'vue';
2-
3-
import type { QueryKey } from '@tanstack/vue-query';
4-
51
import { SpaceConnector } from '@cloudforet/core-lib/space-connector';
62

7-
import { useAPIQueryKey } from '@/api-clients/_common/composables/use-api-query-key';
83
import type { ListResponse } from '@/api-clients/_common/schema/api-verbs/list';
94
import type { WidgetLoadResponse } from '@/api-clients/dashboard/_types/widget-type';
105
import type { PublicWidgetCreateParameters } from '@/api-clients/dashboard/public-widget/schema/api-verbs/create';
@@ -17,10 +12,6 @@ import type { PublicWidgetUpdateParameters } from '@/api-clients/dashboard/publi
1712
import type { PublicWidgetModel } from '@/api-clients/dashboard/public-widget/schema/model';
1813

1914
interface UsePublicWidgetApiReturn {
20-
publicWidgetGetQueryKey: ComputedRef<QueryKey>;
21-
publicWidgetListQueryKey: ComputedRef<QueryKey>;
22-
publicWidgetLoadQueryKey: ComputedRef<QueryKey>;
23-
publicWidgetLoadSumQueryKey: ComputedRef<QueryKey>;
2415
publicWidgetAPI: {
2516
create: (params: PublicWidgetCreateParameters) => Promise<PublicWidgetModel>;
2617
update: (params: PublicWidgetUpdateParameters) => Promise<PublicWidgetModel>;
@@ -33,11 +24,6 @@ interface UsePublicWidgetApiReturn {
3324
}
3425

3526
export const usePublicWidgetApi = (): UsePublicWidgetApiReturn => {
36-
const publicWidgetGetQueryKey = useAPIQueryKey('dashboard', 'public-widget', 'get');
37-
const publicWidgetListQueryKey = useAPIQueryKey('dashboard', 'public-widget', 'list');
38-
const publicWidgetLoadQueryKey = useAPIQueryKey('dashboard', 'public-widget', 'load');
39-
const publicWidgetLoadSumQueryKey = useAPIQueryKey('dashboard', 'public-widget', 'load-sum');
40-
4127
const action = {
4228
async create(params: PublicWidgetCreateParameters) {
4329
return SpaceConnector.clientV2.dashboard.publicWidget.create<PublicWidgetCreateParameters, PublicWidgetModel>(params);
@@ -63,10 +49,6 @@ export const usePublicWidgetApi = (): UsePublicWidgetApiReturn => {
6349
};
6450

6551
return {
66-
publicWidgetGetQueryKey,
67-
publicWidgetListQueryKey,
68-
publicWidgetLoadQueryKey,
69-
publicWidgetLoadSumQueryKey,
7052
publicWidgetAPI: action,
7153
};
7254
};

Diff for: apps/web/src/common/components/buttons/ActionMenuButton.vue

+8-4
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
<script setup lang="ts">
22
import { onClickOutside } from '@vueuse/core';
3-
import { ref, computed } from 'vue';
3+
import { ref, computed, toRef } from 'vue';
44
55
import { PIconButton, PContextMenu, useContextMenuStyle } from '@cloudforet/mirinae';
6+
import type { IconButtonSize, IconButtonStyleType } from '@cloudforet/mirinae/types/controls/buttons/icon-button/type';
7+
import type { ContextMenuPosition } from '@cloudforet/mirinae/types/controls/dropdown/select-dropdown/type';
68
79
import { i18n } from '@/translations';
810
@@ -12,12 +14,14 @@ import type { ActionMenuItem } from './type';
1214
type SupportMenu = 'edit' | 'delete';
1315
const props = withDefaults(defineProps<{
1416
menu?: Array<SupportMenu|ActionMenuItem>;
15-
styleType?: string;
16-
size?: string;
17+
styleType?: IconButtonStyleType;
18+
size?: IconButtonSize;
19+
position?: ContextMenuPosition;
1720
}>(), {
1821
menu: undefined,
1922
styleType: 'transparent',
2023
size: 'md',
24+
position: 'right',
2125
});
2226
const emit = defineEmits<{(event: 'edit'): void;
2327
(event: 'delete'): void;
@@ -33,7 +37,7 @@ useContextMenuStyle({
3337
menuRef,
3438
visibleMenu,
3539
useFixedMenuStyle: true,
36-
position: 'right',
40+
position: toRef(props, 'position'),
3741
menuWidth: props.size === 'sm' ? '113px' : '192px',
3842
});
3943
const menuMap = computed<Record<SupportMenu, ActionMenuItem>>(() => ({

Diff for: apps/web/src/common/modules/navigations/new-lsb/LSBDivider.vue

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import { PDivider } from '@cloudforet/mirinae';
33
</script>
44

55
<template>
6-
<div class="pt-1 pb-3 px-2 my-2">
6+
<div class="pt-2 pb-2">
77
<p-divider />
88
</div>
99
</template>

0 commit comments

Comments
 (0)