From d13935255bb8e7c5271eeb72d05b12fa40f87f37 Mon Sep 17 00:00:00 2001 From: "NaYeong,Kim" Date: Fri, 23 May 2025 14:25:03 +0900 Subject: [PATCH 01/13] Merge pull request #5866 from skdud4659/feature/alert-manager refactor: refactor alert-manager API to api-client format --- .../_common/constants/api-doc-constant.ts | 95 ++++++ .../alert/composables/use-alert-api.ts | 26 ++ .../alert/schema}/api-verbs/create.ts | 2 +- .../alert/schema}/api-verbs/delete.ts | 0 .../alert/schema}/api-verbs/get.ts | 0 .../alert/schema}/api-verbs/history.ts | 0 .../alert/schema}/api-verbs/list.ts | 2 +- .../alert/schema}/api-verbs/update.ts | 2 +- .../alert-manager/alert/schema}/constants.ts | 0 .../alert-manager/alert/schema}/model.ts | 2 +- .../alert-manager/alert/schema}/type.ts | 2 +- .../composables/use-escalation-policy-api.ts | 24 ++ .../schema}/api-verbs/create.ts | 2 +- .../schema}/api-verbs/delete.ts | 0 .../schema}/api-verbs/get.ts | 0 .../schema}/api-verbs/list.ts | 2 +- .../schema}/api-verbs/update.ts | 2 +- .../escalation-policy/schema}/constants.ts | 0 .../escalation-policy/schema}/model.ts | 2 +- .../escalation-policy/schema}/type.ts | 2 +- .../composables/use-event-rule-api.ts | 26 ++ .../schema}/api-verbs/change-order.ts | 0 .../event-rule/schema}/api-verbs/create.ts | 2 +- .../event-rule/schema}/api-verbs/delete.ts | 0 .../event-rule/schema}/api-verbs/get.ts | 0 .../event-rule/schema}/api-verbs/list.ts | 0 .../event-rule/schema}/api-verbs/update.ts | 2 +- .../event-rule/schema/constants.ts} | 0 .../alert-manager/event-rule/schema}/model.ts | 2 +- .../alert-manager/event-rule/schema}/type.ts | 4 +- .../event/composables/use-event-api.ts | 15 + .../event/schema}/api-verbs/create.ts | 0 .../alert-manager/event/schema}/constants.ts | 0 .../alert-manager/event/schema}/model.ts | 2 +- .../alert-manager/event/schema}/type.ts | 2 +- .../note/composables/use-note-api.ts | 24 ++ .../note/schema}/api-verbs/create.ts | 0 .../note/schema}/api-verbs/delete.ts | 0 .../note/schema}/api-verbs/get.ts | 0 .../note/schema}/api-verbs/list.ts | 0 .../note/schema}/api-verbs/update.ts | 0 .../alert-manager/note/schema}/model.ts | 0 .../use-notification-protocol-api.ts | 32 ++ .../schema}/api-verbs/create.ts | 3 +- .../schema}/api-verbs/delete.ts | 0 .../schema}/api-verbs/disable.ts | 0 .../schema}/api-verbs/enable.ts | 0 .../schema}/api-verbs/get.ts | 0 .../schema}/api-verbs/list.ts | 2 +- .../schema}/api-verbs/update-plugin.ts | 2 +- .../schema}/api-verbs/update.ts | 0 .../schema}/api-verbs/verify-plugin.ts | 0 .../schema}/constants.ts | 0 .../notification-protocol/schema}/model.ts | 2 +- .../notification-protocol/schema}/type.ts | 2 +- .../composables/use-service-channel-api.ts | 29 ++ .../api-verbs/create-forward-channel.ts | 2 +- .../schema}/api-verbs/create.ts | 2 +- .../schema}/api-verbs/delete.ts | 0 .../schema}/api-verbs/disable.ts | 0 .../schema}/api-verbs/enable.ts | 0 .../service-channel/schema}/api-verbs/get.ts | 0 .../service-channel/schema}/api-verbs/list.ts | 2 +- .../schema}/api-verbs/update.ts | 2 +- .../service-channel/schema}/constants.ts | 0 .../service-channel/schema}/model.ts | 5 +- .../service-channel/schema}/type.ts | 2 +- .../service/composables/use-service-api.ts | 26 ++ .../schema/api-verbs/change-members.ts} | 2 +- .../service/schema}/api-verbs/create.ts | 2 +- .../service/schema}/api-verbs/delete.ts | 0 .../service/schema}/api-verbs/get.ts | 0 .../service/schema}/api-verbs/list.ts | 0 .../service/schema}/api-verbs/update.ts | 2 +- .../service/schema}/constants.ts | 0 .../alert-manager/service/schema}/model.ts | 2 +- .../alert-manager/service/schema}/type.ts | 2 +- .../composables/use-user-channel-api.ts | 28 ++ .../user-channel/schema}/api-verbs/create.ts | 2 +- .../user-channel/schema}/api-verbs/delete.ts | 0 .../user-channel/schema}/api-verbs/disable.ts | 0 .../user-channel/schema}/api-verbs/enable.ts | 0 .../user-channel/schema}/api-verbs/get.ts | 0 .../user-channel/schema}/api-verbs/list.ts | 2 +- .../user-channel/schema}/api-verbs/update.ts | 2 +- .../user-channel/schema}/constants.ts | 0 .../user-channel/schema}/model.ts | 2 +- .../user-channel/schema}/type.ts | 2 +- .../composables/use-user-group-channel-api.ts | 28 ++ .../schema}/api-verbs/create.ts | 2 +- .../schema}/api-verbs/delete.ts | 0 .../schema}/api-verbs/disable.ts | 0 .../schema}/api-verbs/enable.ts | 0 .../schema}/api-verbs/get.ts | 0 .../schema}/api-verbs/list.ts | 2 +- .../schema}/api-verbs/update.ts | 2 +- .../user-group-channel/schema}/constants.ts | 0 .../user-group-channel/schema}/model.ts | 2 +- .../user-group-channel/schema}/type.ts | 2 +- .../webhook/composables/use-webhook-api.ts | 36 ++ .../webhook/schema}/api-verbs/create.ts | 2 +- .../webhook/schema}/api-verbs/delete.ts | 0 .../webhook/schema}/api-verbs/disable.ts | 0 .../webhook/schema}/api-verbs/enable.ts | 0 .../webhook/schema}/api-verbs/get.ts | 0 .../webhook/schema}/api-verbs/list-errors.ts | 2 +- .../webhook/schema}/api-verbs/list.ts | 2 +- .../api-verbs/update-message-format.ts | 2 +- .../schema}/api-verbs/update-plugin.ts | 0 .../webhook/schema}/api-verbs/update.ts | 0 .../schema}/api-verbs/verify-plugin.ts | 0 .../webhook/schema}/constants.ts | 0 .../alert-manager/webhook/schema}/model.ts | 2 +- .../alert-manager/webhook/schema}/type.ts | 2 +- .../identity/user-group/schema/model.ts | 2 +- .../ScheduleSettingForm.vue | 2 +- .../modules/user/UserSelectDropdown.vue | 2 +- .../common/pages/AlertPublicDetailPage.vue | 2 +- .../resource-model/service-variable-model.ts | 2 +- .../schema/monitoring/alert/api-verbs/list.ts | 12 +- .../v1/components/AlertDetailInfoTable.vue | 6 +- .../v1/components/AlertMainDataTable.vue | 2 +- .../v1/stores/alert-assign-user-store.ts | 6 +- .../v1/stores/alert-page-store.ts | 11 +- .../alert-manager/v2/AlertContainer.vue | 1 - .../v2/components/AlertCreateModal.vue | 59 ++-- .../v2/components/AlertDetailDeleteModal.vue | 4 +- .../v2/components/AlertDetailEditModal.vue | 2 +- .../v2/components/AlertDetailInfoTable.vue | 11 +- .../v2/components/AlertDetailNote.vue | 10 +- .../v2/components/AlertDetailSummary.vue | 6 +- .../v2/components/AlertDetailTabsDetails.vue | 2 +- .../v2/components/AlertDetailTabsTimeline.vue | 8 +- .../AlertDetailTabsTimelineModal.vue | 6 +- .../v2/components/AlertsDetailHeader.vue | 2 +- .../v2/components/AlertsManagementTable.vue | 313 ++++++++++-------- .../v2/components/NotificationsCreateForm.vue | 4 +- .../NotificationsCreateTypeSelector.vue | 2 +- .../v2/components/ServiceCreateStep1.vue | 6 +- .../v2/components/ServiceCreateStep2.vue | 4 +- .../v2/components/ServiceCreateStep3.vue | 7 +- .../v2/components/ServiceDetailHeader.vue | 4 +- .../components/ServiceDetailMemberModal.vue | 9 +- .../ServiceDetailTabsNotifications.vue | 8 +- ...viceDetailTabsNotificationsDeleteModal.vue | 12 +- .../ServiceDetailTabsNotificationsDetail.vue | 8 +- ...rviceDetailTabsNotificationsTableModal.vue | 10 +- ...viceDetailTabsNotificationsUpdateModal.vue | 8 +- ...viceDetailTabsOverviewEscalationPolicy.vue | 6 +- .../ServiceDetailTabsOverviewNotification.vue | 4 +- .../ServiceDetailTabsOverviewStatusTable.vue | 84 ++--- .../ServiceDetailTabsOverviewWebhook.vue | 4 +- .../components/ServiceDetailTabsSettings.vue | 4 +- ...viceDetailTabsSettingsEscalationPolicy.vue | 6 +- ...absSettingsEscalationPolicyDeleteModal.vue | 4 +- ...DetailTabsSettingsEscalationPolicyForm.vue | 2 +- ...ngsEscalationPolicyFormChannelDropdown.vue | 6 +- ...lTabsSettingsEscalationPolicyFormModal.vue | 12 +- ...TabsSettingsEscalationPolicyStateModal.vue | 8 +- .../ServiceDetailTabsSettingsEventRule.vue | 4 +- ...DetailTabsSettingsEventRuleActionAlert.vue | 16 +- ...DetailTabsSettingsEventRuleActionAsset.vue | 4 +- ...eDetailTabsSettingsEventRuleActionForm.vue | 2 +- ...tailTabsSettingsEventRuleActionService.vue | 6 +- ...ServiceDetailTabsSettingsEventRuleCard.vue | 10 +- ...tailTabsSettingsEventRuleConditionForm.vue | 6 +- ...DetailTabsSettingsEventRuleDeleteModal.vue | 4 +- ...iceDetailTabsSettingsEventRuleFormCard.vue | 10 +- ...eDetailTabsSettingsEventRuleScopeModal.vue | 8 +- ...viceDetailTabsSettingsEventRuleSidebar.vue | 6 +- .../ServiceDetailTabsSettingsUpdateModal.vue | 8 +- .../components/ServiceDetailTabsWebhook.vue | 6 +- .../ServiceDetailTabsWebhookDeleteModal.vue | 4 +- .../ServiceDetailTabsWebhookDetail.vue | 13 +- .../ServiceDetailTabsWebhookTableModal.vue | 8 +- .../ServiceDetailTabsWebhookUpdateModal.vue | 4 +- .../v2/components/ServiceList.vue | 6 +- .../v2/components/ServiceListContent.vue | 2 +- .../components/WebhookCreateSuccessMode.vue | 5 +- .../v2/composables/alert-table-data.ts | 4 +- .../v2/composables/refined-table-data.ts | 4 +- .../ServiceDetailNotificationsCreatePage.vue | 6 +- .../pages/ServiceDetailWebhookCreatePage.vue | 4 +- .../v2/stores/alert-detail-page-store.ts | 6 +- .../v2/stores/alert-page-store.ts | 38 --- .../v2/stores/service-create-form-store.ts | 6 +- .../v2/stores/service-detail-page-store.ts | 27 +- .../v2/types/alert-manager-type.ts | 12 +- .../components/CloudServiceAlertsTab.vue | 6 +- .../UserGroupChannelAddFormData.vue | 6 +- ...UserGroupChannelDeleteDoubleCheckModal.vue | 4 +- .../UserGroupChannelSetInputForm.vue | 7 +- .../components/UserGroupChannelSetModal.vue | 10 +- ...rGroupManagementTabNotificationChannel.vue | 16 +- .../notification-channel-create-form-store.ts | 2 +- .../iam/store/user-group-page-store.ts | 4 +- .../components/NotificationAddForm.vue | 2 +- .../components/NotificationAddFormData.vue | 4 +- .../components/NotificationChannelItem.vue | 5 +- .../components/NotificationChannelList.vue | 8 +- .../my-page/composables/notification-item.ts | 4 +- .../types/notification-channel-item-type.ts | 2 +- .../escalation-policy-reference-store.ts | 2 +- .../reference/service-reference-store.ts | 4 +- .../reference/webhook-reference-store.ts | 2 +- 205 files changed, 955 insertions(+), 556 deletions(-) create mode 100644 apps/web/src/api-clients/alert-manager/alert/composables/use-alert-api.ts rename apps/web/src/{schema/alert-manager/alert => api-clients/alert-manager/alert/schema}/api-verbs/create.ts (85%) rename apps/web/src/{schema/alert-manager/alert => api-clients/alert-manager/alert/schema}/api-verbs/delete.ts (100%) rename apps/web/src/{schema/alert-manager/alert => api-clients/alert-manager/alert/schema}/api-verbs/get.ts (100%) rename apps/web/src/{schema/alert-manager/alert => api-clients/alert-manager/alert/schema}/api-verbs/history.ts (100%) rename apps/web/src/{schema/alert-manager/alert => api-clients/alert-manager/alert/schema}/api-verbs/list.ts (91%) rename apps/web/src/{schema/alert-manager/alert => api-clients/alert-manager/alert/schema}/api-verbs/update.ts (62%) rename apps/web/src/{schema/alert-manager/alert => api-clients/alert-manager/alert/schema}/constants.ts (100%) rename apps/web/src/{schema/alert-manager/alert => api-clients/alert-manager/alert/schema}/model.ts (95%) rename apps/web/src/{schema/alert-manager/alert => api-clients/alert-manager/alert/schema}/type.ts (95%) create mode 100644 apps/web/src/api-clients/alert-manager/escalation-policy/composables/use-escalation-policy-api.ts rename apps/web/src/{schema/alert-manager/escalation-policy => api-clients/alert-manager/escalation-policy/schema}/api-verbs/create.ts (86%) rename apps/web/src/{schema/alert-manager/escalation-policy => api-clients/alert-manager/escalation-policy/schema}/api-verbs/delete.ts (100%) rename apps/web/src/{schema/alert-manager/escalation-policy => api-clients/alert-manager/escalation-policy/schema}/api-verbs/get.ts (100%) rename apps/web/src/{schema/alert-manager/escalation-policy => api-clients/alert-manager/escalation-policy/schema}/api-verbs/list.ts (70%) rename apps/web/src/{schema/alert-manager/escalation-policy => api-clients/alert-manager/escalation-policy/schema}/api-verbs/update.ts (86%) rename apps/web/src/{schema/alert-manager/escalation-policy => api-clients/alert-manager/escalation-policy/schema}/constants.ts (100%) rename apps/web/src/{schema/alert-manager/escalation-policy => api-clients/alert-manager/escalation-policy/schema}/model.ts (89%) rename apps/web/src/{schema/alert-manager/escalation-policy => api-clients/alert-manager/escalation-policy/schema}/type.ts (88%) create mode 100644 apps/web/src/api-clients/alert-manager/event-rule/composables/use-event-rule-api.ts rename apps/web/src/{schema/alert-manager/event-rule => api-clients/alert-manager/event-rule/schema}/api-verbs/change-order.ts (100%) rename apps/web/src/{schema/alert-manager/event-rule => api-clients/alert-manager/event-rule/schema}/api-verbs/create.ts (89%) rename apps/web/src/{schema/alert-manager/event-rule => api-clients/alert-manager/event-rule/schema}/api-verbs/delete.ts (100%) rename apps/web/src/{schema/alert-manager/event-rule => api-clients/alert-manager/event-rule/schema}/api-verbs/get.ts (100%) rename apps/web/src/{schema/alert-manager/event-rule => api-clients/alert-manager/event-rule/schema}/api-verbs/list.ts (100%) rename apps/web/src/{schema/alert-manager/event-rule => api-clients/alert-manager/event-rule/schema}/api-verbs/update.ts (88%) rename apps/web/src/{schema/alert-manager/event-rule/constant.ts => api-clients/alert-manager/event-rule/schema/constants.ts} (100%) rename apps/web/src/{schema/alert-manager/event-rule => api-clients/alert-manager/event-rule/schema}/model.ts (91%) rename apps/web/src/{schema/alert-manager/event-rule => api-clients/alert-manager/event-rule/schema}/type.ts (89%) create mode 100644 apps/web/src/api-clients/alert-manager/event/composables/use-event-api.ts rename apps/web/src/{schema/alert-manager/event => api-clients/alert-manager/event/schema}/api-verbs/create.ts (100%) rename apps/web/src/{schema/alert-manager/event => api-clients/alert-manager/event/schema}/constants.ts (100%) rename apps/web/src/{schema/alert-manager/event => api-clients/alert-manager/event/schema}/model.ts (84%) rename apps/web/src/{schema/alert-manager/event => api-clients/alert-manager/event/schema}/type.ts (60%) create mode 100644 apps/web/src/api-clients/alert-manager/note/composables/use-note-api.ts rename apps/web/src/{schema/alert-manager/note => api-clients/alert-manager/note/schema}/api-verbs/create.ts (100%) rename apps/web/src/{schema/alert-manager/note => api-clients/alert-manager/note/schema}/api-verbs/delete.ts (100%) rename apps/web/src/{schema/alert-manager/note => api-clients/alert-manager/note/schema}/api-verbs/get.ts (100%) rename apps/web/src/{schema/alert-manager/note => api-clients/alert-manager/note/schema}/api-verbs/list.ts (100%) rename apps/web/src/{schema/alert-manager/note => api-clients/alert-manager/note/schema}/api-verbs/update.ts (100%) rename apps/web/src/{schema/alert-manager/note => api-clients/alert-manager/note/schema}/model.ts (100%) create mode 100644 apps/web/src/api-clients/alert-manager/notification-protocol/composables/use-notification-protocol-api.ts rename apps/web/src/{schema/alert-manager/notification-protocol => api-clients/alert-manager/notification-protocol/schema}/api-verbs/create.ts (81%) rename apps/web/src/{schema/alert-manager/notification-protocol => api-clients/alert-manager/notification-protocol/schema}/api-verbs/delete.ts (100%) rename apps/web/src/{schema/alert-manager/notification-protocol => api-clients/alert-manager/notification-protocol/schema}/api-verbs/disable.ts (100%) rename apps/web/src/{schema/alert-manager/notification-protocol => api-clients/alert-manager/notification-protocol/schema}/api-verbs/enable.ts (100%) rename apps/web/src/{schema/alert-manager/notification-protocol => api-clients/alert-manager/notification-protocol/schema}/api-verbs/get.ts (100%) rename apps/web/src/{schema/alert-manager/notification-protocol => api-clients/alert-manager/notification-protocol/schema}/api-verbs/list.ts (67%) rename apps/web/src/{schema/alert-manager/notification-protocol => api-clients/alert-manager/notification-protocol/schema}/api-verbs/update-plugin.ts (81%) rename apps/web/src/{schema/alert-manager/notification-protocol => api-clients/alert-manager/notification-protocol/schema}/api-verbs/update.ts (100%) rename apps/web/src/{schema/alert-manager/notification-protocol => api-clients/alert-manager/notification-protocol/schema}/api-verbs/verify-plugin.ts (100%) rename apps/web/src/{schema/alert-manager/notification-protocol => api-clients/alert-manager/notification-protocol/schema}/constants.ts (100%) rename apps/web/src/{schema/alert-manager/notification-protocol => api-clients/alert-manager/notification-protocol/schema}/model.ts (86%) rename apps/web/src/{schema/alert-manager/notification-protocol => api-clients/alert-manager/notification-protocol/schema}/type.ts (92%) create mode 100644 apps/web/src/api-clients/alert-manager/service-channel/composables/use-service-channel-api.ts rename apps/web/src/{schema/alert-manager/service-channel => api-clients/alert-manager/service-channel/schema}/api-verbs/create-forward-channel.ts (82%) rename apps/web/src/{schema/alert-manager/service-channel => api-clients/alert-manager/service-channel/schema}/api-verbs/create.ts (83%) rename apps/web/src/{schema/alert-manager/service-channel => api-clients/alert-manager/service-channel/schema}/api-verbs/delete.ts (100%) rename apps/web/src/{schema/alert-manager/service-channel => api-clients/alert-manager/service-channel/schema}/api-verbs/disable.ts (100%) rename apps/web/src/{schema/alert-manager/service-channel => api-clients/alert-manager/service-channel/schema}/api-verbs/enable.ts (100%) rename apps/web/src/{schema/alert-manager/service-channel => api-clients/alert-manager/service-channel/schema}/api-verbs/get.ts (100%) rename apps/web/src/{schema/alert-manager/service-channel => api-clients/alert-manager/service-channel/schema}/api-verbs/list.ts (86%) rename apps/web/src/{schema/alert-manager/service-channel => api-clients/alert-manager/service-channel/schema}/api-verbs/update.ts (81%) rename apps/web/src/{schema/alert-manager/service-channel => api-clients/alert-manager/service-channel/schema}/constants.ts (100%) rename apps/web/src/{schema/alert-manager/service-channel => api-clients/alert-manager/service-channel/schema}/model.ts (80%) rename apps/web/src/{schema/alert-manager/service-channel => api-clients/alert-manager/service-channel/schema}/type.ts (94%) create mode 100644 apps/web/src/api-clients/alert-manager/service/composables/use-service-api.ts rename apps/web/src/{schema/alert-manager/service/api-verbs/chagne-members.ts => api-clients/alert-manager/service/schema/api-verbs/change-members.ts} (59%) rename apps/web/src/{schema/alert-manager/service => api-clients/alert-manager/service/schema}/api-verbs/create.ts (72%) rename apps/web/src/{schema/alert-manager/service => api-clients/alert-manager/service/schema}/api-verbs/delete.ts (100%) rename apps/web/src/{schema/alert-manager/service => api-clients/alert-manager/service/schema}/api-verbs/get.ts (100%) rename apps/web/src/{schema/alert-manager/service => api-clients/alert-manager/service/schema}/api-verbs/list.ts (100%) rename apps/web/src/{schema/alert-manager/service => api-clients/alert-manager/service/schema}/api-verbs/update.ts (74%) rename apps/web/src/{schema/alert-manager/service => api-clients/alert-manager/service/schema}/constants.ts (100%) rename apps/web/src/{schema/alert-manager/service => api-clients/alert-manager/service/schema}/model.ts (91%) rename apps/web/src/{schema/alert-manager/service => api-clients/alert-manager/service/schema}/type.ts (92%) create mode 100644 apps/web/src/api-clients/alert-manager/user-channel/composables/use-user-channel-api.ts rename apps/web/src/{schema/alert-manager/user-channel => api-clients/alert-manager/user-channel/schema}/api-verbs/create.ts (67%) rename apps/web/src/{schema/alert-manager/user-channel => api-clients/alert-manager/user-channel/schema}/api-verbs/delete.ts (100%) rename apps/web/src/{schema/alert-manager/user-channel => api-clients/alert-manager/user-channel/schema}/api-verbs/disable.ts (100%) rename apps/web/src/{schema/alert-manager/user-channel => api-clients/alert-manager/user-channel/schema}/api-verbs/enable.ts (100%) rename apps/web/src/{schema/alert-manager/user-channel => api-clients/alert-manager/user-channel/schema}/api-verbs/get.ts (100%) rename apps/web/src/{schema/alert-manager/user-channel => api-clients/alert-manager/user-channel/schema}/api-verbs/list.ts (71%) rename apps/web/src/{schema/alert-manager/user-channel => api-clients/alert-manager/user-channel/schema}/api-verbs/update.ts (70%) rename apps/web/src/{schema/alert-manager/user-channel => api-clients/alert-manager/user-channel/schema}/constants.ts (100%) rename apps/web/src/{schema/alert-manager/user-channel => api-clients/alert-manager/user-channel/schema}/model.ts (86%) rename apps/web/src/{schema/alert-manager/user-channel => api-clients/alert-manager/user-channel/schema}/type.ts (92%) create mode 100644 apps/web/src/api-clients/alert-manager/user-group-channel/composables/use-user-group-channel-api.ts rename apps/web/src/{schema/alert-manager/user-group-channel => api-clients/alert-manager/user-group-channel/schema}/api-verbs/create.ts (83%) rename apps/web/src/{schema/alert-manager/user-group-channel => api-clients/alert-manager/user-group-channel/schema}/api-verbs/delete.ts (100%) rename apps/web/src/{schema/alert-manager/user-group-channel => api-clients/alert-manager/user-group-channel/schema}/api-verbs/disable.ts (100%) rename apps/web/src/{schema/alert-manager/user-group-channel => api-clients/alert-manager/user-group-channel/schema}/api-verbs/enable.ts (100%) rename apps/web/src/{schema/alert-manager/user-group-channel => api-clients/alert-manager/user-group-channel/schema}/api-verbs/get.ts (100%) rename apps/web/src/{schema/alert-manager/user-group-channel => api-clients/alert-manager/user-group-channel/schema}/api-verbs/list.ts (73%) rename apps/web/src/{schema/alert-manager/user-group-channel => api-clients/alert-manager/user-group-channel/schema}/api-verbs/update.ts (69%) rename apps/web/src/{schema/alert-manager/user-group-channel => api-clients/alert-manager/user-group-channel/schema}/constants.ts (100%) rename apps/web/src/{schema/alert-manager/user-group-channel => api-clients/alert-manager/user-group-channel/schema}/model.ts (88%) rename apps/web/src/{schema/alert-manager/user-group-channel => api-clients/alert-manager/user-group-channel/schema}/type.ts (92%) create mode 100644 apps/web/src/api-clients/alert-manager/webhook/composables/use-webhook-api.ts rename apps/web/src/{schema/alert-manager/webhook => api-clients/alert-manager/webhook/schema}/api-verbs/create.ts (68%) rename apps/web/src/{schema/alert-manager/webhook => api-clients/alert-manager/webhook/schema}/api-verbs/delete.ts (100%) rename apps/web/src/{schema/alert-manager/webhook => api-clients/alert-manager/webhook/schema}/api-verbs/disable.ts (100%) rename apps/web/src/{schema/alert-manager/webhook => api-clients/alert-manager/webhook/schema}/api-verbs/enable.ts (100%) rename apps/web/src/{schema/alert-manager/webhook => api-clients/alert-manager/webhook/schema}/api-verbs/get.ts (100%) rename apps/web/src/{schema/alert-manager/webhook => api-clients/alert-manager/webhook/schema}/api-verbs/list-errors.ts (75%) rename apps/web/src/{schema/alert-manager/webhook => api-clients/alert-manager/webhook/schema}/api-verbs/list.ts (76%) rename apps/web/src/{schema/alert-manager/webhook => api-clients/alert-manager/webhook/schema}/api-verbs/update-message-format.ts (58%) rename apps/web/src/{schema/alert-manager/webhook => api-clients/alert-manager/webhook/schema}/api-verbs/update-plugin.ts (100%) rename apps/web/src/{schema/alert-manager/webhook => api-clients/alert-manager/webhook/schema}/api-verbs/update.ts (100%) rename apps/web/src/{schema/alert-manager/webhook => api-clients/alert-manager/webhook/schema}/api-verbs/verify-plugin.ts (100%) rename apps/web/src/{schema/alert-manager/webhook => api-clients/alert-manager/webhook/schema}/constants.ts (100%) rename apps/web/src/{schema/alert-manager/webhook => api-clients/alert-manager/webhook/schema}/model.ts (93%) rename apps/web/src/{schema/alert-manager/webhook => api-clients/alert-manager/webhook/schema}/type.ts (82%) diff --git a/apps/web/src/api-clients/_common/constants/api-doc-constant.ts b/apps/web/src/api-clients/_common/constants/api-doc-constant.ts index 163634c799..911e991a0f 100644 --- a/apps/web/src/api-clients/_common/constants/api-doc-constant.ts +++ b/apps/web/src/api-clients/_common/constants/api-doc-constant.ts @@ -25,6 +25,101 @@ */ export const API_DOC = { + 'alert-manager': { + alert: [ + 'create', + 'delete', + 'get', + 'history', + 'list', + 'update', + ], + 'escalation-policy': [ + 'create', + 'delete', + 'get', + 'list', + 'update', + ], + event: [ + 'create', + ], + 'event-rule': [ + 'change-order', + 'create', + 'delete', + 'get', + 'list', + 'update', + ], + note: [ + 'create', + 'delete', + 'get', + 'list', + 'update', + ], + 'notification-protocol': [ + 'create', + 'delete', + 'disable', + 'enable', + 'get', + 'list', + 'update-plugin', + 'update', + 'verify-plugin', + ], + service: [ + 'change-members', + 'create', + 'delete', + 'get', + 'list', + 'update', + ], + 'service-channel': [ + 'create-forward-channel', + 'create', + 'delete', + 'disable', + 'enable', + 'get', + 'list', + 'update', + ], + 'user-channel': [ + 'create', + 'delete', + 'disable', + 'enable', + 'get', + 'list', + 'update', + ], + 'user-group-channel': [ + 'create', + 'delete', + 'disable', + 'enable', + 'get', + 'list', + 'update', + ], + webhook: [ + 'create', + 'delete', + 'disable', + 'enable', + 'get', + 'list-errors', + 'list', + 'update-message-format', + 'update-plugin', + 'update', + 'verify-plugin', + ], + }, config: { 'domain-config': [ 'create', diff --git a/apps/web/src/api-clients/alert-manager/alert/composables/use-alert-api.ts b/apps/web/src/api-clients/alert-manager/alert/composables/use-alert-api.ts new file mode 100644 index 0000000000..d5aa525557 --- /dev/null +++ b/apps/web/src/api-clients/alert-manager/alert/composables/use-alert-api.ts @@ -0,0 +1,26 @@ +import { SpaceConnector } from '@cloudforet/core-lib/space-connector'; + +import type { ListResponse } from '@/api-clients/_common/schema/api-verbs/list'; +import type { AlertCreateParameters } from '@/api-clients/alert-manager/alert/schema/api-verbs/create'; +import type { AlertDeleteParameters } from '@/api-clients/alert-manager/alert/schema/api-verbs/delete'; +import type { AlertGetParameters } from '@/api-clients/alert-manager/alert/schema/api-verbs/get'; +import type { AlertHistoryParameters } from '@/api-clients/alert-manager/alert/schema/api-verbs/history'; +import type { AlertListParameters } from '@/api-clients/alert-manager/alert/schema/api-verbs/list'; +import type { AlertUpdateParameters } from '@/api-clients/alert-manager/alert/schema/api-verbs/update'; +import type { AlertHistoryModel, AlertModel } from '@/api-clients/alert-manager/alert/schema/model'; + +export const useAlertApi = () => { + const actions = { + create: SpaceConnector.clientV2.alertManager.alert.create, + delete: SpaceConnector.clientV2.alertManager.alert.delete, + get: SpaceConnector.clientV2.alertManager.alert.get, + history: SpaceConnector.clientV2.alertManager.alert.history>, + list: SpaceConnector.clientV2.alertManager.alert.list>, + update: SpaceConnector.clientV2.alertManager.alert.update, + }; + + return { + alertAPI: actions, + }; +}; + diff --git a/apps/web/src/schema/alert-manager/alert/api-verbs/create.ts b/apps/web/src/api-clients/alert-manager/alert/schema/api-verbs/create.ts similarity index 85% rename from apps/web/src/schema/alert-manager/alert/api-verbs/create.ts rename to apps/web/src/api-clients/alert-manager/alert/schema/api-verbs/create.ts index 1ca43abb2b..6074e7775f 100644 --- a/apps/web/src/schema/alert-manager/alert/api-verbs/create.ts +++ b/apps/web/src/api-clients/alert-manager/alert/schema/api-verbs/create.ts @@ -1,4 +1,4 @@ -import type { AlertResourcesType, AlertSeverityType, AlertUrgencyType } from '@/schema/alert-manager/alert/type'; +import type { AlertResourcesType, AlertSeverityType, AlertUrgencyType } from '@/api-clients/alert-manager/alert/schema/type'; export interface AlertCreateParameters { title: string; diff --git a/apps/web/src/schema/alert-manager/alert/api-verbs/delete.ts b/apps/web/src/api-clients/alert-manager/alert/schema/api-verbs/delete.ts similarity index 100% rename from apps/web/src/schema/alert-manager/alert/api-verbs/delete.ts rename to apps/web/src/api-clients/alert-manager/alert/schema/api-verbs/delete.ts diff --git a/apps/web/src/schema/alert-manager/alert/api-verbs/get.ts b/apps/web/src/api-clients/alert-manager/alert/schema/api-verbs/get.ts similarity index 100% rename from apps/web/src/schema/alert-manager/alert/api-verbs/get.ts rename to apps/web/src/api-clients/alert-manager/alert/schema/api-verbs/get.ts diff --git a/apps/web/src/schema/alert-manager/alert/api-verbs/history.ts b/apps/web/src/api-clients/alert-manager/alert/schema/api-verbs/history.ts similarity index 100% rename from apps/web/src/schema/alert-manager/alert/api-verbs/history.ts rename to apps/web/src/api-clients/alert-manager/alert/schema/api-verbs/history.ts diff --git a/apps/web/src/schema/alert-manager/alert/api-verbs/list.ts b/apps/web/src/api-clients/alert-manager/alert/schema/api-verbs/list.ts similarity index 91% rename from apps/web/src/schema/alert-manager/alert/api-verbs/list.ts rename to apps/web/src/api-clients/alert-manager/alert/schema/api-verbs/list.ts index 2e9688c080..b5d9aa122f 100644 --- a/apps/web/src/schema/alert-manager/alert/api-verbs/list.ts +++ b/apps/web/src/api-clients/alert-manager/alert/schema/api-verbs/list.ts @@ -5,7 +5,7 @@ import type { AlertSeverityType, AlertStatusType, AlertTriggeredType, AlertUrgencyType, -} from '@/schema/alert-manager/alert/type'; +} from '@/api-clients/alert-manager/alert/schema/type'; export interface AlertListParameters { query?: Query; diff --git a/apps/web/src/schema/alert-manager/alert/api-verbs/update.ts b/apps/web/src/api-clients/alert-manager/alert/schema/api-verbs/update.ts similarity index 62% rename from apps/web/src/schema/alert-manager/alert/api-verbs/update.ts rename to apps/web/src/api-clients/alert-manager/alert/schema/api-verbs/update.ts index 7a3cb2a177..c67905fd95 100644 --- a/apps/web/src/schema/alert-manager/alert/api-verbs/update.ts +++ b/apps/web/src/api-clients/alert-manager/alert/schema/api-verbs/update.ts @@ -1,4 +1,4 @@ -import type { AlertUrgencyType, AlertStatusType } from '@/schema/alert-manager/alert/type'; +import type { AlertUrgencyType, AlertStatusType } from '@/api-clients/alert-manager/alert/schema/type'; export interface AlertUpdateParameters { alert_id: string; diff --git a/apps/web/src/schema/alert-manager/alert/constants.ts b/apps/web/src/api-clients/alert-manager/alert/schema/constants.ts similarity index 100% rename from apps/web/src/schema/alert-manager/alert/constants.ts rename to apps/web/src/api-clients/alert-manager/alert/schema/constants.ts diff --git a/apps/web/src/schema/alert-manager/alert/model.ts b/apps/web/src/api-clients/alert-manager/alert/schema/model.ts similarity index 95% rename from apps/web/src/schema/alert-manager/alert/model.ts rename to apps/web/src/api-clients/alert-manager/alert/schema/model.ts index cba934c392..c8b1e79a42 100644 --- a/apps/web/src/schema/alert-manager/alert/model.ts +++ b/apps/web/src/api-clients/alert-manager/alert/schema/model.ts @@ -5,7 +5,7 @@ import type { AlertUrgencyType, AlertHistoryActionType, AlertHistoryNotificationInfoType, -} from '@/schema/alert-manager/alert/type'; +} from '@/api-clients/alert-manager/alert/schema/type'; export interface AlertModel { alert_id: string; diff --git a/apps/web/src/schema/alert-manager/alert/type.ts b/apps/web/src/api-clients/alert-manager/alert/schema/type.ts similarity index 95% rename from apps/web/src/schema/alert-manager/alert/type.ts rename to apps/web/src/api-clients/alert-manager/alert/schema/type.ts index 5ffa4ecf5e..7f99c8c449 100644 --- a/apps/web/src/schema/alert-manager/alert/type.ts +++ b/apps/web/src/api-clients/alert-manager/alert/schema/type.ts @@ -2,7 +2,7 @@ import type { ALERT_SEVERITY, ALERT_STATUS, ALERT_TRIGGERED_TYPE, ALERT_URGENCY, ALERT_HISTORY_ACTION, ALERT_HISTORY_NOTIFICATION_STATE, -} from '@/schema/alert-manager/alert/constants'; +} from '@/api-clients/alert-manager/alert/schema/constants'; export type AlertStatusType = typeof ALERT_STATUS[keyof typeof ALERT_STATUS]; export type AlertUrgencyType = typeof ALERT_URGENCY[keyof typeof ALERT_URGENCY]; diff --git a/apps/web/src/api-clients/alert-manager/escalation-policy/composables/use-escalation-policy-api.ts b/apps/web/src/api-clients/alert-manager/escalation-policy/composables/use-escalation-policy-api.ts new file mode 100644 index 0000000000..7f361c35c2 --- /dev/null +++ b/apps/web/src/api-clients/alert-manager/escalation-policy/composables/use-escalation-policy-api.ts @@ -0,0 +1,24 @@ +import { SpaceConnector } from '@cloudforet/core-lib/space-connector'; + +import type { ListResponse } from '@/api-clients/_common/schema/api-verbs/list'; +import type { EscalationPolicyCreateParameters } from '@/api-clients/alert-manager/escalation-policy/schema/api-verbs/create'; +import type { EscalationPolicyDeleteParameters } from '@/api-clients/alert-manager/escalation-policy/schema/api-verbs/delete'; +import type { EscalationPolicyGetParameters } from '@/api-clients/alert-manager/escalation-policy/schema/api-verbs/get'; +import type { EscalationPolicyListParameters } from '@/api-clients/alert-manager/escalation-policy/schema/api-verbs/list'; +import type { EscalationPolicyUpdateParameters } from '@/api-clients/alert-manager/escalation-policy/schema/api-verbs/update'; +import type { EscalationPolicyModel } from '@/api-clients/alert-manager/escalation-policy/schema/model'; + +export const useEscalationPolicyApi = () => { + const actions = { + create: SpaceConnector.clientV2.alertManager.escalationPolicy.create, + delete: SpaceConnector.clientV2.alertManager.escalationPolicy.delete, + get: SpaceConnector.clientV2.alertManager.escalationPolicy.get, + list: SpaceConnector.clientV2.alertManager.escalationPolicy.list>, + update: SpaceConnector.clientV2.alertManager.escalationPolicy.update, + }; + + return { + escalationPolicyAPI: actions, + }; +}; + diff --git a/apps/web/src/schema/alert-manager/escalation-policy/api-verbs/create.ts b/apps/web/src/api-clients/alert-manager/escalation-policy/schema/api-verbs/create.ts similarity index 86% rename from apps/web/src/schema/alert-manager/escalation-policy/api-verbs/create.ts rename to apps/web/src/api-clients/alert-manager/escalation-policy/schema/api-verbs/create.ts index d4ae69a1b3..6e985463db 100644 --- a/apps/web/src/schema/alert-manager/escalation-policy/api-verbs/create.ts +++ b/apps/web/src/api-clients/alert-manager/escalation-policy/schema/api-verbs/create.ts @@ -3,7 +3,7 @@ import type { EscalationPolicyFinishConditionType, EscalationPolicyRepeatType, EscalationPolicyRulesType, -} from '@/schema/alert-manager/escalation-policy/type'; +} from '@/api-clients/alert-manager/escalation-policy/schema/type'; export interface EscalationPolicyCreateParameters { name: string; diff --git a/apps/web/src/schema/alert-manager/escalation-policy/api-verbs/delete.ts b/apps/web/src/api-clients/alert-manager/escalation-policy/schema/api-verbs/delete.ts similarity index 100% rename from apps/web/src/schema/alert-manager/escalation-policy/api-verbs/delete.ts rename to apps/web/src/api-clients/alert-manager/escalation-policy/schema/api-verbs/delete.ts diff --git a/apps/web/src/schema/alert-manager/escalation-policy/api-verbs/get.ts b/apps/web/src/api-clients/alert-manager/escalation-policy/schema/api-verbs/get.ts similarity index 100% rename from apps/web/src/schema/alert-manager/escalation-policy/api-verbs/get.ts rename to apps/web/src/api-clients/alert-manager/escalation-policy/schema/api-verbs/get.ts diff --git a/apps/web/src/schema/alert-manager/escalation-policy/api-verbs/list.ts b/apps/web/src/api-clients/alert-manager/escalation-policy/schema/api-verbs/list.ts similarity index 70% rename from apps/web/src/schema/alert-manager/escalation-policy/api-verbs/list.ts rename to apps/web/src/api-clients/alert-manager/escalation-policy/schema/api-verbs/list.ts index 8cab61a71b..7dc1b6bf89 100644 --- a/apps/web/src/schema/alert-manager/escalation-policy/api-verbs/list.ts +++ b/apps/web/src/api-clients/alert-manager/escalation-policy/schema/api-verbs/list.ts @@ -1,6 +1,6 @@ import type { Query } from '@cloudforet/core-lib/space-connector/type'; -import type { EscalationPolicyFinishConditionType } from '@/schema/alert-manager/escalation-policy/type'; +import type { EscalationPolicyFinishConditionType } from '@/api-clients/alert-manager/escalation-policy/schema/type'; export interface EscalationPolicyListParameters { query?: Query; diff --git a/apps/web/src/schema/alert-manager/escalation-policy/api-verbs/update.ts b/apps/web/src/api-clients/alert-manager/escalation-policy/schema/api-verbs/update.ts similarity index 86% rename from apps/web/src/schema/alert-manager/escalation-policy/api-verbs/update.ts rename to apps/web/src/api-clients/alert-manager/escalation-policy/schema/api-verbs/update.ts index 933f30a875..68b8abd555 100644 --- a/apps/web/src/schema/alert-manager/escalation-policy/api-verbs/update.ts +++ b/apps/web/src/api-clients/alert-manager/escalation-policy/schema/api-verbs/update.ts @@ -3,7 +3,7 @@ import type { EscalationPolicyFinishConditionType, EscalationPolicyRepeatType, EscalationPolicyRulesType, -} from '@/schema/alert-manager/escalation-policy/type'; +} from '@/api-clients/alert-manager/escalation-policy/schema/type'; export interface EscalationPolicyUpdateParameters { escalation_policy_id: string; diff --git a/apps/web/src/schema/alert-manager/escalation-policy/constants.ts b/apps/web/src/api-clients/alert-manager/escalation-policy/schema/constants.ts similarity index 100% rename from apps/web/src/schema/alert-manager/escalation-policy/constants.ts rename to apps/web/src/api-clients/alert-manager/escalation-policy/schema/constants.ts diff --git a/apps/web/src/schema/alert-manager/escalation-policy/model.ts b/apps/web/src/api-clients/alert-manager/escalation-policy/schema/model.ts similarity index 89% rename from apps/web/src/schema/alert-manager/escalation-policy/model.ts rename to apps/web/src/api-clients/alert-manager/escalation-policy/schema/model.ts index 0293026271..eddce58ba8 100644 --- a/apps/web/src/schema/alert-manager/escalation-policy/model.ts +++ b/apps/web/src/api-clients/alert-manager/escalation-policy/schema/model.ts @@ -3,7 +3,7 @@ import type { EscalationPolicyFinishConditionType, EscalationPolicyRepeatType, EscalationPolicyRulesType, -} from '@/schema/alert-manager/escalation-policy/type'; +} from '@/api-clients/alert-manager/escalation-policy/schema/type'; export interface EscalationPolicyModel { escalation_policy_id: string; diff --git a/apps/web/src/schema/alert-manager/escalation-policy/type.ts b/apps/web/src/api-clients/alert-manager/escalation-policy/schema/type.ts similarity index 88% rename from apps/web/src/schema/alert-manager/escalation-policy/type.ts rename to apps/web/src/api-clients/alert-manager/escalation-policy/schema/type.ts index 8ea1fdb9cc..7ce746ea13 100644 --- a/apps/web/src/schema/alert-manager/escalation-policy/type.ts +++ b/apps/web/src/api-clients/alert-manager/escalation-policy/schema/type.ts @@ -1,7 +1,7 @@ import type { ESCALATION_POLICY_FINISH_CONDITION, ESCALATION_POLICY_STATE, -} from '@/schema/alert-manager/escalation-policy/constants'; +} from '@/api-clients/alert-manager/escalation-policy/schema/constants'; export type EscalationPolicyStateType = typeof ESCALATION_POLICY_STATE[keyof typeof ESCALATION_POLICY_STATE]; export type EscalationPolicyFinishConditionType = typeof ESCALATION_POLICY_FINISH_CONDITION[keyof typeof ESCALATION_POLICY_FINISH_CONDITION]; diff --git a/apps/web/src/api-clients/alert-manager/event-rule/composables/use-event-rule-api.ts b/apps/web/src/api-clients/alert-manager/event-rule/composables/use-event-rule-api.ts new file mode 100644 index 0000000000..aa054cadb8 --- /dev/null +++ b/apps/web/src/api-clients/alert-manager/event-rule/composables/use-event-rule-api.ts @@ -0,0 +1,26 @@ +import { SpaceConnector } from '@cloudforet/core-lib/space-connector'; + +import type { ListResponse } from '@/api-clients/_common/schema/api-verbs/list'; +import type { EventRuleChangeOrderParameters } from '@/api-clients/alert-manager/event-rule/schema/api-verbs/change-order'; +import type { EventRuleCreateParameters } from '@/api-clients/alert-manager/event-rule/schema/api-verbs/create'; +import type { EventRuleDeleteParameters } from '@/api-clients/alert-manager/event-rule/schema/api-verbs/delete'; +import type { EventRuleGetParameters } from '@/api-clients/alert-manager/event-rule/schema/api-verbs/get'; +import type { EventRuleListParameters } from '@/api-clients/alert-manager/event-rule/schema/api-verbs/list'; +import type { EventRuleUpdateParameters } from '@/api-clients/alert-manager/event-rule/schema/api-verbs/update'; +import type { EventRuleModel } from '@/api-clients/alert-manager/event-rule/schema/model'; + +export const useEventRuleApi = () => { + const actions = { + changeOrder: SpaceConnector.clientV2.alertManager.eventRule.changeOrder, + create: SpaceConnector.clientV2.alertManager.eventRule.create, + delete: SpaceConnector.clientV2.alertManager.eventRule.delete, + get: SpaceConnector.clientV2.alertManager.eventRule.get, + list: SpaceConnector.clientV2.alertManager.eventRule.list>, + update: SpaceConnector.clientV2.alertManager.eventRule.update, + }; + + return { + eventRuleAPI: actions, + }; +}; + diff --git a/apps/web/src/schema/alert-manager/event-rule/api-verbs/change-order.ts b/apps/web/src/api-clients/alert-manager/event-rule/schema/api-verbs/change-order.ts similarity index 100% rename from apps/web/src/schema/alert-manager/event-rule/api-verbs/change-order.ts rename to apps/web/src/api-clients/alert-manager/event-rule/schema/api-verbs/change-order.ts diff --git a/apps/web/src/schema/alert-manager/event-rule/api-verbs/create.ts b/apps/web/src/api-clients/alert-manager/event-rule/schema/api-verbs/create.ts similarity index 89% rename from apps/web/src/schema/alert-manager/event-rule/api-verbs/create.ts rename to apps/web/src/api-clients/alert-manager/event-rule/schema/api-verbs/create.ts index ddda29c748..e0ec40ca8c 100644 --- a/apps/web/src/schema/alert-manager/event-rule/api-verbs/create.ts +++ b/apps/web/src/api-clients/alert-manager/event-rule/schema/api-verbs/create.ts @@ -4,7 +4,7 @@ import type { EventRuleConditionsPolicyType, EventRuleConditionsType, EventRuleOptions, EventRuleScopeType, -} from '@/schema/alert-manager/event-rule/type'; +} from '@/api-clients/alert-manager/event-rule/schema/type'; export interface EventRuleCreateParameters { name?: string; diff --git a/apps/web/src/schema/alert-manager/event-rule/api-verbs/delete.ts b/apps/web/src/api-clients/alert-manager/event-rule/schema/api-verbs/delete.ts similarity index 100% rename from apps/web/src/schema/alert-manager/event-rule/api-verbs/delete.ts rename to apps/web/src/api-clients/alert-manager/event-rule/schema/api-verbs/delete.ts diff --git a/apps/web/src/schema/alert-manager/event-rule/api-verbs/get.ts b/apps/web/src/api-clients/alert-manager/event-rule/schema/api-verbs/get.ts similarity index 100% rename from apps/web/src/schema/alert-manager/event-rule/api-verbs/get.ts rename to apps/web/src/api-clients/alert-manager/event-rule/schema/api-verbs/get.ts diff --git a/apps/web/src/schema/alert-manager/event-rule/api-verbs/list.ts b/apps/web/src/api-clients/alert-manager/event-rule/schema/api-verbs/list.ts similarity index 100% rename from apps/web/src/schema/alert-manager/event-rule/api-verbs/list.ts rename to apps/web/src/api-clients/alert-manager/event-rule/schema/api-verbs/list.ts diff --git a/apps/web/src/schema/alert-manager/event-rule/api-verbs/update.ts b/apps/web/src/api-clients/alert-manager/event-rule/schema/api-verbs/update.ts similarity index 88% rename from apps/web/src/schema/alert-manager/event-rule/api-verbs/update.ts rename to apps/web/src/api-clients/alert-manager/event-rule/schema/api-verbs/update.ts index dbe47c84e1..23b6fe77e5 100644 --- a/apps/web/src/schema/alert-manager/event-rule/api-verbs/update.ts +++ b/apps/web/src/api-clients/alert-manager/event-rule/schema/api-verbs/update.ts @@ -3,7 +3,7 @@ import type { EventRuleActionsType, EventRuleConditionsPolicyType, EventRuleConditionsType, EventRuleOptions, -} from '@/schema/alert-manager/event-rule/type'; +} from '@/api-clients/alert-manager/event-rule/schema/type'; export interface EventRuleUpdateParameters { event_rule_id: string; diff --git a/apps/web/src/schema/alert-manager/event-rule/constant.ts b/apps/web/src/api-clients/alert-manager/event-rule/schema/constants.ts similarity index 100% rename from apps/web/src/schema/alert-manager/event-rule/constant.ts rename to apps/web/src/api-clients/alert-manager/event-rule/schema/constants.ts diff --git a/apps/web/src/schema/alert-manager/event-rule/model.ts b/apps/web/src/api-clients/alert-manager/event-rule/schema/model.ts similarity index 91% rename from apps/web/src/schema/alert-manager/event-rule/model.ts rename to apps/web/src/api-clients/alert-manager/event-rule/schema/model.ts index 539eef9b03..60d08f2016 100644 --- a/apps/web/src/schema/alert-manager/event-rule/model.ts +++ b/apps/web/src/api-clients/alert-manager/event-rule/schema/model.ts @@ -5,7 +5,7 @@ import type { EventRuleConditionsType, EventRuleOptions, EventRuleScopeType, -} from '@/schema/alert-manager/event-rule/type'; +} from '@/api-clients/alert-manager/event-rule/schema/type'; export interface EventRuleModel { event_rule_id: string; diff --git a/apps/web/src/schema/alert-manager/event-rule/type.ts b/apps/web/src/api-clients/alert-manager/event-rule/schema/type.ts similarity index 89% rename from apps/web/src/schema/alert-manager/event-rule/type.ts rename to apps/web/src/api-clients/alert-manager/event-rule/schema/type.ts index 52004cdf13..3f7e7ba828 100644 --- a/apps/web/src/schema/alert-manager/event-rule/type.ts +++ b/apps/web/src/api-clients/alert-manager/event-rule/schema/type.ts @@ -1,5 +1,5 @@ -import type { AlertStatusType } from '@/schema/alert-manager/alert/type'; -import type { EVENT_RULE_CONDITIONS_POLICY, EVENT_RULE_URGENCY, EVENT_RULE_SCOPE } from '@/schema/alert-manager/event-rule/constant'; +import type { AlertStatusType } from '@/api-clients/alert-manager/alert/schema/type'; +import type { EVENT_RULE_CONDITIONS_POLICY, EVENT_RULE_URGENCY, EVENT_RULE_SCOPE } from '@/api-clients/alert-manager/event-rule/schema/constants'; export type EventRuleConditionsPolicyType = typeof EVENT_RULE_CONDITIONS_POLICY[keyof typeof EVENT_RULE_CONDITIONS_POLICY]; export type EventRuleUrgencyType = typeof EVENT_RULE_URGENCY[keyof typeof EVENT_RULE_URGENCY]; diff --git a/apps/web/src/api-clients/alert-manager/event/composables/use-event-api.ts b/apps/web/src/api-clients/alert-manager/event/composables/use-event-api.ts new file mode 100644 index 0000000000..5cc0d196b3 --- /dev/null +++ b/apps/web/src/api-clients/alert-manager/event/composables/use-event-api.ts @@ -0,0 +1,15 @@ +import { SpaceConnector } from '@cloudforet/core-lib/space-connector'; + +import type { EventCreateParameters } from '@/api-clients/alert-manager/event/schema/api-verbs/create'; +import type { EventModel } from '@/api-clients/alert-manager/event/schema/model'; + +export const useEventApi = () => { + const actions = { + create: SpaceConnector.clientV2.alertManager.event.create, + }; + + return { + eventAPI: actions, + }; +}; + diff --git a/apps/web/src/schema/alert-manager/event/api-verbs/create.ts b/apps/web/src/api-clients/alert-manager/event/schema/api-verbs/create.ts similarity index 100% rename from apps/web/src/schema/alert-manager/event/api-verbs/create.ts rename to apps/web/src/api-clients/alert-manager/event/schema/api-verbs/create.ts diff --git a/apps/web/src/schema/alert-manager/event/constants.ts b/apps/web/src/api-clients/alert-manager/event/schema/constants.ts similarity index 100% rename from apps/web/src/schema/alert-manager/event/constants.ts rename to apps/web/src/api-clients/alert-manager/event/schema/constants.ts diff --git a/apps/web/src/schema/alert-manager/event/model.ts b/apps/web/src/api-clients/alert-manager/event/schema/model.ts similarity index 84% rename from apps/web/src/schema/alert-manager/event/model.ts rename to apps/web/src/api-clients/alert-manager/event/schema/model.ts index b41a6f0e6f..2a6b9c56aa 100644 --- a/apps/web/src/schema/alert-manager/event/model.ts +++ b/apps/web/src/api-clients/alert-manager/event/schema/model.ts @@ -1,4 +1,4 @@ -import type { EventSeverityType, EventType } from '@/schema/alert-manager/event/type'; +import type { EventSeverityType, EventType } from '@/api-clients/alert-manager/event/schema/type'; export interface EventModel { event_id: string; diff --git a/apps/web/src/schema/alert-manager/event/type.ts b/apps/web/src/api-clients/alert-manager/event/schema/type.ts similarity index 60% rename from apps/web/src/schema/alert-manager/event/type.ts rename to apps/web/src/api-clients/alert-manager/event/schema/type.ts index a33245a307..e2ab56d74e 100644 --- a/apps/web/src/schema/alert-manager/event/type.ts +++ b/apps/web/src/api-clients/alert-manager/event/schema/type.ts @@ -1,4 +1,4 @@ -import type { EVENT_SEVERITY, EVENT_TYPE } from '@/schema/alert-manager/event/constants'; +import type { EVENT_SEVERITY, EVENT_TYPE } from '@/api-clients/alert-manager/event/schema/constants'; export type EventSeverityType = typeof EVENT_SEVERITY[keyof typeof EVENT_SEVERITY]; export type EventType = typeof EVENT_TYPE[keyof typeof EVENT_TYPE]; diff --git a/apps/web/src/api-clients/alert-manager/note/composables/use-note-api.ts b/apps/web/src/api-clients/alert-manager/note/composables/use-note-api.ts new file mode 100644 index 0000000000..ed09f3c827 --- /dev/null +++ b/apps/web/src/api-clients/alert-manager/note/composables/use-note-api.ts @@ -0,0 +1,24 @@ +import { SpaceConnector } from '@cloudforet/core-lib/space-connector'; + +import type { ListResponse } from '@/api-clients/_common/schema/api-verbs/list'; +import type { NoteCreateParameters } from '@/api-clients/alert-manager/note/schema/api-verbs/create'; +import type { NoteDeleteParameters } from '@/api-clients/alert-manager/note/schema/api-verbs/delete'; +import type { NoteGetParameters } from '@/api-clients/alert-manager/note/schema/api-verbs/get'; +import type { NoteListParameters } from '@/api-clients/alert-manager/note/schema/api-verbs/list'; +import type { NoteUpdateParameters } from '@/api-clients/alert-manager/note/schema/api-verbs/update'; +import type { NoteModel } from '@/api-clients/alert-manager/note/schema/model'; + +export const useNoteApi = () => { + const actions = { + create: SpaceConnector.clientV2.alertManager.note.create, + delete: SpaceConnector.clientV2.alertManager.note.delete, + get: SpaceConnector.clientV2.alertManager.note.get, + list: SpaceConnector.clientV2.alertManager.note.list>, + update: SpaceConnector.clientV2.alertManager.note.update, + }; + + return { + noteAPI: actions, + }; +}; + diff --git a/apps/web/src/schema/alert-manager/note/api-verbs/create.ts b/apps/web/src/api-clients/alert-manager/note/schema/api-verbs/create.ts similarity index 100% rename from apps/web/src/schema/alert-manager/note/api-verbs/create.ts rename to apps/web/src/api-clients/alert-manager/note/schema/api-verbs/create.ts diff --git a/apps/web/src/schema/alert-manager/note/api-verbs/delete.ts b/apps/web/src/api-clients/alert-manager/note/schema/api-verbs/delete.ts similarity index 100% rename from apps/web/src/schema/alert-manager/note/api-verbs/delete.ts rename to apps/web/src/api-clients/alert-manager/note/schema/api-verbs/delete.ts diff --git a/apps/web/src/schema/alert-manager/note/api-verbs/get.ts b/apps/web/src/api-clients/alert-manager/note/schema/api-verbs/get.ts similarity index 100% rename from apps/web/src/schema/alert-manager/note/api-verbs/get.ts rename to apps/web/src/api-clients/alert-manager/note/schema/api-verbs/get.ts diff --git a/apps/web/src/schema/alert-manager/note/api-verbs/list.ts b/apps/web/src/api-clients/alert-manager/note/schema/api-verbs/list.ts similarity index 100% rename from apps/web/src/schema/alert-manager/note/api-verbs/list.ts rename to apps/web/src/api-clients/alert-manager/note/schema/api-verbs/list.ts diff --git a/apps/web/src/schema/alert-manager/note/api-verbs/update.ts b/apps/web/src/api-clients/alert-manager/note/schema/api-verbs/update.ts similarity index 100% rename from apps/web/src/schema/alert-manager/note/api-verbs/update.ts rename to apps/web/src/api-clients/alert-manager/note/schema/api-verbs/update.ts diff --git a/apps/web/src/schema/alert-manager/note/model.ts b/apps/web/src/api-clients/alert-manager/note/schema/model.ts similarity index 100% rename from apps/web/src/schema/alert-manager/note/model.ts rename to apps/web/src/api-clients/alert-manager/note/schema/model.ts diff --git a/apps/web/src/api-clients/alert-manager/notification-protocol/composables/use-notification-protocol-api.ts b/apps/web/src/api-clients/alert-manager/notification-protocol/composables/use-notification-protocol-api.ts new file mode 100644 index 0000000000..cbff5e8e06 --- /dev/null +++ b/apps/web/src/api-clients/alert-manager/notification-protocol/composables/use-notification-protocol-api.ts @@ -0,0 +1,32 @@ +import { SpaceConnector } from '@cloudforet/core-lib/space-connector'; + +import type { ListResponse } from '@/api-clients/_common/schema/api-verbs/list'; +import type { NotificationProtocolCreateParameters } from '@/api-clients/alert-manager/notification-protocol/schema/api-verbs/create'; +import type { NotificationProtocolDeleteParameters } from '@/api-clients/alert-manager/notification-protocol/schema/api-verbs/delete'; +import type { NotificationProtocolDisableParameters } from '@/api-clients/alert-manager/notification-protocol/schema/api-verbs/disable'; +import type { NotificationProtocolEnableParameters } from '@/api-clients/alert-manager/notification-protocol/schema/api-verbs/enable'; +import type { NotificationProtocolGetParameters } from '@/api-clients/alert-manager/notification-protocol/schema/api-verbs/get'; +import type { NotificationProtocolListParameters } from '@/api-clients/alert-manager/notification-protocol/schema/api-verbs/list'; +import type { NotificationProtocolUpdateParameters } from '@/api-clients/alert-manager/notification-protocol/schema/api-verbs/update'; +import type { NotificationProtocolUpdatePluginParameters } from '@/api-clients/alert-manager/notification-protocol/schema/api-verbs/update-plugin'; +import type { NotificationProtocolVerifyPluginParameters } from '@/api-clients/alert-manager/notification-protocol/schema/api-verbs/verify-plugin'; +import type { NotificationProtocolModel } from '@/api-clients/alert-manager/notification-protocol/schema/model'; + +export const useNotificationProtocolApi = () => { + const actions = { + create: SpaceConnector.clientV2.alertManager.notificationProtocol.create, + delete: SpaceConnector.clientV2.alertManager.notificationProtocol.delete, + disable: SpaceConnector.clientV2.alertManager.notificationProtocol.disable, + enable: SpaceConnector.clientV2.alertManager.notificationProtocol.enable, + get: SpaceConnector.clientV2.alertManager.notificationProtocol.get, + list: SpaceConnector.clientV2.alertManager.notificationProtocol.list>, + updatePlugin: SpaceConnector.clientV2.alertManager.notificationProtocol.updatePlugin, + update: SpaceConnector.clientV2.alertManager.notificationProtocol.update, + verifyPlugin: SpaceConnector.clientV2.alertManager.notificationProtocol.verifyPlugin, + }; + + return { + notificationProtocolAPI: actions, + }; +}; + diff --git a/apps/web/src/schema/alert-manager/notification-protocol/api-verbs/create.ts b/apps/web/src/api-clients/alert-manager/notification-protocol/schema/api-verbs/create.ts similarity index 81% rename from apps/web/src/schema/alert-manager/notification-protocol/api-verbs/create.ts rename to apps/web/src/api-clients/alert-manager/notification-protocol/schema/api-verbs/create.ts index 260e2f04eb..5177becb1e 100644 --- a/apps/web/src/schema/alert-manager/notification-protocol/api-verbs/create.ts +++ b/apps/web/src/api-clients/alert-manager/notification-protocol/schema/api-verbs/create.ts @@ -1,6 +1,5 @@ import type { Tags } from '@/api-clients/_common/schema/model'; -import type { NotificationProtocolPluginInfoRequestType } from '@/schema/alert-manager/notification-protocol/type'; - +import type { NotificationProtocolPluginInfoRequestType } from '@/api-clients/alert-manager/notification-protocol/schema/type'; export interface NotificationProtocolCreateParameters { name: string; diff --git a/apps/web/src/schema/alert-manager/notification-protocol/api-verbs/delete.ts b/apps/web/src/api-clients/alert-manager/notification-protocol/schema/api-verbs/delete.ts similarity index 100% rename from apps/web/src/schema/alert-manager/notification-protocol/api-verbs/delete.ts rename to apps/web/src/api-clients/alert-manager/notification-protocol/schema/api-verbs/delete.ts diff --git a/apps/web/src/schema/alert-manager/notification-protocol/api-verbs/disable.ts b/apps/web/src/api-clients/alert-manager/notification-protocol/schema/api-verbs/disable.ts similarity index 100% rename from apps/web/src/schema/alert-manager/notification-protocol/api-verbs/disable.ts rename to apps/web/src/api-clients/alert-manager/notification-protocol/schema/api-verbs/disable.ts diff --git a/apps/web/src/schema/alert-manager/notification-protocol/api-verbs/enable.ts b/apps/web/src/api-clients/alert-manager/notification-protocol/schema/api-verbs/enable.ts similarity index 100% rename from apps/web/src/schema/alert-manager/notification-protocol/api-verbs/enable.ts rename to apps/web/src/api-clients/alert-manager/notification-protocol/schema/api-verbs/enable.ts diff --git a/apps/web/src/schema/alert-manager/notification-protocol/api-verbs/get.ts b/apps/web/src/api-clients/alert-manager/notification-protocol/schema/api-verbs/get.ts similarity index 100% rename from apps/web/src/schema/alert-manager/notification-protocol/api-verbs/get.ts rename to apps/web/src/api-clients/alert-manager/notification-protocol/schema/api-verbs/get.ts diff --git a/apps/web/src/schema/alert-manager/notification-protocol/api-verbs/list.ts b/apps/web/src/api-clients/alert-manager/notification-protocol/schema/api-verbs/list.ts similarity index 67% rename from apps/web/src/schema/alert-manager/notification-protocol/api-verbs/list.ts rename to apps/web/src/api-clients/alert-manager/notification-protocol/schema/api-verbs/list.ts index 173a7aa9fc..d6b3abc1a2 100644 --- a/apps/web/src/schema/alert-manager/notification-protocol/api-verbs/list.ts +++ b/apps/web/src/api-clients/alert-manager/notification-protocol/schema/api-verbs/list.ts @@ -1,6 +1,6 @@ import type { Query } from '@cloudforet/core-lib/space-connector/type'; -import type { NotificationProtocolStateType } from '@/schema/alert-manager/notification-protocol/type'; +import type { NotificationProtocolStateType } from '@/api-clients/alert-manager/notification-protocol/schema/type'; export interface NotificationProtocolListParameters { query?: Query; diff --git a/apps/web/src/schema/alert-manager/notification-protocol/api-verbs/update-plugin.ts b/apps/web/src/api-clients/alert-manager/notification-protocol/schema/api-verbs/update-plugin.ts similarity index 81% rename from apps/web/src/schema/alert-manager/notification-protocol/api-verbs/update-plugin.ts rename to apps/web/src/api-clients/alert-manager/notification-protocol/schema/api-verbs/update-plugin.ts index 422a7f6d71..a0ebf66977 100644 --- a/apps/web/src/schema/alert-manager/notification-protocol/api-verbs/update-plugin.ts +++ b/apps/web/src/api-clients/alert-manager/notification-protocol/schema/api-verbs/update-plugin.ts @@ -1,4 +1,4 @@ -import type { NotificationProtocolPluginUpgradeModeType } from '@/schema/alert-manager/notification-protocol/type'; +import type { NotificationProtocolPluginUpgradeModeType } from '@/api-clients/alert-manager/notification-protocol/schema/type'; export interface NotificationProtocolUpdatePluginParameters { protocol_id: string; diff --git a/apps/web/src/schema/alert-manager/notification-protocol/api-verbs/update.ts b/apps/web/src/api-clients/alert-manager/notification-protocol/schema/api-verbs/update.ts similarity index 100% rename from apps/web/src/schema/alert-manager/notification-protocol/api-verbs/update.ts rename to apps/web/src/api-clients/alert-manager/notification-protocol/schema/api-verbs/update.ts diff --git a/apps/web/src/schema/alert-manager/notification-protocol/api-verbs/verify-plugin.ts b/apps/web/src/api-clients/alert-manager/notification-protocol/schema/api-verbs/verify-plugin.ts similarity index 100% rename from apps/web/src/schema/alert-manager/notification-protocol/api-verbs/verify-plugin.ts rename to apps/web/src/api-clients/alert-manager/notification-protocol/schema/api-verbs/verify-plugin.ts diff --git a/apps/web/src/schema/alert-manager/notification-protocol/constants.ts b/apps/web/src/api-clients/alert-manager/notification-protocol/schema/constants.ts similarity index 100% rename from apps/web/src/schema/alert-manager/notification-protocol/constants.ts rename to apps/web/src/api-clients/alert-manager/notification-protocol/schema/constants.ts diff --git a/apps/web/src/schema/alert-manager/notification-protocol/model.ts b/apps/web/src/api-clients/alert-manager/notification-protocol/schema/model.ts similarity index 86% rename from apps/web/src/schema/alert-manager/notification-protocol/model.ts rename to apps/web/src/api-clients/alert-manager/notification-protocol/schema/model.ts index 09858280e6..4d8e4e4fbe 100644 --- a/apps/web/src/schema/alert-manager/notification-protocol/model.ts +++ b/apps/web/src/api-clients/alert-manager/notification-protocol/schema/model.ts @@ -4,7 +4,7 @@ import type { Tags } from '@/api-clients/_common/schema/model'; import type { NotificationProtocolPluginInfoType, NotificationProtocolStateType, -} from '@/schema/alert-manager/notification-protocol/type'; +} from '@/api-clients/alert-manager/notification-protocol/schema/type'; export interface NotificationProtocolModel { protocol_id: string; diff --git a/apps/web/src/schema/alert-manager/notification-protocol/type.ts b/apps/web/src/api-clients/alert-manager/notification-protocol/schema/type.ts similarity index 92% rename from apps/web/src/schema/alert-manager/notification-protocol/type.ts rename to apps/web/src/api-clients/alert-manager/notification-protocol/schema/type.ts index 093b9d778d..4ac5864484 100644 --- a/apps/web/src/schema/alert-manager/notification-protocol/type.ts +++ b/apps/web/src/api-clients/alert-manager/notification-protocol/schema/type.ts @@ -1,6 +1,6 @@ import type { JsonSchema } from '@cloudforet/mirinae/types/controls/forms/json-schema-form/type'; -import type { NOTIFICATION_PROTOCOL_STATE, NOTIFICATION_PROTOCOL_PLUGIN_UPGRADE_MODE } from '@/schema/alert-manager/notification-protocol/constants'; +import type { NOTIFICATION_PROTOCOL_STATE, NOTIFICATION_PROTOCOL_PLUGIN_UPGRADE_MODE } from '@/api-clients/alert-manager/notification-protocol/schema/constants'; export type NotificationProtocolStateType = typeof NOTIFICATION_PROTOCOL_STATE[keyof typeof NOTIFICATION_PROTOCOL_STATE]; diff --git a/apps/web/src/api-clients/alert-manager/service-channel/composables/use-service-channel-api.ts b/apps/web/src/api-clients/alert-manager/service-channel/composables/use-service-channel-api.ts new file mode 100644 index 0000000000..8ba547a477 --- /dev/null +++ b/apps/web/src/api-clients/alert-manager/service-channel/composables/use-service-channel-api.ts @@ -0,0 +1,29 @@ +import { SpaceConnector } from '@cloudforet/core-lib/space-connector'; + +import type { ListResponse } from '@/api-clients/_common/schema/api-verbs/list'; +import type { ServiceChannelCreateParameters } from '@/api-clients/alert-manager/service-channel/schema/api-verbs/create'; +import type { ServiceChannelDeleteParameters } from '@/api-clients/alert-manager/service-channel/schema/api-verbs/delete'; +import type { ServiceChannelDisableParameters } from '@/api-clients/alert-manager/service-channel/schema/api-verbs/disable'; +import type { ServiceChannelEnableParameters } from '@/api-clients/alert-manager/service-channel/schema/api-verbs/enable'; +import type { ServiceChannelGetParameters } from '@/api-clients/alert-manager/service-channel/schema/api-verbs/get'; +import type { ServiceChannelListParameters } from '@/api-clients/alert-manager/service-channel/schema/api-verbs/list'; +import type { ServiceChannelUpdateParameters } from '@/api-clients/alert-manager/service-channel/schema/api-verbs/update'; +import type { ServiceChannelModel } from '@/api-clients/alert-manager/service-channel/schema/model'; + +export const useServiceChannelApi = () => { + const actions = { + createForwardChannel: SpaceConnector.clientV2.alertManager.serviceChannel.createForwardChannel, + create: SpaceConnector.clientV2.alertManager.serviceChannel.create, + delete: SpaceConnector.clientV2.alertManager.serviceChannel.delete, + disable: SpaceConnector.clientV2.alertManager.serviceChannel.disable, + enable: SpaceConnector.clientV2.alertManager.serviceChannel.enable, + get: SpaceConnector.clientV2.alertManager.serviceChannel.get, + list: SpaceConnector.clientV2.alertManager.serviceChannel.list>, + update: SpaceConnector.clientV2.alertManager.serviceChannel.update, + }; + + return { + serviceChannelAPI: actions, + }; +}; + diff --git a/apps/web/src/schema/alert-manager/service-channel/api-verbs/create-forward-channel.ts b/apps/web/src/api-clients/alert-manager/service-channel/schema/api-verbs/create-forward-channel.ts similarity index 82% rename from apps/web/src/schema/alert-manager/service-channel/api-verbs/create-forward-channel.ts rename to apps/web/src/api-clients/alert-manager/service-channel/schema/api-verbs/create-forward-channel.ts index 9cc120c911..ec8613bb5c 100644 --- a/apps/web/src/schema/alert-manager/service-channel/api-verbs/create-forward-channel.ts +++ b/apps/web/src/api-clients/alert-manager/service-channel/schema/api-verbs/create-forward-channel.ts @@ -1,5 +1,5 @@ import type { Tags } from '@/api-clients/_common/schema/model'; -import type { ServiceChannelDataType, ServiceChannelScheduleInfoType } from '@/schema/alert-manager/service-channel/type'; +import type { ServiceChannelDataType, ServiceChannelScheduleInfoType } from '@/api-clients/alert-manager/service-channel/schema/type'; export interface ServiceChannelCreateForwardChannelParameters { name: string; diff --git a/apps/web/src/schema/alert-manager/service-channel/api-verbs/create.ts b/apps/web/src/api-clients/alert-manager/service-channel/schema/api-verbs/create.ts similarity index 83% rename from apps/web/src/schema/alert-manager/service-channel/api-verbs/create.ts rename to apps/web/src/api-clients/alert-manager/service-channel/schema/api-verbs/create.ts index 7a9cb76cdc..37e9b0d926 100644 --- a/apps/web/src/schema/alert-manager/service-channel/api-verbs/create.ts +++ b/apps/web/src/api-clients/alert-manager/service-channel/schema/api-verbs/create.ts @@ -1,5 +1,5 @@ import type { Tags } from '@/api-clients/_common/schema/model'; -import type { ServiceChannelDataType, ServiceChannelScheduleInfoType } from '@/schema/alert-manager/service-channel/type'; +import type { ServiceChannelDataType, ServiceChannelScheduleInfoType } from '@/api-clients/alert-manager/service-channel/schema/type'; export interface ServiceChannelCreateParameters { protocol_id: string; diff --git a/apps/web/src/schema/alert-manager/service-channel/api-verbs/delete.ts b/apps/web/src/api-clients/alert-manager/service-channel/schema/api-verbs/delete.ts similarity index 100% rename from apps/web/src/schema/alert-manager/service-channel/api-verbs/delete.ts rename to apps/web/src/api-clients/alert-manager/service-channel/schema/api-verbs/delete.ts diff --git a/apps/web/src/schema/alert-manager/service-channel/api-verbs/disable.ts b/apps/web/src/api-clients/alert-manager/service-channel/schema/api-verbs/disable.ts similarity index 100% rename from apps/web/src/schema/alert-manager/service-channel/api-verbs/disable.ts rename to apps/web/src/api-clients/alert-manager/service-channel/schema/api-verbs/disable.ts diff --git a/apps/web/src/schema/alert-manager/service-channel/api-verbs/enable.ts b/apps/web/src/api-clients/alert-manager/service-channel/schema/api-verbs/enable.ts similarity index 100% rename from apps/web/src/schema/alert-manager/service-channel/api-verbs/enable.ts rename to apps/web/src/api-clients/alert-manager/service-channel/schema/api-verbs/enable.ts diff --git a/apps/web/src/schema/alert-manager/service-channel/api-verbs/get.ts b/apps/web/src/api-clients/alert-manager/service-channel/schema/api-verbs/get.ts similarity index 100% rename from apps/web/src/schema/alert-manager/service-channel/api-verbs/get.ts rename to apps/web/src/api-clients/alert-manager/service-channel/schema/api-verbs/get.ts diff --git a/apps/web/src/schema/alert-manager/service-channel/api-verbs/list.ts b/apps/web/src/api-clients/alert-manager/service-channel/schema/api-verbs/list.ts similarity index 86% rename from apps/web/src/schema/alert-manager/service-channel/api-verbs/list.ts rename to apps/web/src/api-clients/alert-manager/service-channel/schema/api-verbs/list.ts index c7283b3582..fe2f8b25ce 100644 --- a/apps/web/src/schema/alert-manager/service-channel/api-verbs/list.ts +++ b/apps/web/src/api-clients/alert-manager/service-channel/schema/api-verbs/list.ts @@ -3,7 +3,7 @@ import type { Query } from '@cloudforet/core-lib/space-connector/type'; import type { ServiceChannelStateType, ServiceChannelType, -} from '@/schema/alert-manager/service-channel/type'; +} from '@/api-clients/alert-manager/service-channel/schema/type'; export interface ServiceChannelListParameters { query?: Query; diff --git a/apps/web/src/schema/alert-manager/service-channel/api-verbs/update.ts b/apps/web/src/api-clients/alert-manager/service-channel/schema/api-verbs/update.ts similarity index 81% rename from apps/web/src/schema/alert-manager/service-channel/api-verbs/update.ts rename to apps/web/src/api-clients/alert-manager/service-channel/schema/api-verbs/update.ts index 51dc4c2801..68221986b6 100644 --- a/apps/web/src/schema/alert-manager/service-channel/api-verbs/update.ts +++ b/apps/web/src/api-clients/alert-manager/service-channel/schema/api-verbs/update.ts @@ -1,5 +1,5 @@ import type { Tags } from '@/api-clients/_common/schema/model'; -import type { ServiceChannelDataType, ServiceChannelScheduleInfoType } from '@/schema/alert-manager/service-channel/type'; +import type { ServiceChannelDataType, ServiceChannelScheduleInfoType } from '@/api-clients/alert-manager/service-channel/schema/type'; export interface ServiceChannelUpdateParameters { channel_id: string; diff --git a/apps/web/src/schema/alert-manager/service-channel/constants.ts b/apps/web/src/api-clients/alert-manager/service-channel/schema/constants.ts similarity index 100% rename from apps/web/src/schema/alert-manager/service-channel/constants.ts rename to apps/web/src/api-clients/alert-manager/service-channel/schema/constants.ts diff --git a/apps/web/src/schema/alert-manager/service-channel/model.ts b/apps/web/src/api-clients/alert-manager/service-channel/schema/model.ts similarity index 80% rename from apps/web/src/schema/alert-manager/service-channel/model.ts rename to apps/web/src/api-clients/alert-manager/service-channel/schema/model.ts index 0d8bea6974..0b1f852dfe 100644 --- a/apps/web/src/schema/alert-manager/service-channel/model.ts +++ b/apps/web/src/api-clients/alert-manager/service-channel/schema/model.ts @@ -1,9 +1,10 @@ import type { Tags } from '@/api-clients/_common/schema/model'; import type { ServiceChannelDataType, + ServiceChannelScheduleInfoType, ServiceChannelStateType, - ServiceChannelType, ServiceChannelScheduleInfoType, -} from '@/schema/alert-manager/service-channel/type'; + ServiceChannelType, +} from '@/api-clients/alert-manager/service-channel/schema/type'; export interface ServiceChannelModel { channel_id: string; diff --git a/apps/web/src/schema/alert-manager/service-channel/type.ts b/apps/web/src/api-clients/alert-manager/service-channel/schema/type.ts similarity index 94% rename from apps/web/src/schema/alert-manager/service-channel/type.ts rename to apps/web/src/api-clients/alert-manager/service-channel/schema/type.ts index b349dd71f4..96809817e4 100644 --- a/apps/web/src/schema/alert-manager/service-channel/type.ts +++ b/apps/web/src/api-clients/alert-manager/service-channel/schema/type.ts @@ -3,7 +3,7 @@ import type { SERVICE_CHANNEL_STATE, SERVICE_CHANNEL_TYPE, SERVICE_CHANNEL_SCHEDULE_TYPE, -} from '@/schema/alert-manager/service-channel/constants'; +} from '@/api-clients/alert-manager/service-channel/schema/constants'; export type ServiceChannelStateType = typeof SERVICE_CHANNEL_STATE[keyof typeof SERVICE_CHANNEL_STATE]; export type ServiceChannelType = typeof SERVICE_CHANNEL_TYPE[keyof typeof SERVICE_CHANNEL_TYPE]; diff --git a/apps/web/src/api-clients/alert-manager/service/composables/use-service-api.ts b/apps/web/src/api-clients/alert-manager/service/composables/use-service-api.ts new file mode 100644 index 0000000000..f1006031cb --- /dev/null +++ b/apps/web/src/api-clients/alert-manager/service/composables/use-service-api.ts @@ -0,0 +1,26 @@ +import { SpaceConnector } from '@cloudforet/core-lib/space-connector'; + +import type { ListResponse } from '@/api-clients/_common/schema/api-verbs/list'; +import type { ServiceChangeMembersParameters } from '@/api-clients/alert-manager/service/schema/api-verbs/change-members'; +import type { ServiceCreateParameters } from '@/api-clients/alert-manager/service/schema/api-verbs/create'; +import type { ServiceDeleteParameters } from '@/api-clients/alert-manager/service/schema/api-verbs/delete'; +import type { ServiceGetParameters } from '@/api-clients/alert-manager/service/schema/api-verbs/get'; +import type { ServiceListParameters } from '@/api-clients/alert-manager/service/schema/api-verbs/list'; +import type { ServiceUpdateParameters } from '@/api-clients/alert-manager/service/schema/api-verbs/update'; +import type { ServiceModel } from '@/api-clients/alert-manager/service/schema/model'; + +export const useServiceApi = () => { + const actions = { + changeMembers: SpaceConnector.clientV2.alertManager.service.changeMembers, + create: SpaceConnector.clientV2.alertManager.service.create, + delete: SpaceConnector.clientV2.alertManager.service.delete, + get: SpaceConnector.clientV2.alertManager.service.get, + list: SpaceConnector.clientV2.alertManager.service.list>, + update: SpaceConnector.clientV2.alertManager.service.update, + }; + + return { + serviceAPI: actions, + }; +}; + diff --git a/apps/web/src/schema/alert-manager/service/api-verbs/chagne-members.ts b/apps/web/src/api-clients/alert-manager/service/schema/api-verbs/change-members.ts similarity index 59% rename from apps/web/src/schema/alert-manager/service/api-verbs/chagne-members.ts rename to apps/web/src/api-clients/alert-manager/service/schema/api-verbs/change-members.ts index ebdd311bd8..9c6eb4dc90 100644 --- a/apps/web/src/schema/alert-manager/service/api-verbs/chagne-members.ts +++ b/apps/web/src/api-clients/alert-manager/service/schema/api-verbs/change-members.ts @@ -1,4 +1,4 @@ -import type { MembersType } from '@/schema/alert-manager/service/type'; +import type { MembersType } from '@/api-clients/alert-manager/service/schema/type'; export interface ServiceChangeMembersParameters { service_id: string; diff --git a/apps/web/src/schema/alert-manager/service/api-verbs/create.ts b/apps/web/src/api-clients/alert-manager/service/schema/api-verbs/create.ts similarity index 72% rename from apps/web/src/schema/alert-manager/service/api-verbs/create.ts rename to apps/web/src/api-clients/alert-manager/service/schema/api-verbs/create.ts index 21a95bb002..7710aa8519 100644 --- a/apps/web/src/schema/alert-manager/service/api-verbs/create.ts +++ b/apps/web/src/api-clients/alert-manager/service/schema/api-verbs/create.ts @@ -1,5 +1,5 @@ import type { Tags } from '@/api-clients/_common/schema/model'; -import type { MembersType, ServiceOptionsType } from '@/schema/alert-manager/service/type'; +import type { MembersType, ServiceOptionsType } from '@/api-clients/alert-manager/service/schema/type'; export interface ServiceCreateParameters { name: string; diff --git a/apps/web/src/schema/alert-manager/service/api-verbs/delete.ts b/apps/web/src/api-clients/alert-manager/service/schema/api-verbs/delete.ts similarity index 100% rename from apps/web/src/schema/alert-manager/service/api-verbs/delete.ts rename to apps/web/src/api-clients/alert-manager/service/schema/api-verbs/delete.ts diff --git a/apps/web/src/schema/alert-manager/service/api-verbs/get.ts b/apps/web/src/api-clients/alert-manager/service/schema/api-verbs/get.ts similarity index 100% rename from apps/web/src/schema/alert-manager/service/api-verbs/get.ts rename to apps/web/src/api-clients/alert-manager/service/schema/api-verbs/get.ts diff --git a/apps/web/src/schema/alert-manager/service/api-verbs/list.ts b/apps/web/src/api-clients/alert-manager/service/schema/api-verbs/list.ts similarity index 100% rename from apps/web/src/schema/alert-manager/service/api-verbs/list.ts rename to apps/web/src/api-clients/alert-manager/service/schema/api-verbs/list.ts diff --git a/apps/web/src/schema/alert-manager/service/api-verbs/update.ts b/apps/web/src/api-clients/alert-manager/service/schema/api-verbs/update.ts similarity index 74% rename from apps/web/src/schema/alert-manager/service/api-verbs/update.ts rename to apps/web/src/api-clients/alert-manager/service/schema/api-verbs/update.ts index bcfb7b6917..77486e249b 100644 --- a/apps/web/src/schema/alert-manager/service/api-verbs/update.ts +++ b/apps/web/src/api-clients/alert-manager/service/schema/api-verbs/update.ts @@ -1,5 +1,5 @@ import type { Tags } from '@/api-clients/_common/schema/model'; -import type { ServiceOptionsType } from '@/schema/alert-manager/service/type'; +import type { ServiceOptionsType } from '@/api-clients/alert-manager/service/schema/type'; export interface ServiceUpdateParameters { service_id: string; diff --git a/apps/web/src/schema/alert-manager/service/constants.ts b/apps/web/src/api-clients/alert-manager/service/schema/constants.ts similarity index 100% rename from apps/web/src/schema/alert-manager/service/constants.ts rename to apps/web/src/api-clients/alert-manager/service/schema/constants.ts diff --git a/apps/web/src/schema/alert-manager/service/model.ts b/apps/web/src/api-clients/alert-manager/service/schema/model.ts similarity index 91% rename from apps/web/src/schema/alert-manager/service/model.ts rename to apps/web/src/api-clients/alert-manager/service/schema/model.ts index bad20bc731..27c9ccca2c 100644 --- a/apps/web/src/schema/alert-manager/service/model.ts +++ b/apps/web/src/api-clients/alert-manager/service/schema/model.ts @@ -1,7 +1,7 @@ import type { Tags } from '@/api-clients/_common/schema/model'; import type { AlertsInfoType, AlertsType, HealthyType, MembersType, ServiceOptionsType, -} from '@/schema/alert-manager/service/type'; +} from '@/api-clients/alert-manager/service/schema/type'; export interface ServiceModel { service_id: string; diff --git a/apps/web/src/schema/alert-manager/service/type.ts b/apps/web/src/api-clients/alert-manager/service/schema/type.ts similarity index 92% rename from apps/web/src/schema/alert-manager/service/type.ts rename to apps/web/src/api-clients/alert-manager/service/schema/type.ts index 67cc5867ec..dec52b4ad4 100644 --- a/apps/web/src/schema/alert-manager/service/type.ts +++ b/apps/web/src/api-clients/alert-manager/service/schema/type.ts @@ -1,7 +1,7 @@ import type { NOTIFICATION_URGENCY, RECOVERY_MODE, MEMBERS_TYPE, SERVICE_ALERTS_TYPE, SERVICE_HEALTHY_TYPE, -} from '@/schema/alert-manager/service/constants'; +} from '@/api-clients/alert-manager/service/schema/constants'; export type NotificationUrgencyType = typeof NOTIFICATION_URGENCY[keyof typeof NOTIFICATION_URGENCY]; export type RecoveryModeType = typeof RECOVERY_MODE[keyof typeof RECOVERY_MODE]; diff --git a/apps/web/src/api-clients/alert-manager/user-channel/composables/use-user-channel-api.ts b/apps/web/src/api-clients/alert-manager/user-channel/composables/use-user-channel-api.ts new file mode 100644 index 0000000000..6da3118a1c --- /dev/null +++ b/apps/web/src/api-clients/alert-manager/user-channel/composables/use-user-channel-api.ts @@ -0,0 +1,28 @@ +import { SpaceConnector } from '@cloudforet/core-lib/space-connector'; + +import type { ListResponse } from '@/api-clients/_common/schema/api-verbs/list'; +import type { UserChannelCreateParameters } from '@/api-clients/alert-manager/user-channel/schema/api-verbs/create'; +import type { UserChannelDeleteParameters } from '@/api-clients/alert-manager/user-channel/schema/api-verbs/delete'; +import type { UserChannelDisableParameters } from '@/api-clients/alert-manager/user-channel/schema/api-verbs/disable'; +import type { UserChannelEnableParameters } from '@/api-clients/alert-manager/user-channel/schema/api-verbs/enable'; +import type { UserChannelGetParameters } from '@/api-clients/alert-manager/user-channel/schema/api-verbs/get'; +import type { UserChannelListParameters } from '@/api-clients/alert-manager/user-channel/schema/api-verbs/list'; +import type { UserChannelUpdateParameters } from '@/api-clients/alert-manager/user-channel/schema/api-verbs/update'; +import type { UserChannelModel } from '@/api-clients/alert-manager/user-channel/schema/model'; + +export const useUserChannelApi = () => { + const actions = { + create: SpaceConnector.clientV2.alertManager.userChannel.create, + delete: SpaceConnector.clientV2.alertManager.userChannel.delete, + disable: SpaceConnector.clientV2.alertManager.userChannel.disable, + enable: SpaceConnector.clientV2.alertManager.userChannel.enable, + get: SpaceConnector.clientV2.alertManager.userChannel.get, + list: SpaceConnector.clientV2.alertManager.userChannel.list>, + update: SpaceConnector.clientV2.alertManager.userChannel.update, + }; + + return { + userChannelAPI: actions, + }; +}; + diff --git a/apps/web/src/schema/alert-manager/user-channel/api-verbs/create.ts b/apps/web/src/api-clients/alert-manager/user-channel/schema/api-verbs/create.ts similarity index 67% rename from apps/web/src/schema/alert-manager/user-channel/api-verbs/create.ts rename to apps/web/src/api-clients/alert-manager/user-channel/schema/api-verbs/create.ts index 1ba874cf52..9ffeb0383b 100644 --- a/apps/web/src/schema/alert-manager/user-channel/api-verbs/create.ts +++ b/apps/web/src/api-clients/alert-manager/user-channel/schema/api-verbs/create.ts @@ -1,5 +1,5 @@ import type { Tags } from '@/api-clients/_common/schema/model'; -import type { UserChannelScheduleInfoType } from '@/schema/alert-manager/user-channel/type'; +import type { UserChannelScheduleInfoType } from '@/api-clients/alert-manager/user-channel/schema/type'; export interface UserChannelCreateParameters { protocol_id: string; diff --git a/apps/web/src/schema/alert-manager/user-channel/api-verbs/delete.ts b/apps/web/src/api-clients/alert-manager/user-channel/schema/api-verbs/delete.ts similarity index 100% rename from apps/web/src/schema/alert-manager/user-channel/api-verbs/delete.ts rename to apps/web/src/api-clients/alert-manager/user-channel/schema/api-verbs/delete.ts diff --git a/apps/web/src/schema/alert-manager/user-channel/api-verbs/disable.ts b/apps/web/src/api-clients/alert-manager/user-channel/schema/api-verbs/disable.ts similarity index 100% rename from apps/web/src/schema/alert-manager/user-channel/api-verbs/disable.ts rename to apps/web/src/api-clients/alert-manager/user-channel/schema/api-verbs/disable.ts diff --git a/apps/web/src/schema/alert-manager/user-channel/api-verbs/enable.ts b/apps/web/src/api-clients/alert-manager/user-channel/schema/api-verbs/enable.ts similarity index 100% rename from apps/web/src/schema/alert-manager/user-channel/api-verbs/enable.ts rename to apps/web/src/api-clients/alert-manager/user-channel/schema/api-verbs/enable.ts diff --git a/apps/web/src/schema/alert-manager/user-channel/api-verbs/get.ts b/apps/web/src/api-clients/alert-manager/user-channel/schema/api-verbs/get.ts similarity index 100% rename from apps/web/src/schema/alert-manager/user-channel/api-verbs/get.ts rename to apps/web/src/api-clients/alert-manager/user-channel/schema/api-verbs/get.ts diff --git a/apps/web/src/schema/alert-manager/user-channel/api-verbs/list.ts b/apps/web/src/api-clients/alert-manager/user-channel/schema/api-verbs/list.ts similarity index 71% rename from apps/web/src/schema/alert-manager/user-channel/api-verbs/list.ts rename to apps/web/src/api-clients/alert-manager/user-channel/schema/api-verbs/list.ts index d746592400..6da2293dce 100644 --- a/apps/web/src/schema/alert-manager/user-channel/api-verbs/list.ts +++ b/apps/web/src/api-clients/alert-manager/user-channel/schema/api-verbs/list.ts @@ -1,6 +1,6 @@ import type { Query } from '@cloudforet/core-lib/space-connector/type'; -import type { UserChannelStateType } from '@/schema/alert-manager/user-channel/type'; +import type { UserChannelStateType } from '@/api-clients/alert-manager/user-channel/schema/type'; export interface UserChannelListParameters { query?: Query; diff --git a/apps/web/src/schema/alert-manager/user-channel/api-verbs/update.ts b/apps/web/src/api-clients/alert-manager/user-channel/schema/api-verbs/update.ts similarity index 70% rename from apps/web/src/schema/alert-manager/user-channel/api-verbs/update.ts rename to apps/web/src/api-clients/alert-manager/user-channel/schema/api-verbs/update.ts index b6a8cbe81c..2aeec64aa1 100644 --- a/apps/web/src/schema/alert-manager/user-channel/api-verbs/update.ts +++ b/apps/web/src/api-clients/alert-manager/user-channel/schema/api-verbs/update.ts @@ -1,5 +1,5 @@ import type { Tags } from '@/api-clients/_common/schema/model'; -import type { UserChannelScheduleInfoType } from '@/schema/alert-manager/user-channel/type'; +import type { UserChannelScheduleInfoType } from '@/api-clients/alert-manager/user-channel/schema/type'; export interface UserChannelUpdateParameters { channel_id: string; diff --git a/apps/web/src/schema/alert-manager/user-channel/constants.ts b/apps/web/src/api-clients/alert-manager/user-channel/schema/constants.ts similarity index 100% rename from apps/web/src/schema/alert-manager/user-channel/constants.ts rename to apps/web/src/api-clients/alert-manager/user-channel/schema/constants.ts diff --git a/apps/web/src/schema/alert-manager/user-channel/model.ts b/apps/web/src/api-clients/alert-manager/user-channel/schema/model.ts similarity index 86% rename from apps/web/src/schema/alert-manager/user-channel/model.ts rename to apps/web/src/api-clients/alert-manager/user-channel/schema/model.ts index bc046d561b..7b801b2ce2 100644 --- a/apps/web/src/schema/alert-manager/user-channel/model.ts +++ b/apps/web/src/api-clients/alert-manager/user-channel/schema/model.ts @@ -1,5 +1,5 @@ import type { Tags } from '@/api-clients/_common/schema/model'; -import type { UserChannelScheduleInfoType, UserChannelStateType } from '@/schema/alert-manager/user-channel/type'; +import type { UserChannelScheduleInfoType, UserChannelStateType } from '@/api-clients/alert-manager/user-channel/schema/type'; export interface UserChannelModel { channel_id: string; diff --git a/apps/web/src/schema/alert-manager/user-channel/type.ts b/apps/web/src/api-clients/alert-manager/user-channel/schema/type.ts similarity index 92% rename from apps/web/src/schema/alert-manager/user-channel/type.ts rename to apps/web/src/api-clients/alert-manager/user-channel/schema/type.ts index 4336b248f8..654d022915 100644 --- a/apps/web/src/schema/alert-manager/user-channel/type.ts +++ b/apps/web/src/api-clients/alert-manager/user-channel/schema/type.ts @@ -1,4 +1,4 @@ -import type { USER_CHANNEL_SCHEDULE_TYPE, USER_CHANNEL_STATE } from '@/schema/alert-manager/user-channel/constants'; +import type { USER_CHANNEL_SCHEDULE_TYPE, USER_CHANNEL_STATE } from '@/api-clients/alert-manager/user-channel/schema/constants'; export type UserChannelStateType = typeof USER_CHANNEL_STATE[keyof typeof USER_CHANNEL_STATE]; export type UserChannelScheduleType = typeof USER_CHANNEL_SCHEDULE_TYPE[keyof typeof USER_CHANNEL_SCHEDULE_TYPE]; diff --git a/apps/web/src/api-clients/alert-manager/user-group-channel/composables/use-user-group-channel-api.ts b/apps/web/src/api-clients/alert-manager/user-group-channel/composables/use-user-group-channel-api.ts new file mode 100644 index 0000000000..cb664ab266 --- /dev/null +++ b/apps/web/src/api-clients/alert-manager/user-group-channel/composables/use-user-group-channel-api.ts @@ -0,0 +1,28 @@ +import { SpaceConnector } from '@cloudforet/core-lib/space-connector'; + +import type { ListResponse } from '@/api-clients/_common/schema/api-verbs/list'; +import type { UserGroupChannelCreateParameters } from '@/api-clients/alert-manager/user-group-channel/schema/api-verbs/create'; +import type { UserGroupChannelDeleteParameters } from '@/api-clients/alert-manager/user-group-channel/schema/api-verbs/delete'; +import type { UserGroupChannelDisableParameters } from '@/api-clients/alert-manager/user-group-channel/schema/api-verbs/disable'; +import type { UserGroupChannelEnableParameters } from '@/api-clients/alert-manager/user-group-channel/schema/api-verbs/enable'; +import type { UserGroupChannelGetParameters } from '@/api-clients/alert-manager/user-group-channel/schema/api-verbs/get'; +import type { UserGroupChannelListParameters } from '@/api-clients/alert-manager/user-group-channel/schema/api-verbs/list'; +import type { UserGroupChannelUpdateParameters } from '@/api-clients/alert-manager/user-group-channel/schema/api-verbs/update'; +import type { UserGroupChannelModel } from '@/api-clients/alert-manager/user-group-channel/schema/model'; + +export const useUserGroupChannelApi = () => { + const actions = { + create: SpaceConnector.clientV2.alertManager.userGroupChannel.create, + delete: SpaceConnector.clientV2.alertManager.userGroupChannel.delete, + disable: SpaceConnector.clientV2.alertManager.userGroupChannel.disable, + enable: SpaceConnector.clientV2.alertManager.userGroupChannel.enable, + get: SpaceConnector.clientV2.alertManager.userGroupChannel.get, + list: SpaceConnector.clientV2.alertManager.userGroupChannel.list>, + update: SpaceConnector.clientV2.alertManager.userGroupChannel.update, + }; + + return { + userGroupChannelAPI: actions, + }; +}; + diff --git a/apps/web/src/schema/alert-manager/user-group-channel/api-verbs/create.ts b/apps/web/src/api-clients/alert-manager/user-group-channel/schema/api-verbs/create.ts similarity index 83% rename from apps/web/src/schema/alert-manager/user-group-channel/api-verbs/create.ts rename to apps/web/src/api-clients/alert-manager/user-group-channel/schema/api-verbs/create.ts index 0b3172b938..92f3f9dcc4 100644 --- a/apps/web/src/schema/alert-manager/user-group-channel/api-verbs/create.ts +++ b/apps/web/src/api-clients/alert-manager/user-group-channel/schema/api-verbs/create.ts @@ -1,7 +1,7 @@ import type { Tags } from '@/api-clients/_common/schema/model'; import type { UserGroupChannelScheduleInfoType, -} from '@/schema/alert-manager/user-group-channel/type'; +} from '@/api-clients/alert-manager/user-group-channel/schema/type'; export interface UserGroupChannelCreateParameters { protocol_id: string; diff --git a/apps/web/src/schema/alert-manager/user-group-channel/api-verbs/delete.ts b/apps/web/src/api-clients/alert-manager/user-group-channel/schema/api-verbs/delete.ts similarity index 100% rename from apps/web/src/schema/alert-manager/user-group-channel/api-verbs/delete.ts rename to apps/web/src/api-clients/alert-manager/user-group-channel/schema/api-verbs/delete.ts diff --git a/apps/web/src/schema/alert-manager/user-group-channel/api-verbs/disable.ts b/apps/web/src/api-clients/alert-manager/user-group-channel/schema/api-verbs/disable.ts similarity index 100% rename from apps/web/src/schema/alert-manager/user-group-channel/api-verbs/disable.ts rename to apps/web/src/api-clients/alert-manager/user-group-channel/schema/api-verbs/disable.ts diff --git a/apps/web/src/schema/alert-manager/user-group-channel/api-verbs/enable.ts b/apps/web/src/api-clients/alert-manager/user-group-channel/schema/api-verbs/enable.ts similarity index 100% rename from apps/web/src/schema/alert-manager/user-group-channel/api-verbs/enable.ts rename to apps/web/src/api-clients/alert-manager/user-group-channel/schema/api-verbs/enable.ts diff --git a/apps/web/src/schema/alert-manager/user-group-channel/api-verbs/get.ts b/apps/web/src/api-clients/alert-manager/user-group-channel/schema/api-verbs/get.ts similarity index 100% rename from apps/web/src/schema/alert-manager/user-group-channel/api-verbs/get.ts rename to apps/web/src/api-clients/alert-manager/user-group-channel/schema/api-verbs/get.ts diff --git a/apps/web/src/schema/alert-manager/user-group-channel/api-verbs/list.ts b/apps/web/src/api-clients/alert-manager/user-group-channel/schema/api-verbs/list.ts similarity index 73% rename from apps/web/src/schema/alert-manager/user-group-channel/api-verbs/list.ts rename to apps/web/src/api-clients/alert-manager/user-group-channel/schema/api-verbs/list.ts index bc96d55c14..cb57908681 100644 --- a/apps/web/src/schema/alert-manager/user-group-channel/api-verbs/list.ts +++ b/apps/web/src/api-clients/alert-manager/user-group-channel/schema/api-verbs/list.ts @@ -1,6 +1,6 @@ import type { Query } from '@cloudforet/core-lib/space-connector/type'; -import type { UserGroupChannelStateType } from '@/schema/alert-manager/user-group-channel/type'; +import type { UserGroupChannelStateType } from '@/api-clients/alert-manager/user-group-channel/schema/type'; export interface UserGroupChannelListParameters { query?: Query; diff --git a/apps/web/src/schema/alert-manager/user-group-channel/api-verbs/update.ts b/apps/web/src/api-clients/alert-manager/user-group-channel/schema/api-verbs/update.ts similarity index 69% rename from apps/web/src/schema/alert-manager/user-group-channel/api-verbs/update.ts rename to apps/web/src/api-clients/alert-manager/user-group-channel/schema/api-verbs/update.ts index 63d204af10..26ec28a318 100644 --- a/apps/web/src/schema/alert-manager/user-group-channel/api-verbs/update.ts +++ b/apps/web/src/api-clients/alert-manager/user-group-channel/schema/api-verbs/update.ts @@ -1,5 +1,5 @@ import type { Tags } from '@/api-clients/_common/schema/model'; -import type { UserGroupChannelScheduleInfoType } from '@/schema/alert-manager/user-group-channel/type'; +import type { UserGroupChannelScheduleInfoType } from '@/api-clients/alert-manager/user-group-channel/schema/type'; export interface UserGroupChannelUpdateParameters { channel_id: string; diff --git a/apps/web/src/schema/alert-manager/user-group-channel/constants.ts b/apps/web/src/api-clients/alert-manager/user-group-channel/schema/constants.ts similarity index 100% rename from apps/web/src/schema/alert-manager/user-group-channel/constants.ts rename to apps/web/src/api-clients/alert-manager/user-group-channel/schema/constants.ts diff --git a/apps/web/src/schema/alert-manager/user-group-channel/model.ts b/apps/web/src/api-clients/alert-manager/user-group-channel/schema/model.ts similarity index 88% rename from apps/web/src/schema/alert-manager/user-group-channel/model.ts rename to apps/web/src/api-clients/alert-manager/user-group-channel/schema/model.ts index 2c86789ad5..a6a339a88d 100644 --- a/apps/web/src/schema/alert-manager/user-group-channel/model.ts +++ b/apps/web/src/api-clients/alert-manager/user-group-channel/schema/model.ts @@ -3,7 +3,7 @@ import type { Tags } from '@/api-clients/_common/schema/model'; import type { UserGroupChannelStateType, UserGroupChannelScheduleInfoType, -} from '@/schema/alert-manager/user-group-channel/type'; +} from '@/api-clients/alert-manager/user-group-channel/schema/type'; export interface UserGroupChannelModel { channel_id: string; diff --git a/apps/web/src/schema/alert-manager/user-group-channel/type.ts b/apps/web/src/api-clients/alert-manager/user-group-channel/schema/type.ts similarity index 92% rename from apps/web/src/schema/alert-manager/user-group-channel/type.ts rename to apps/web/src/api-clients/alert-manager/user-group-channel/schema/type.ts index 8850cfbbad..21541e0b73 100644 --- a/apps/web/src/schema/alert-manager/user-group-channel/type.ts +++ b/apps/web/src/api-clients/alert-manager/user-group-channel/schema/type.ts @@ -1,7 +1,7 @@ import type { USER_GROUP_CHANNEL_SCHEDULE_TYPE, USER_GROUP_CHANNEL_STATE, -} from '@/schema/alert-manager/user-group-channel/constants'; +} from '@/api-clients/alert-manager/user-group-channel/schema/constants'; export type UserGroupChannelStateType = typeof USER_GROUP_CHANNEL_STATE[keyof typeof USER_GROUP_CHANNEL_STATE]; export type UserGroupChannelScheduleType = typeof USER_GROUP_CHANNEL_SCHEDULE_TYPE[keyof typeof USER_GROUP_CHANNEL_SCHEDULE_TYPE]; diff --git a/apps/web/src/api-clients/alert-manager/webhook/composables/use-webhook-api.ts b/apps/web/src/api-clients/alert-manager/webhook/composables/use-webhook-api.ts new file mode 100644 index 0000000000..6d7b725828 --- /dev/null +++ b/apps/web/src/api-clients/alert-manager/webhook/composables/use-webhook-api.ts @@ -0,0 +1,36 @@ +import { SpaceConnector } from '@cloudforet/core-lib/space-connector'; + +import type { ListResponse } from '@/api-clients/_common/schema/api-verbs/list'; +import type { WebhookCreateParameters } from '@/api-clients/alert-manager/webhook/schema/api-verbs/create'; +import type { WebhookDeleteParameters } from '@/api-clients/alert-manager/webhook/schema/api-verbs/delete'; +import type { WebhookDisableParameters } from '@/api-clients/alert-manager/webhook/schema/api-verbs/disable'; +import type { WebhookEnableParameters } from '@/api-clients/alert-manager/webhook/schema/api-verbs/enable'; +import type { WebhookGetParameters } from '@/api-clients/alert-manager/webhook/schema/api-verbs/get'; +import type { WebhookListParameters } from '@/api-clients/alert-manager/webhook/schema/api-verbs/list'; +import type { WebhookListErrorsParameters } from '@/api-clients/alert-manager/webhook/schema/api-verbs/list-errors'; +import type { WebhookUpdateParameters } from '@/api-clients/alert-manager/webhook/schema/api-verbs/update'; +import type { WebhookUpdateMessageFormatParameters } from '@/api-clients/alert-manager/webhook/schema/api-verbs/update-message-format'; +import type { WebhookUpdatePluginParameters } from '@/api-clients/alert-manager/webhook/schema/api-verbs/update-plugin'; +import type { WebhookVerifyPluginParameters } from '@/api-clients/alert-manager/webhook/schema/api-verbs/verify-plugin'; +import type { WebhookListErrorsModel, WebhookModel } from '@/api-clients/alert-manager/webhook/schema/model'; + +export const useWebhookApi = () => { + const actions = { + create: SpaceConnector.clientV2.alertManager.webhook.create, + delete: SpaceConnector.clientV2.alertManager.webhook.delete, + disable: SpaceConnector.clientV2.alertManager.webhook.disable, + enable: SpaceConnector.clientV2.alertManager.webhook.enable, + get: SpaceConnector.clientV2.alertManager.webhook.get, + listErrors: SpaceConnector.clientV2.alertManager.webhook.listErrors>, + list: SpaceConnector.clientV2.alertManager.webhook.list>, + updateMessageFormat: SpaceConnector.clientV2.alertManager.webhook.updateMessageFormat, + updatePlugin: SpaceConnector.clientV2.alertManager.webhook.updatePlugin, + update: SpaceConnector.clientV2.alertManager.webhook.update, + verifyPlugin: SpaceConnector.clientV2.alertManager.webhook.verifyPlugin, + }; + + return { + webhookAPI: actions, + }; +}; + diff --git a/apps/web/src/schema/alert-manager/webhook/api-verbs/create.ts b/apps/web/src/api-clients/alert-manager/webhook/schema/api-verbs/create.ts similarity index 68% rename from apps/web/src/schema/alert-manager/webhook/api-verbs/create.ts rename to apps/web/src/api-clients/alert-manager/webhook/schema/api-verbs/create.ts index 0242ea89c0..feec006c04 100644 --- a/apps/web/src/schema/alert-manager/webhook/api-verbs/create.ts +++ b/apps/web/src/api-clients/alert-manager/webhook/schema/api-verbs/create.ts @@ -1,5 +1,5 @@ import type { Tags } from '@/api-clients/_common/schema/model'; -import type { WebhookPluginInfoType } from '@/schema/alert-manager/webhook/type'; +import type { WebhookPluginInfoType } from '@/api-clients/alert-manager/webhook/schema/type'; export interface WebhookCreateParameters { name: string; diff --git a/apps/web/src/schema/alert-manager/webhook/api-verbs/delete.ts b/apps/web/src/api-clients/alert-manager/webhook/schema/api-verbs/delete.ts similarity index 100% rename from apps/web/src/schema/alert-manager/webhook/api-verbs/delete.ts rename to apps/web/src/api-clients/alert-manager/webhook/schema/api-verbs/delete.ts diff --git a/apps/web/src/schema/alert-manager/webhook/api-verbs/disable.ts b/apps/web/src/api-clients/alert-manager/webhook/schema/api-verbs/disable.ts similarity index 100% rename from apps/web/src/schema/alert-manager/webhook/api-verbs/disable.ts rename to apps/web/src/api-clients/alert-manager/webhook/schema/api-verbs/disable.ts diff --git a/apps/web/src/schema/alert-manager/webhook/api-verbs/enable.ts b/apps/web/src/api-clients/alert-manager/webhook/schema/api-verbs/enable.ts similarity index 100% rename from apps/web/src/schema/alert-manager/webhook/api-verbs/enable.ts rename to apps/web/src/api-clients/alert-manager/webhook/schema/api-verbs/enable.ts diff --git a/apps/web/src/schema/alert-manager/webhook/api-verbs/get.ts b/apps/web/src/api-clients/alert-manager/webhook/schema/api-verbs/get.ts similarity index 100% rename from apps/web/src/schema/alert-manager/webhook/api-verbs/get.ts rename to apps/web/src/api-clients/alert-manager/webhook/schema/api-verbs/get.ts diff --git a/apps/web/src/schema/alert-manager/webhook/api-verbs/list-errors.ts b/apps/web/src/api-clients/alert-manager/webhook/schema/api-verbs/list-errors.ts similarity index 75% rename from apps/web/src/schema/alert-manager/webhook/api-verbs/list-errors.ts rename to apps/web/src/api-clients/alert-manager/webhook/schema/api-verbs/list-errors.ts index e0c55dfb20..5a8d9db5de 100644 --- a/apps/web/src/schema/alert-manager/webhook/api-verbs/list-errors.ts +++ b/apps/web/src/api-clients/alert-manager/webhook/schema/api-verbs/list-errors.ts @@ -1,6 +1,6 @@ import type { Query } from '@cloudforet/core-lib/space-connector/type'; -export interface WebhookListErrorSParameters { +export interface WebhookListErrorsParameters { query?: Query; webhook_id: string; error_id?: string; diff --git a/apps/web/src/schema/alert-manager/webhook/api-verbs/list.ts b/apps/web/src/api-clients/alert-manager/webhook/schema/api-verbs/list.ts similarity index 76% rename from apps/web/src/schema/alert-manager/webhook/api-verbs/list.ts rename to apps/web/src/api-clients/alert-manager/webhook/schema/api-verbs/list.ts index d33ccc8621..4d1125df00 100644 --- a/apps/web/src/schema/alert-manager/webhook/api-verbs/list.ts +++ b/apps/web/src/api-clients/alert-manager/webhook/schema/api-verbs/list.ts @@ -1,6 +1,6 @@ import type { Query } from '@cloudforet/core-lib/space-connector/type'; -import type { WebhookStateType } from '@/schema/alert-manager/webhook/type'; +import type { WebhookStateType } from '@/api-clients/alert-manager/webhook/schema/type'; export interface WebhookListParameters { query?: Query; diff --git a/apps/web/src/schema/alert-manager/webhook/api-verbs/update-message-format.ts b/apps/web/src/api-clients/alert-manager/webhook/schema/api-verbs/update-message-format.ts similarity index 58% rename from apps/web/src/schema/alert-manager/webhook/api-verbs/update-message-format.ts rename to apps/web/src/api-clients/alert-manager/webhook/schema/api-verbs/update-message-format.ts index 20ddd80fd0..2bd6a6d426 100644 --- a/apps/web/src/schema/alert-manager/webhook/api-verbs/update-message-format.ts +++ b/apps/web/src/api-clients/alert-manager/webhook/schema/api-verbs/update-message-format.ts @@ -1,4 +1,4 @@ -import type { WebhookMessageFormatType } from '@/schema/alert-manager/webhook/type'; +import type { WebhookMessageFormatType } from '@/api-clients/alert-manager/webhook/schema/type'; export interface WebhookUpdateMessageFormatParameters { webhook_id: string; diff --git a/apps/web/src/schema/alert-manager/webhook/api-verbs/update-plugin.ts b/apps/web/src/api-clients/alert-manager/webhook/schema/api-verbs/update-plugin.ts similarity index 100% rename from apps/web/src/schema/alert-manager/webhook/api-verbs/update-plugin.ts rename to apps/web/src/api-clients/alert-manager/webhook/schema/api-verbs/update-plugin.ts diff --git a/apps/web/src/schema/alert-manager/webhook/api-verbs/update.ts b/apps/web/src/api-clients/alert-manager/webhook/schema/api-verbs/update.ts similarity index 100% rename from apps/web/src/schema/alert-manager/webhook/api-verbs/update.ts rename to apps/web/src/api-clients/alert-manager/webhook/schema/api-verbs/update.ts diff --git a/apps/web/src/schema/alert-manager/webhook/api-verbs/verify-plugin.ts b/apps/web/src/api-clients/alert-manager/webhook/schema/api-verbs/verify-plugin.ts similarity index 100% rename from apps/web/src/schema/alert-manager/webhook/api-verbs/verify-plugin.ts rename to apps/web/src/api-clients/alert-manager/webhook/schema/api-verbs/verify-plugin.ts diff --git a/apps/web/src/schema/alert-manager/webhook/constants.ts b/apps/web/src/api-clients/alert-manager/webhook/schema/constants.ts similarity index 100% rename from apps/web/src/schema/alert-manager/webhook/constants.ts rename to apps/web/src/api-clients/alert-manager/webhook/schema/constants.ts diff --git a/apps/web/src/schema/alert-manager/webhook/model.ts b/apps/web/src/api-clients/alert-manager/webhook/schema/model.ts similarity index 93% rename from apps/web/src/schema/alert-manager/webhook/model.ts rename to apps/web/src/api-clients/alert-manager/webhook/schema/model.ts index 35017a43c0..58d2ef1dbd 100644 --- a/apps/web/src/schema/alert-manager/webhook/model.ts +++ b/apps/web/src/api-clients/alert-manager/webhook/schema/model.ts @@ -1,7 +1,7 @@ import type { Tags } from '@/api-clients/_common/schema/model'; import type { WebhookPluginInfoType, WebhookRequestType, WebhookStateType, WebhookMessageFormatType, -} from '@/schema/alert-manager/webhook/type'; +} from '@/api-clients/alert-manager/webhook/schema/type'; export interface WebhookModel { webhook_id: string; diff --git a/apps/web/src/schema/alert-manager/webhook/type.ts b/apps/web/src/api-clients/alert-manager/webhook/schema/type.ts similarity index 82% rename from apps/web/src/schema/alert-manager/webhook/type.ts rename to apps/web/src/api-clients/alert-manager/webhook/schema/type.ts index 2621883d09..5e51504f8c 100644 --- a/apps/web/src/schema/alert-manager/webhook/type.ts +++ b/apps/web/src/api-clients/alert-manager/webhook/schema/type.ts @@ -1,4 +1,4 @@ -import type { WEBHOOK_STATE } from '@/schema/alert-manager/webhook/constants'; +import type { WEBHOOK_STATE } from '@/api-clients/alert-manager/webhook/schema/constants'; export type WebhookStateType = typeof WEBHOOK_STATE[keyof typeof WEBHOOK_STATE]; diff --git a/apps/web/src/api-clients/identity/user-group/schema/model.ts b/apps/web/src/api-clients/identity/user-group/schema/model.ts index 9c617c1d1d..4be86f694a 100644 --- a/apps/web/src/api-clients/identity/user-group/schema/model.ts +++ b/apps/web/src/api-clients/identity/user-group/schema/model.ts @@ -1,5 +1,5 @@ import type { Tags } from '@/api-clients/_common/schema/model'; -import type { UserGroupChannelModel } from '@/schema/alert-manager/user-group-channel/model'; +import type { UserGroupChannelModel } from '@/api-clients/alert-manager/user-group-channel/schema/model'; export interface UserGroupModel { user_group_id: string; diff --git a/apps/web/src/common/components/schedule-setting-form/ScheduleSettingForm.vue b/apps/web/src/common/components/schedule-setting-form/ScheduleSettingForm.vue index d77d64cb52..ec9a09123c 100644 --- a/apps/web/src/common/components/schedule-setting-form/ScheduleSettingForm.vue +++ b/apps/web/src/common/components/schedule-setting-form/ScheduleSettingForm.vue @@ -10,7 +10,7 @@ import { } from '@cloudforet/mirinae'; import type { SelectDropdownMenuItem } from '@cloudforet/mirinae/types/controls/dropdown/select-dropdown/type'; -import type { ServiceChannelScheduleType } from '@/schema/alert-manager/service-channel/type'; +import type { ServiceChannelScheduleType } from '@/api-clients/alert-manager/service-channel/schema/type'; import { i18n } from '@/translations'; import { timezoneList } from '@/store/user/constant'; diff --git a/apps/web/src/common/modules/user/UserSelectDropdown.vue b/apps/web/src/common/modules/user/UserSelectDropdown.vue index 0abee8f4d3..f4b2477605 100644 --- a/apps/web/src/common/modules/user/UserSelectDropdown.vue +++ b/apps/web/src/common/modules/user/UserSelectDropdown.vue @@ -13,7 +13,7 @@ import type { SelectDropdownMenuItem, } from '@cloudforet/mirinae/types/controls/dropdown/select-dropdown/type'; -import type { MembersType } from '@/schema/alert-manager/service/type'; +import type { MembersType } from '@/api-clients/alert-manager/service/schema/type'; import { i18n } from '@/translations'; import { useAllReferenceStore } from '@/store/reference/all-reference-store'; diff --git a/apps/web/src/common/pages/AlertPublicDetailPage.vue b/apps/web/src/common/pages/AlertPublicDetailPage.vue index 330af0aebc..baeec257a0 100644 --- a/apps/web/src/common/pages/AlertPublicDetailPage.vue +++ b/apps/web/src/common/pages/AlertPublicDetailPage.vue @@ -13,7 +13,7 @@ import { import type { TabItem } from '@cloudforet/mirinae/types/navigation/tabs/tab/type'; import { iso8601Formatter } from '@cloudforet/utils'; -import type { AlertModel } from '@/schema/alert-manager/alert/model'; +import type { AlertModel } from '@/api-clients/alert-manager/alert/schema/model'; import { ALERT_STATE, ALERT_URGENCY } from '@/schema/monitoring/alert/constants'; import type { AlertModelV1 } from '@/schema/monitoring/alert/model'; import { i18n, setI18nLocale } from '@/translations'; diff --git a/apps/web/src/lib/variable-models/managed-model/resource-model/service-variable-model.ts b/apps/web/src/lib/variable-models/managed-model/resource-model/service-variable-model.ts index acfee1cd0c..27ccc31421 100644 --- a/apps/web/src/lib/variable-models/managed-model/resource-model/service-variable-model.ts +++ b/apps/web/src/lib/variable-models/managed-model/resource-model/service-variable-model.ts @@ -1,4 +1,4 @@ -import type { ServiceModel } from '@/schema/alert-manager/service/model'; +import type { ServiceModel } from '@/api-clients/alert-manager/service/schema/model'; import ResourceVariableModel from '@/lib/variable-models/_base/resource-variable-model'; import type { VariableModelConstructorConfig } from '@/lib/variable-models/_base/types'; diff --git a/apps/web/src/schema/monitoring/alert/api-verbs/list.ts b/apps/web/src/schema/monitoring/alert/api-verbs/list.ts index eee33ababe..b12b957f6c 100644 --- a/apps/web/src/schema/monitoring/alert/api-verbs/list.ts +++ b/apps/web/src/schema/monitoring/alert/api-verbs/list.ts @@ -1,19 +1,19 @@ import type { Query } from '@cloudforet/core-lib/space-connector/type'; import type { ListResponse } from '@/api-clients/_common/schema/api-verbs/list'; -import type { AlertModel } from '@/schema/alert-manager/alert/model'; +import type { AlertModel } from '@/api-clients/alert-manager/alert/schema/model'; import type { - AlertSeverity, AlertState, AlertUrgency, -} from '@/schema/monitoring/alert/type'; + AlertSeverityType, AlertUrgencyType, AlertStatusType, +} from '@/api-clients/alert-manager/alert/schema/type'; export interface AlertListParameters { alert_number?: number; alert_id?: string; title?: string; - state?: AlertState; + state?: AlertStatusType; assignee?: string; - urgency?: AlertUrgency; - severity?: AlertSeverity; + urgency?: AlertUrgencyType; + severity?: AlertSeverityType; resource_id?: string; provider?: string; account?: string; diff --git a/apps/web/src/services/alert-manager/v1/components/AlertDetailInfoTable.vue b/apps/web/src/services/alert-manager/v1/components/AlertDetailInfoTable.vue index 2feced1be7..22f9701552 100644 --- a/apps/web/src/services/alert-manager/v1/components/AlertDetailInfoTable.vue +++ b/apps/web/src/services/alert-manager/v1/components/AlertDetailInfoTable.vue @@ -7,9 +7,9 @@ import { } from '@cloudforet/mirinae'; import { iso8601Formatter } from '@cloudforet/utils'; -import type { AlertModel } from '@/schema/alert-manager/alert/model'; -import type { EscalationPolicyGetParameters } from '@/schema/monitoring/escalation-policy/api-verbs/get'; -import type { EscalationPolicyModel } from '@/schema/monitoring/escalation-policy/model'; +import type { AlertModel } from '@/api-clients/alert-manager/alert/schema/model'; +import type { EscalationPolicyGetParameters } from '@/api-clients/alert-manager/escalation-policy/schema/api-verbs/get'; +import type { EscalationPolicyModel } from '@/api-clients/alert-manager/escalation-policy/schema/model'; import { i18n } from '@/translations'; import { useUserWorkspaceStore } from '@/store/app-context/workspace/user-workspace-store'; diff --git a/apps/web/src/services/alert-manager/v1/components/AlertMainDataTable.vue b/apps/web/src/services/alert-manager/v1/components/AlertMainDataTable.vue index 61e8eb16b7..38715753a4 100644 --- a/apps/web/src/services/alert-manager/v1/components/AlertMainDataTable.vue +++ b/apps/web/src/services/alert-manager/v1/components/AlertMainDataTable.vue @@ -18,7 +18,7 @@ import type { ToolboxOptions } from '@cloudforet/mirinae/types/controls/toolbox/ import type { DataTableFieldType } from '@cloudforet/mirinae/types/data-display/tables/data-table/type'; import { durationFormatter, iso8601Formatter } from '@cloudforet/utils'; -import type { AlertModel } from '@/schema/alert-manager/alert/model'; +import type { AlertModel } from '@/api-clients/alert-manager/alert/schema/model'; import type { AlertListParameters, AlertListResponse } from '@/schema/monitoring/alert/api-verbs/list'; import { ALERT_STATE, ALERT_URGENCY } from '@/schema/monitoring/alert/constants'; diff --git a/apps/web/src/services/alert-manager/v1/stores/alert-assign-user-store.ts b/apps/web/src/services/alert-manager/v1/stores/alert-assign-user-store.ts index 14c419ec12..4b0389e1ad 100644 --- a/apps/web/src/services/alert-manager/v1/stores/alert-assign-user-store.ts +++ b/apps/web/src/services/alert-manager/v1/stores/alert-assign-user-store.ts @@ -8,10 +8,10 @@ import { SpaceConnector } from '@cloudforet/core-lib/space-connector'; import type { ListResponse } from '@/api-clients/_common/schema/api-verbs/list'; import type { WorkspaceUserListParameters } from '@/api-clients/identity/workspace-user/schema/api-verbs/list'; import type { WorkspaceUserModel } from '@/api-clients/identity/workspace-user/schema/model'; -import type { AlertModel } from '@/schema/alert-manager/alert/model'; import type { AlertAssignUserParameters } from '@/schema/monitoring/alert/api-verbs/assign-user'; import type { AlertUpdateParameters } from '@/schema/monitoring/alert/api-verbs/update'; import { ALERT_STATE } from '@/schema/monitoring/alert/constants'; +import type { AlertModelV1 } from '@/schema/monitoring/alert/model'; import ErrorHandler from '@/common/composables/error/errorHandler'; @@ -42,9 +42,9 @@ export const useAlertAssignUserStore = defineStore('alert-user-assign-store', () throw new Error(alertId); } }, - async assignUserToAlert(alertId: string, assignee: string): Promise { + async assignUserToAlert(alertId: string, assignee: string): Promise { try { - const alertData = await SpaceConnector.clientV2.monitoring.alert.assignUser({ + const alertData = await SpaceConnector.clientV2.monitoring.alert.assignUser({ alert_id: alertId, assignee, }); diff --git a/apps/web/src/services/alert-manager/v1/stores/alert-page-store.ts b/apps/web/src/services/alert-manager/v1/stores/alert-page-store.ts index b926615b9d..ab5c09ae0a 100644 --- a/apps/web/src/services/alert-manager/v1/stores/alert-page-store.ts +++ b/apps/web/src/services/alert-manager/v1/stores/alert-page-store.ts @@ -4,13 +4,12 @@ import { defineStore } from 'pinia'; import { SpaceConnector } from '@cloudforet/core-lib/space-connector'; -import type { AlertModel } from '@/schema/alert-manager/alert/model'; import type { AlertGetParameters } from '@/schema/monitoring/alert/api-verbs/get'; import type { AlertUpdateParameters } from '@/schema/monitoring/alert/api-verbs/update'; +import type { AlertModelV1 } from '@/schema/monitoring/alert/model'; import ErrorHandler from '@/common/composables/error/errorHandler'; - interface UpdateAlertPayload { alertId: string; updateParams: Omit; @@ -18,12 +17,12 @@ interface UpdateAlertPayload { export const useAlertPageStore = defineStore('page-alert', () => { const state = reactive({ - alertData: null as Partial|null, + alertData: null as Partial|null, }); const actions = { async getAlertData(alertId: string): Promise { try { - state.alertData = await SpaceConnector.clientV2.monitoring.alert.get({ + state.alertData = await SpaceConnector.clientV2.monitoring.alert.get({ alert_id: alertId, }); } catch (e: any) { @@ -33,7 +32,7 @@ export const useAlertPageStore = defineStore('page-alert', () => { }, async updateAlertData({ alertId, updateParams }: UpdateAlertPayload): Promise { try { - state.alertData = await SpaceConnector.clientV2.monitoring.alert.update({ + state.alertData = await SpaceConnector.clientV2.monitoring.alert.update({ ...updateParams, alert_id: alertId, }); @@ -42,7 +41,7 @@ export const useAlertPageStore = defineStore('page-alert', () => { throw e; } }, - async setAlertData(alertData: AlertModel): Promise { + async setAlertData(alertData: AlertModelV1): Promise { state.alertData = alertData; }, diff --git a/apps/web/src/services/alert-manager/v2/AlertContainer.vue b/apps/web/src/services/alert-manager/v2/AlertContainer.vue index 6456d68231..3d5f8e0f73 100644 --- a/apps/web/src/services/alert-manager/v2/AlertContainer.vue +++ b/apps/web/src/services/alert-manager/v2/AlertContainer.vue @@ -6,7 +6,6 @@ import { useAlertPageStore } from '@/services/alert-manager/v2/stores/alert-page const alertPageStore = useAlertPageStore(); onUnmounted(() => { - alertPageStore.init(); alertPageStore.$dispose(); }); diff --git a/apps/web/src/services/alert-manager/v2/components/AlertCreateModal.vue b/apps/web/src/services/alert-manager/v2/components/AlertCreateModal.vue index 3939e4ed6d..34e663b74c 100644 --- a/apps/web/src/services/alert-manager/v2/components/AlertCreateModal.vue +++ b/apps/web/src/services/alert-manager/v2/components/AlertCreateModal.vue @@ -2,16 +2,17 @@ import { computed, reactive } from 'vue'; import { useRoute } from 'vue-router/composables'; -import { SpaceConnector } from '@cloudforet/core-lib/space-connector'; -import type { Query } from '@cloudforet/core-lib/space-connector/type'; +import { useMutation, useQueryClient } from '@tanstack/vue-query'; + import { PButtonModal, PFieldGroup, PTextInput, PTextarea, PSelectDropdown, PRadioGroup, PRadio, } from '@cloudforet/mirinae'; import type { SelectDropdownMenuItem } from '@cloudforet/mirinae/types/controls/dropdown/select-dropdown/type'; -import type { AlertCreateParameters } from '@/schema/alert-manager/alert/api-verbs/create'; -import { ALERT_URGENCY } from '@/schema/alert-manager/alert/constants'; -import type { AlertModel } from '@/schema/alert-manager/alert/model'; +import { useAlertApi } from '@/api-clients/alert-manager/alert/composables/use-alert-api'; +import type { AlertCreateParameters } from '@/api-clients/alert-manager/alert/schema/api-verbs/create'; +import { ALERT_URGENCY } from '@/api-clients/alert-manager/alert/schema/constants'; +import { useServiceQueryKey } from '@/query/query-key/use-service-query-key'; import { i18n } from '@/translations'; import { showSuccessMessage } from '@/lib/helper/notice-alert-helper'; @@ -35,19 +36,20 @@ const props = withDefaults(defineProps(), { }); const alertPageStore = useAlertPageStore(); -const alertPageState = alertPageStore.state; const alertPageGetters = alertPageStore.getters; const emit = defineEmits<{(e: 'update:visible'): void; }>(); const route = useRoute(); +const queryClient = useQueryClient(); +const { alertAPI } = useAlertApi(); +const { key: alertListQueryKey } = useServiceQueryKey('alert-manager', 'alert', 'list'); + const storeState = reactive({ serviceDropdownList: computed(() => alertPageGetters.serviceDropdownList), - alertListQuery: computed(() => alertPageState.alertListQuery), }); const state = reactive({ - loading: false, proxyVisible: useProxyValue('visible', props, emit), isServicePage: route.name === ALERT_MANAGER_ROUTE.SERVICE.DETAIL._NAME, @@ -64,6 +66,7 @@ const state = reactive({ ]), selectedRadioIdx: 0, }); + const { forms: { name, @@ -82,28 +85,30 @@ const { }, }); +const { mutate: createAlert, isPending } = useMutation({ + mutationFn: (params: AlertCreateParameters) => alertAPI.create(params), + onSuccess: () => { + showSuccessMessage(i18n.t('ALERT_MANAGER.ALERTS.ALT_S_CREATE'), ''); + queryClient.invalidateQueries({ queryKey: alertListQueryKey.value }); + }, + onError: (error) => { + ErrorHandler.handleError(error, true); + }, + onSettled: () => { + handleClose(); + }, +}); + const handleClose = () => { state.proxyVisible = false; }; const handleConfirm = async () => { - state.loading = true; - try { - await SpaceConnector.clientV2.alertManager.alert.create({ - title: name.value, - description: description.value, - service_id: state.selectedServiceId, - urgency: state.radioMenuList[state.selectedRadioIdx].name, - }); - showSuccessMessage(i18n.t('ALERT_MANAGER.ALERTS.ALT_S_CREATE'), ''); - await alertPageStore.fetchAlertsList({ - query: storeState.alertListQuery, - }); - } catch (e) { - ErrorHandler.handleError(e, true); - } finally { - state.loading = false; - handleClose(); - } + createAlert({ + title: name.value, + description: description.value, + service_id: state.selectedServiceId, + urgency: state.radioMenuList[state.selectedRadioIdx].name, + }); }; @@ -115,7 +120,7 @@ const handleConfirm = async () => { :backdrop="true" :visible="state.proxyVisible" :disabled="!isAllValid || !state.selectedServiceId" - :loading="state.loading" + :loading="isPending" @confirm="handleConfirm" @cancel="handleClose" @close="handleClose" diff --git a/apps/web/src/services/alert-manager/v2/components/AlertDetailDeleteModal.vue b/apps/web/src/services/alert-manager/v2/components/AlertDetailDeleteModal.vue index df59b25bba..7cdf7d118e 100644 --- a/apps/web/src/services/alert-manager/v2/components/AlertDetailDeleteModal.vue +++ b/apps/web/src/services/alert-manager/v2/components/AlertDetailDeleteModal.vue @@ -5,8 +5,8 @@ import { useRoute, useRouter } from 'vue-router/composables'; import { SpaceConnector } from '@cloudforet/core-lib/space-connector'; import { PButtonModal } from '@cloudforet/mirinae'; -import type { AlertDeleteParameters } from '@/schema/alert-manager/alert/api-verbs/delete'; -import type { AlertModel } from '@/schema/alert-manager/alert/model'; +import type { AlertDeleteParameters } from '@/api-clients/alert-manager/alert/schema/api-verbs/delete'; +import type { AlertModel } from '@/api-clients/alert-manager/alert/schema/model'; import { i18n } from '@/translations'; import { showSuccessMessage } from '@/lib/helper/notice-alert-helper'; diff --git a/apps/web/src/services/alert-manager/v2/components/AlertDetailEditModal.vue b/apps/web/src/services/alert-manager/v2/components/AlertDetailEditModal.vue index 7bfd25393a..78808ca0b5 100644 --- a/apps/web/src/services/alert-manager/v2/components/AlertDetailEditModal.vue +++ b/apps/web/src/services/alert-manager/v2/components/AlertDetailEditModal.vue @@ -3,7 +3,7 @@ import { computed, reactive } from 'vue'; import { PButtonModal, PFieldGroup, PTextInput } from '@cloudforet/mirinae'; -import type { AlertModel } from '@/schema/alert-manager/alert/model'; +import type { AlertModel } from '@/api-clients/alert-manager/alert/schema/model'; import { useFormValidator } from '@/common/composables/form-validator'; import { useProxyValue } from '@/common/composables/proxy-state'; diff --git a/apps/web/src/services/alert-manager/v2/components/AlertDetailInfoTable.vue b/apps/web/src/services/alert-manager/v2/components/AlertDetailInfoTable.vue index fb675195b8..0aebaf15d4 100644 --- a/apps/web/src/services/alert-manager/v2/components/AlertDetailInfoTable.vue +++ b/apps/web/src/services/alert-manager/v2/components/AlertDetailInfoTable.vue @@ -11,11 +11,9 @@ import { import type { DefinitionField } from '@cloudforet/mirinae/types/data-display/tables/definition-table/type'; import { iso8601Formatter } from '@cloudforet/utils'; -import { ALERT_SEVERITY } from '@/schema/alert-manager/alert/constants'; -import type { AlertModel } from '@/schema/alert-manager/alert/model'; -import type { AlertSeverityType } from '@/schema/alert-manager/alert/type'; -import type { CloudServiceGetParameters } from '@/schema/inventory/cloud-service/api-verbs/get'; -import type { CloudServiceModel } from '@/schema/inventory/cloud-service/model'; +import { ALERT_SEVERITY } from '@/api-clients/alert-manager/alert/schema/constants'; +import type { AlertModel } from '@/api-clients/alert-manager/alert/schema/model'; +import type { AlertSeverityType } from '@/api-clients/alert-manager/alert/schema/type'; import { i18n } from '@/translations'; import { useUserWorkspaceStore } from '@/store/app-context/workspace/user-workspace-store'; @@ -31,6 +29,9 @@ import { ALERT_MANAGER_ROUTE } from '@/services/alert-manager/v2/routes/route-co import { useAlertDetailPageStore } from '@/services/alert-manager/v2/stores/alert-detail-page-store'; import { ASSET_INVENTORY_ROUTE } from '@/services/asset-inventory/routes/route-constant'; +import type { CloudServiceGetParameters } from '@/api-clients/inventory/cloud-service/api-verbs/get'; +import type { CloudServiceModel } from '@/api-clients/inventory/cloud-service/schema/model'; + type BadgeInfo = { badgeType: string; styleType: string; diff --git a/apps/web/src/services/alert-manager/v2/components/AlertDetailNote.vue b/apps/web/src/services/alert-manager/v2/components/AlertDetailNote.vue index ef7ed92f49..a0734833df 100644 --- a/apps/web/src/services/alert-manager/v2/components/AlertDetailNote.vue +++ b/apps/web/src/services/alert-manager/v2/components/AlertDetailNote.vue @@ -8,11 +8,11 @@ import { import { iso8601Formatter } from '@cloudforet/utils'; import type { ListResponse } from '@/api-clients/_common/schema/api-verbs/list'; -import type { AlertModel } from '@/schema/alert-manager/alert/model'; -import type { NoteCreateParameters } from '@/schema/alert-manager/note/api-verbs/create'; -import type { NoteDeleteParameters } from '@/schema/alert-manager/note/api-verbs/delete'; -import type { NoteListParameters } from '@/schema/alert-manager/note/api-verbs/list'; -import type { NoteModel } from '@/schema/alert-manager/note/model'; +import type { AlertModel } from '@/api-clients/alert-manager/alert/schema/model'; +import type { NoteCreateParameters } from '@/api-clients/alert-manager/note/schema/api-verbs/create'; +import type { NoteDeleteParameters } from '@/api-clients/alert-manager/note/schema/api-verbs/delete'; +import type { NoteListParameters } from '@/api-clients/alert-manager/note/schema/api-verbs/list'; +import type { NoteModel } from '@/api-clients/alert-manager/note/schema/model'; import { i18n } from '@/translations'; import { showSuccessMessage } from '@/lib/helper/notice-alert-helper'; diff --git a/apps/web/src/services/alert-manager/v2/components/AlertDetailSummary.vue b/apps/web/src/services/alert-manager/v2/components/AlertDetailSummary.vue index 301ef8ee44..d97687c315 100644 --- a/apps/web/src/services/alert-manager/v2/components/AlertDetailSummary.vue +++ b/apps/web/src/services/alert-manager/v2/components/AlertDetailSummary.vue @@ -6,9 +6,9 @@ import { } from '@cloudforet/mirinae'; import type { SelectDropdownMenuItem } from '@cloudforet/mirinae/types/controls/dropdown/select-dropdown/type'; -import { ALERT_URGENCY, ALERT_STATUS } from '@/schema/alert-manager/alert/constants'; -import type { AlertModel } from '@/schema/alert-manager/alert/model'; -import type { AlertStatusType, AlertUrgencyType } from '@/schema/alert-manager/alert/type'; +import { ALERT_URGENCY, ALERT_STATUS } from '@/api-clients/alert-manager/alert/schema/constants'; +import type { AlertModel } from '@/api-clients/alert-manager/alert/schema/model'; +import type { AlertStatusType, AlertUrgencyType } from '@/api-clients/alert-manager/alert/schema/type'; import { i18n } from '@/translations'; import { useUserWorkspaceStore } from '@/store/app-context/workspace/user-workspace-store'; diff --git a/apps/web/src/services/alert-manager/v2/components/AlertDetailTabsDetails.vue b/apps/web/src/services/alert-manager/v2/components/AlertDetailTabsDetails.vue index 251c407f80..871d6aa2ed 100644 --- a/apps/web/src/services/alert-manager/v2/components/AlertDetailTabsDetails.vue +++ b/apps/web/src/services/alert-manager/v2/components/AlertDetailTabsDetails.vue @@ -6,7 +6,7 @@ import { map } from 'lodash'; import { PDefinitionTable, PHeading, PHeadingLayout } from '@cloudforet/mirinae'; import type { DefinitionField } from '@cloudforet/mirinae/types/data-display/tables/definition-table/type'; -import type { AlertModel } from '@/schema/alert-manager/alert/model'; +import type { AlertModel } from '@/api-clients/alert-manager/alert/schema/model'; import { useAlertDetailPageStore } from '@/services/alert-manager/v2/stores/alert-detail-page-store'; diff --git a/apps/web/src/services/alert-manager/v2/components/AlertDetailTabsTimeline.vue b/apps/web/src/services/alert-manager/v2/components/AlertDetailTabsTimeline.vue index bbfee9667f..e37adec5c6 100644 --- a/apps/web/src/services/alert-manager/v2/components/AlertDetailTabsTimeline.vue +++ b/apps/web/src/services/alert-manager/v2/components/AlertDetailTabsTimeline.vue @@ -10,10 +10,10 @@ import { } from '@cloudforet/mirinae'; import type { ListResponse } from '@/api-clients/_common/schema/api-verbs/list'; -import type { AlertHistoryParameters } from '@/schema/alert-manager/alert/api-verbs/history'; -import { ALERT_HISTORY_ACTION } from '@/schema/alert-manager/alert/constants'; -import type { AlertModel, AlertHistoryModel } from '@/schema/alert-manager/alert/model'; -import type { AlertHistoryActionType } from '@/schema/alert-manager/alert/type'; +import type { AlertHistoryParameters } from '@/api-clients/alert-manager/alert/schema/api-verbs/history'; +import { ALERT_HISTORY_ACTION } from '@/api-clients/alert-manager/alert/schema/constants'; +import type { AlertModel, AlertHistoryModel } from '@/api-clients/alert-manager/alert/schema/model'; +import type { AlertHistoryActionType } from '@/api-clients/alert-manager/alert/schema/type'; import { i18n } from '@/translations'; import { useAllReferenceStore } from '@/store/reference/all-reference-store'; diff --git a/apps/web/src/services/alert-manager/v2/components/AlertDetailTabsTimelineModal.vue b/apps/web/src/services/alert-manager/v2/components/AlertDetailTabsTimelineModal.vue index 6f2bb29fec..95ff837abc 100644 --- a/apps/web/src/services/alert-manager/v2/components/AlertDetailTabsTimelineModal.vue +++ b/apps/web/src/services/alert-manager/v2/components/AlertDetailTabsTimelineModal.vue @@ -10,9 +10,9 @@ import type { SelectDropdownMenuItem } from '@cloudforet/mirinae/types/controls/ import { ALERT_HISTORY_ACTION, ALERT_HISTORY_NOTIFICATION_STATE, -} from '@/schema/alert-manager/alert/constants'; -import type { AlertHistoryModel, AlertModel } from '@/schema/alert-manager/alert/model'; -import type { AlertHistoryActionType, AlertHistoryNotificationInfoType, AlertHistoryNotificationChannelInfoType } from '@/schema/alert-manager/alert/type'; +} from '@/api-clients/alert-manager/alert/schema/constants'; +import type { AlertHistoryModel, AlertModel } from '@/api-clients/alert-manager/alert/schema/model'; +import type { AlertHistoryActionType, AlertHistoryNotificationInfoType, AlertHistoryNotificationChannelInfoType } from '@/api-clients/alert-manager/alert/schema/type'; import { i18n } from '@/translations'; import { useAllReferenceStore } from '@/store/reference/all-reference-store'; diff --git a/apps/web/src/services/alert-manager/v2/components/AlertsDetailHeader.vue b/apps/web/src/services/alert-manager/v2/components/AlertsDetailHeader.vue index 6fe48327b1..b36e5b2dac 100644 --- a/apps/web/src/services/alert-manager/v2/components/AlertsDetailHeader.vue +++ b/apps/web/src/services/alert-manager/v2/components/AlertsDetailHeader.vue @@ -5,7 +5,7 @@ import { useRoute, useRouter } from 'vue-router/composables'; import { PHeadingLayout, PHeading, PSelectDropdown } from '@cloudforet/mirinae'; import type { MenuItem } from '@cloudforet/mirinae/types/controls/context-menu/type'; -import type { AlertModel } from '@/schema/alert-manager/alert/model'; +import type { AlertModel } from '@/api-clients/alert-manager/alert/schema/model'; import { i18n } from '@/translations'; import { usePageEditableStatus } from '@/common/composables/page-editable-status'; diff --git a/apps/web/src/services/alert-manager/v2/components/AlertsManagementTable.vue b/apps/web/src/services/alert-manager/v2/components/AlertsManagementTable.vue index df7b9b3cd5..53de034718 100644 --- a/apps/web/src/services/alert-manager/v2/components/AlertsManagementTable.vue +++ b/apps/web/src/services/alert-manager/v2/components/AlertsManagementTable.vue @@ -1,14 +1,16 @@ @@ -483,16 +520,16 @@ watch(() => storeState.serviceId, async (serviceId) => { :class="{'is-service-page': state.isServicePage}" :sort-desc="true" :query-tags="queryTags" - :loading="state.loading" - :total-count="storeState.totalCount" + :loading="alertListFetching" + :total-count="state.listTotalCount" :fields="state.fields" - :items="state.refinedAlertList" + :items="alertListData?.results" :key-item-sets="ALERT_MANAGEMENT_TABLE_HANDLER.keyItemSets" :value-handler-map="state.tableHandler" settings-visible @change="handleChange" @click-settings="handleClickSettings" - @refresh="fetchAlertsList" + @refresh="refetchAlertList" @export="handleExportToExcel" >