@webiny/webhooks 0.0.0-unstable.7be00a75a9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +11 -0
- package/admin/WebhookRoutes.d.ts +2 -0
- package/admin/WebhookRoutes.js +68 -0
- package/admin/WebhookRoutes.js.map +1 -0
- package/admin/Webhooks.d.ts +2 -0
- package/admin/Webhooks.js +64 -0
- package/admin/Webhooks.js.map +1 -0
- package/admin/features/ListWebhooks/ListWebhooksGateway.d.ts +11 -0
- package/admin/features/ListWebhooks/ListWebhooksGateway.js +62 -0
- package/admin/features/ListWebhooks/ListWebhooksGateway.js.map +1 -0
- package/admin/features/ListWebhooks/ListWebhooksRepository.d.ts +10 -0
- package/admin/features/ListWebhooks/ListWebhooksRepository.js +18 -0
- package/admin/features/ListWebhooks/ListWebhooksRepository.js.map +1 -0
- package/admin/features/ListWebhooks/ListWebhooksUseCase.d.ts +10 -0
- package/admin/features/ListWebhooks/ListWebhooksUseCase.js +18 -0
- package/admin/features/ListWebhooks/ListWebhooksUseCase.js.map +1 -0
- package/admin/features/ListWebhooks/abstractions.d.ts +36 -0
- package/admin/features/ListWebhooks/abstractions.js +7 -0
- package/admin/features/ListWebhooks/abstractions.js.map +1 -0
- package/admin/features/ListWebhooks/feature.d.ts +3 -0
- package/admin/features/ListWebhooks/feature.js +21 -0
- package/admin/features/ListWebhooks/feature.js.map +1 -0
- package/admin/features/ListWebhooks/index.d.ts +2 -0
- package/admin/features/ListWebhooks/index.js +2 -0
- package/admin/features/createWebhook/CreateWebhookGateway.d.ts +12 -0
- package/admin/features/createWebhook/CreateWebhookGateway.js +21 -0
- package/admin/features/createWebhook/CreateWebhookGateway.js.map +1 -0
- package/admin/features/createWebhook/CreateWebhookUseCase.d.ts +11 -0
- package/admin/features/createWebhook/CreateWebhookUseCase.js +18 -0
- package/admin/features/createWebhook/CreateWebhookUseCase.js.map +1 -0
- package/admin/features/createWebhook/abstractions.d.ts +23 -0
- package/admin/features/createWebhook/abstractions.js +6 -0
- package/admin/features/createWebhook/abstractions.js.map +1 -0
- package/admin/features/createWebhook/feature.d.ts +3 -0
- package/admin/features/createWebhook/feature.js +19 -0
- package/admin/features/createWebhook/feature.js.map +1 -0
- package/admin/features/createWebhook/index.d.ts +2 -0
- package/admin/features/createWebhook/index.js +2 -0
- package/admin/features/deleteWebhook/DeleteWebhookGateway.d.ts +11 -0
- package/admin/features/deleteWebhook/DeleteWebhookGateway.js +23 -0
- package/admin/features/deleteWebhook/DeleteWebhookGateway.js.map +1 -0
- package/admin/features/deleteWebhook/DeleteWebhookUseCase.d.ts +10 -0
- package/admin/features/deleteWebhook/DeleteWebhookUseCase.js +18 -0
- package/admin/features/deleteWebhook/DeleteWebhookUseCase.js.map +1 -0
- package/admin/features/deleteWebhook/abstractions.d.ts +14 -0
- package/admin/features/deleteWebhook/abstractions.js +6 -0
- package/admin/features/deleteWebhook/abstractions.js.map +1 -0
- package/admin/features/deleteWebhook/feature.d.ts +3 -0
- package/admin/features/deleteWebhook/feature.js +19 -0
- package/admin/features/deleteWebhook/feature.js.map +1 -0
- package/admin/features/deleteWebhook/index.d.ts +2 -0
- package/admin/features/deleteWebhook/index.js +2 -0
- package/admin/features/getWebhook/GetWebhookGateway.d.ts +12 -0
- package/admin/features/getWebhook/GetWebhookGateway.js +23 -0
- package/admin/features/getWebhook/GetWebhookGateway.js.map +1 -0
- package/admin/features/getWebhook/GetWebhookUseCase.d.ts +11 -0
- package/admin/features/getWebhook/GetWebhookUseCase.js +18 -0
- package/admin/features/getWebhook/GetWebhookUseCase.js.map +1 -0
- package/admin/features/getWebhook/abstractions.d.ts +15 -0
- package/admin/features/getWebhook/abstractions.js +6 -0
- package/admin/features/getWebhook/abstractions.js.map +1 -0
- package/admin/features/getWebhook/feature.d.ts +3 -0
- package/admin/features/getWebhook/feature.js +19 -0
- package/admin/features/getWebhook/feature.js.map +1 -0
- package/admin/features/getWebhook/index.d.ts +2 -0
- package/admin/features/getWebhook/index.js +2 -0
- package/admin/features/getWebhookSettings/GetWebhookSettingsGateway.d.ts +12 -0
- package/admin/features/getWebhookSettings/GetWebhookSettingsGateway.js +41 -0
- package/admin/features/getWebhookSettings/GetWebhookSettingsGateway.js.map +1 -0
- package/admin/features/getWebhookSettings/GetWebhookSettingsUseCase.d.ts +11 -0
- package/admin/features/getWebhookSettings/GetWebhookSettingsUseCase.js +18 -0
- package/admin/features/getWebhookSettings/GetWebhookSettingsUseCase.js.map +1 -0
- package/admin/features/getWebhookSettings/abstractions.d.ts +15 -0
- package/admin/features/getWebhookSettings/abstractions.js +6 -0
- package/admin/features/getWebhookSettings/abstractions.js.map +1 -0
- package/admin/features/getWebhookSettings/feature.d.ts +3 -0
- package/admin/features/getWebhookSettings/feature.js +19 -0
- package/admin/features/getWebhookSettings/feature.js.map +1 -0
- package/admin/features/getWebhookSettings/index.d.ts +2 -0
- package/admin/features/getWebhookSettings/index.js +2 -0
- package/admin/features/listAvailableEvents/ListAvailableEventsGateway.d.ts +12 -0
- package/admin/features/listAvailableEvents/ListAvailableEventsGateway.js +21 -0
- package/admin/features/listAvailableEvents/ListAvailableEventsGateway.js.map +1 -0
- package/admin/features/listAvailableEvents/ListAvailableEventsUseCase.d.ts +11 -0
- package/admin/features/listAvailableEvents/ListAvailableEventsUseCase.js +18 -0
- package/admin/features/listAvailableEvents/ListAvailableEventsUseCase.js.map +1 -0
- package/admin/features/listAvailableEvents/abstractions.d.ts +15 -0
- package/admin/features/listAvailableEvents/abstractions.js +6 -0
- package/admin/features/listAvailableEvents/abstractions.js.map +1 -0
- package/admin/features/listAvailableEvents/feature.d.ts +3 -0
- package/admin/features/listAvailableEvents/feature.js +19 -0
- package/admin/features/listAvailableEvents/feature.js.map +1 -0
- package/admin/features/listAvailableEvents/index.d.ts +2 -0
- package/admin/features/listAvailableEvents/index.js +2 -0
- package/admin/features/listWebhookDeliveries/ListWebhookDeliveriesGateway.d.ts +11 -0
- package/admin/features/listWebhookDeliveries/ListWebhookDeliveriesGateway.js +28 -0
- package/admin/features/listWebhookDeliveries/ListWebhookDeliveriesGateway.js.map +1 -0
- package/admin/features/listWebhookDeliveries/ListWebhookDeliveriesUseCase.d.ts +10 -0
- package/admin/features/listWebhookDeliveries/ListWebhookDeliveriesUseCase.js +18 -0
- package/admin/features/listWebhookDeliveries/ListWebhookDeliveriesUseCase.js.map +1 -0
- package/admin/features/listWebhookDeliveries/abstractions.d.ts +33 -0
- package/admin/features/listWebhookDeliveries/abstractions.js +6 -0
- package/admin/features/listWebhookDeliveries/abstractions.js.map +1 -0
- package/admin/features/listWebhookDeliveries/feature.d.ts +3 -0
- package/admin/features/listWebhookDeliveries/feature.js +19 -0
- package/admin/features/listWebhookDeliveries/feature.js.map +1 -0
- package/admin/features/listWebhookDeliveries/index.d.ts +2 -0
- package/admin/features/listWebhookDeliveries/index.js +2 -0
- package/admin/features/permissions/abstractions.d.ts +17 -0
- package/admin/features/permissions/abstractions.js +6 -0
- package/admin/features/permissions/abstractions.js.map +1 -0
- package/admin/features/permissions/feature.d.ts +14 -0
- package/admin/features/permissions/feature.js +7 -0
- package/admin/features/permissions/feature.js.map +1 -0
- package/admin/features/permissions/index.d.ts +2 -0
- package/admin/features/permissions/index.js +2 -0
- package/admin/features/resendWebhookDelivery/ResendWebhookDeliveryGateway.d.ts +11 -0
- package/admin/features/resendWebhookDelivery/ResendWebhookDeliveryGateway.js +23 -0
- package/admin/features/resendWebhookDelivery/ResendWebhookDeliveryGateway.js.map +1 -0
- package/admin/features/resendWebhookDelivery/ResendWebhookDeliveryUseCase.d.ts +10 -0
- package/admin/features/resendWebhookDelivery/ResendWebhookDeliveryUseCase.js +18 -0
- package/admin/features/resendWebhookDelivery/ResendWebhookDeliveryUseCase.js.map +1 -0
- package/admin/features/resendWebhookDelivery/abstractions.d.ts +14 -0
- package/admin/features/resendWebhookDelivery/abstractions.js +6 -0
- package/admin/features/resendWebhookDelivery/abstractions.js.map +1 -0
- package/admin/features/resendWebhookDelivery/feature.d.ts +3 -0
- package/admin/features/resendWebhookDelivery/feature.js +19 -0
- package/admin/features/resendWebhookDelivery/feature.js.map +1 -0
- package/admin/features/resendWebhookDelivery/index.d.ts +2 -0
- package/admin/features/resendWebhookDelivery/index.js +2 -0
- package/admin/features/triggerWebhook/TriggerWebhookGateway.d.ts +12 -0
- package/admin/features/triggerWebhook/TriggerWebhookGateway.js +24 -0
- package/admin/features/triggerWebhook/TriggerWebhookGateway.js.map +1 -0
- package/admin/features/triggerWebhook/TriggerWebhookUseCase.d.ts +11 -0
- package/admin/features/triggerWebhook/TriggerWebhookUseCase.js +18 -0
- package/admin/features/triggerWebhook/TriggerWebhookUseCase.js.map +1 -0
- package/admin/features/triggerWebhook/abstractions.d.ts +15 -0
- package/admin/features/triggerWebhook/abstractions.js +6 -0
- package/admin/features/triggerWebhook/abstractions.js.map +1 -0
- package/admin/features/triggerWebhook/feature.d.ts +3 -0
- package/admin/features/triggerWebhook/feature.js +19 -0
- package/admin/features/triggerWebhook/feature.js.map +1 -0
- package/admin/features/triggerWebhook/index.d.ts +2 -0
- package/admin/features/triggerWebhook/index.js +2 -0
- package/admin/features/updateWebhook/UpdateWebhookGateway.d.ts +12 -0
- package/admin/features/updateWebhook/UpdateWebhookGateway.js +24 -0
- package/admin/features/updateWebhook/UpdateWebhookGateway.js.map +1 -0
- package/admin/features/updateWebhook/UpdateWebhookUseCase.d.ts +11 -0
- package/admin/features/updateWebhook/UpdateWebhookUseCase.js +18 -0
- package/admin/features/updateWebhook/UpdateWebhookUseCase.js.map +1 -0
- package/admin/features/updateWebhook/abstractions.d.ts +23 -0
- package/admin/features/updateWebhook/abstractions.js +6 -0
- package/admin/features/updateWebhook/abstractions.js.map +1 -0
- package/admin/features/updateWebhook/feature.d.ts +3 -0
- package/admin/features/updateWebhook/feature.js +19 -0
- package/admin/features/updateWebhook/feature.js.map +1 -0
- package/admin/features/updateWebhook/index.d.ts +2 -0
- package/admin/features/updateWebhook/index.js +2 -0
- package/admin/features/updateWebhookSettings/UpdateWebhookSettingsGateway.d.ts +12 -0
- package/admin/features/updateWebhookSettings/UpdateWebhookSettingsGateway.js +44 -0
- package/admin/features/updateWebhookSettings/UpdateWebhookSettingsGateway.js.map +1 -0
- package/admin/features/updateWebhookSettings/UpdateWebhookSettingsUseCase.d.ts +11 -0
- package/admin/features/updateWebhookSettings/UpdateWebhookSettingsUseCase.js +18 -0
- package/admin/features/updateWebhookSettings/UpdateWebhookSettingsUseCase.js.map +1 -0
- package/admin/features/updateWebhookSettings/abstractions.d.ts +19 -0
- package/admin/features/updateWebhookSettings/abstractions.js +6 -0
- package/admin/features/updateWebhookSettings/abstractions.js.map +1 -0
- package/admin/features/updateWebhookSettings/feature.d.ts +3 -0
- package/admin/features/updateWebhookSettings/feature.js +19 -0
- package/admin/features/updateWebhookSettings/feature.js.map +1 -0
- package/admin/features/updateWebhookSettings/index.d.ts +2 -0
- package/admin/features/updateWebhookSettings/index.js +2 -0
- package/admin/index.d.ts +2 -0
- package/admin/index.js +2 -0
- package/admin/permissions.d.ts +12 -0
- package/admin/permissions.js +22 -0
- package/admin/permissions.js.map +1 -0
- package/admin/presentation/WebhookDeliveries/WebhookDeliveriesDataSource.d.ts +16 -0
- package/admin/presentation/WebhookDeliveries/WebhookDeliveriesDataSource.js +68 -0
- package/admin/presentation/WebhookDeliveries/WebhookDeliveriesDataSource.js.map +1 -0
- package/admin/presentation/WebhookDeliveries/WebhookDeliveriesPresenter.d.ts +21 -0
- package/admin/presentation/WebhookDeliveries/WebhookDeliveriesPresenter.js +57 -0
- package/admin/presentation/WebhookDeliveries/WebhookDeliveriesPresenter.js.map +1 -0
- package/admin/presentation/WebhookDeliveries/abstractions.d.ts +18 -0
- package/admin/presentation/WebhookDeliveries/abstractions.js +5 -0
- package/admin/presentation/WebhookDeliveries/abstractions.js.map +1 -0
- package/admin/presentation/WebhookDeliveries/components/DeliveryAccordionRow.d.ts +11 -0
- package/admin/presentation/WebhookDeliveries/components/DeliveryAccordionRow.js +36 -0
- package/admin/presentation/WebhookDeliveries/components/DeliveryAccordionRow.js.map +1 -0
- package/admin/presentation/WebhookDeliveries/components/DeliveryDetail.d.ts +11 -0
- package/admin/presentation/WebhookDeliveries/components/DeliveryDetail.js +32 -0
- package/admin/presentation/WebhookDeliveries/components/DeliveryDetail.js.map +1 -0
- package/admin/presentation/WebhookDeliveries/components/DeliveryDetailContent.d.ts +7 -0
- package/admin/presentation/WebhookDeliveries/components/DeliveryDetailContent.js +76 -0
- package/admin/presentation/WebhookDeliveries/components/DeliveryDetailContent.js.map +1 -0
- package/admin/presentation/WebhookDeliveries/components/DeliveryDetailPanel.d.ts +9 -0
- package/admin/presentation/WebhookDeliveries/components/DeliveryDetailPanel.js +22 -0
- package/admin/presentation/WebhookDeliveries/components/DeliveryDetailPanel.js.map +1 -0
- package/admin/presentation/WebhookDeliveries/components/WebhookDeliveriesDrawer.d.ts +8 -0
- package/admin/presentation/WebhookDeliveries/components/WebhookDeliveriesDrawer.js +119 -0
- package/admin/presentation/WebhookDeliveries/components/WebhookDeliveriesDrawer.js.map +1 -0
- package/admin/presentation/WebhookDeliveries/components/statusVariant.d.ts +1 -0
- package/admin/presentation/WebhookDeliveries/components/statusVariant.js +13 -0
- package/admin/presentation/WebhookDeliveries/components/statusVariant.js.map +1 -0
- package/admin/presentation/WebhookDeliveries/feature.d.ts +3 -0
- package/admin/presentation/WebhookDeliveries/feature.js +17 -0
- package/admin/presentation/WebhookDeliveries/feature.js.map +1 -0
- package/admin/presentation/WebhookDeliveries/index.d.ts +2 -0
- package/admin/presentation/WebhookDeliveries/index.js +2 -0
- package/admin/presentation/WebhookDeliveriesPage/WebhookDeliveriesPagePresenter.d.ts +37 -0
- package/admin/presentation/WebhookDeliveriesPage/WebhookDeliveriesPagePresenter.js +196 -0
- package/admin/presentation/WebhookDeliveriesPage/WebhookDeliveriesPagePresenter.js.map +1 -0
- package/admin/presentation/WebhookDeliveriesPage/abstractions.d.ts +39 -0
- package/admin/presentation/WebhookDeliveriesPage/abstractions.js +5 -0
- package/admin/presentation/WebhookDeliveriesPage/abstractions.js.map +1 -0
- package/admin/presentation/WebhookDeliveriesPage/components/DeliveryBottomInfoBar.d.ts +9 -0
- package/admin/presentation/WebhookDeliveriesPage/components/DeliveryBottomInfoBar.js +43 -0
- package/admin/presentation/WebhookDeliveriesPage/components/DeliveryBottomInfoBar.js.map +1 -0
- package/admin/presentation/WebhookDeliveriesPage/components/DeliveryFilters.d.ts +9 -0
- package/admin/presentation/WebhookDeliveriesPage/components/DeliveryFilters.js +66 -0
- package/admin/presentation/WebhookDeliveriesPage/components/DeliveryFilters.js.map +1 -0
- package/admin/presentation/WebhookDeliveriesPage/components/DeliveryList.d.ts +9 -0
- package/admin/presentation/WebhookDeliveriesPage/components/DeliveryList.js +45 -0
- package/admin/presentation/WebhookDeliveriesPage/components/DeliveryList.js.map +1 -0
- package/admin/presentation/WebhookDeliveriesPage/components/WebhookDeliveriesPage.d.ts +2 -0
- package/admin/presentation/WebhookDeliveriesPage/components/WebhookDeliveriesPage.js +64 -0
- package/admin/presentation/WebhookDeliveriesPage/components/WebhookDeliveriesPage.js.map +1 -0
- package/admin/presentation/WebhookDeliveriesPage/feature.d.ts +3 -0
- package/admin/presentation/WebhookDeliveriesPage/feature.js +17 -0
- package/admin/presentation/WebhookDeliveriesPage/feature.js.map +1 -0
- package/admin/presentation/WebhookDeliveriesPage/index.d.ts +5 -0
- package/admin/presentation/WebhookDeliveriesPage/index.js +1 -0
- package/admin/presentation/WebhookForm/WebhookFormPresenter.d.ts +42 -0
- package/admin/presentation/WebhookForm/WebhookFormPresenter.js +252 -0
- package/admin/presentation/WebhookForm/WebhookFormPresenter.js.map +1 -0
- package/admin/presentation/WebhookForm/abstractions.d.ts +27 -0
- package/admin/presentation/WebhookForm/abstractions.js +5 -0
- package/admin/presentation/WebhookForm/abstractions.js.map +1 -0
- package/admin/presentation/WebhookForm/components/SigningSecret.d.ts +9 -0
- package/admin/presentation/WebhookForm/components/SigningSecret.js +47 -0
- package/admin/presentation/WebhookForm/components/SigningSecret.js.map +1 -0
- package/admin/presentation/WebhookForm/components/WebhookFormView.d.ts +2 -0
- package/admin/presentation/WebhookForm/components/WebhookFormView.js +97 -0
- package/admin/presentation/WebhookForm/components/WebhookFormView.js.map +1 -0
- package/admin/presentation/WebhookForm/feature.d.ts +3 -0
- package/admin/presentation/WebhookForm/feature.js +17 -0
- package/admin/presentation/WebhookForm/feature.js.map +1 -0
- package/admin/presentation/WebhookForm/index.d.ts +2 -0
- package/admin/presentation/WebhookForm/index.js +2 -0
- package/admin/presentation/WebhookList/WebhookListDataSource.d.ts +15 -0
- package/admin/presentation/WebhookList/WebhookListDataSource.js +67 -0
- package/admin/presentation/WebhookList/WebhookListDataSource.js.map +1 -0
- package/admin/presentation/WebhookList/WebhookListPresenter.d.ts +46 -0
- package/admin/presentation/WebhookList/WebhookListPresenter.js +92 -0
- package/admin/presentation/WebhookList/WebhookListPresenter.js.map +1 -0
- package/admin/presentation/WebhookList/abstractions.d.ts +45 -0
- package/admin/presentation/WebhookList/abstractions.js +5 -0
- package/admin/presentation/WebhookList/abstractions.js.map +1 -0
- package/admin/presentation/WebhookList/components/CreateWebhookButton.d.ts +2 -0
- package/admin/presentation/WebhookList/components/CreateWebhookButton.js +22 -0
- package/admin/presentation/WebhookList/components/CreateWebhookButton.js.map +1 -0
- package/admin/presentation/WebhookList/components/WebhookListContent.d.ts +9 -0
- package/admin/presentation/WebhookList/components/WebhookListContent.js +158 -0
- package/admin/presentation/WebhookList/components/WebhookListContent.js.map +1 -0
- package/admin/presentation/WebhookList/components/WebhookListView.d.ts +2 -0
- package/admin/presentation/WebhookList/components/WebhookListView.js +46 -0
- package/admin/presentation/WebhookList/components/WebhookListView.js.map +1 -0
- package/admin/presentation/WebhookList/feature.d.ts +3 -0
- package/admin/presentation/WebhookList/feature.js +17 -0
- package/admin/presentation/WebhookList/feature.js.map +1 -0
- package/admin/presentation/WebhookList/index.d.ts +2 -0
- package/admin/presentation/WebhookList/index.js +2 -0
- package/admin/presentation/WebhookSettings/WebhookSettingsPresenter.d.ts +21 -0
- package/admin/presentation/WebhookSettings/WebhookSettingsPresenter.js +89 -0
- package/admin/presentation/WebhookSettings/WebhookSettingsPresenter.js.map +1 -0
- package/admin/presentation/WebhookSettings/abstractions.d.ts +16 -0
- package/admin/presentation/WebhookSettings/abstractions.js +5 -0
- package/admin/presentation/WebhookSettings/abstractions.js.map +1 -0
- package/admin/presentation/WebhookSettings/components/WebhookSettingsView.d.ts +2 -0
- package/admin/presentation/WebhookSettings/components/WebhookSettingsView.js +56 -0
- package/admin/presentation/WebhookSettings/components/WebhookSettingsView.js.map +1 -0
- package/admin/presentation/WebhookSettings/feature.d.ts +3 -0
- package/admin/presentation/WebhookSettings/feature.js +17 -0
- package/admin/presentation/WebhookSettings/feature.js.map +1 -0
- package/admin/presentation/WebhookSettings/index.d.ts +2 -0
- package/admin/presentation/WebhookSettings/index.js +2 -0
- package/admin/presentation/security/HasPermission.d.ts +12 -0
- package/admin/presentation/security/HasPermission.js +6 -0
- package/admin/presentation/security/HasPermission.js.map +1 -0
- package/admin/presentation/security/usePermissions.d.ts +12 -0
- package/admin/presentation/security/usePermissions.js +6 -0
- package/admin/presentation/security/usePermissions.js.map +1 -0
- package/admin/routes.d.ts +9 -0
- package/admin/routes.js +25 -0
- package/admin/routes.js.map +1 -0
- package/admin/shared/types.d.ts +9 -0
- package/admin/shared/types.js +0 -0
- package/api/Extension.d.ts +1 -0
- package/api/Extension.js +1 -0
- package/api/WebhooksFeature.d.ts +4 -0
- package/api/WebhooksFeature.js +65 -0
- package/api/WebhooksFeature.js.map +1 -0
- package/api/domain/Webhook.d.ts +27 -0
- package/api/domain/Webhook.js +0 -0
- package/api/domain/WebhookDelivery.d.ts +35 -0
- package/api/domain/WebhookDelivery.js +0 -0
- package/api/domain/WebhookSettings.d.ts +4 -0
- package/api/domain/WebhookSettings.js +0 -0
- package/api/domain/constants.d.ts +5 -0
- package/api/domain/constants.js +8 -0
- package/api/domain/constants.js.map +1 -0
- package/api/domain/errors.d.ts +41 -0
- package/api/domain/errors.js +83 -0
- package/api/domain/errors.js.map +1 -0
- package/api/features/CreateWebhook/CreateWebhookRepository.d.ts +18 -0
- package/api/features/CreateWebhook/CreateWebhookRepository.js +43 -0
- package/api/features/CreateWebhook/CreateWebhookRepository.js.map +1 -0
- package/api/features/CreateWebhook/CreateWebhookUseCase.d.ts +16 -0
- package/api/features/CreateWebhook/CreateWebhookUseCase.js +48 -0
- package/api/features/CreateWebhook/CreateWebhookUseCase.js.map +1 -0
- package/api/features/CreateWebhook/abstractions.d.ts +33 -0
- package/api/features/CreateWebhook/abstractions.js +6 -0
- package/api/features/CreateWebhook/abstractions.js.map +1 -0
- package/api/features/CreateWebhook/feature.d.ts +4 -0
- package/api/features/CreateWebhook/feature.js +13 -0
- package/api/features/CreateWebhook/feature.js.map +1 -0
- package/api/features/CreateWebhook/schema.d.ts +10 -0
- package/api/features/CreateWebhook/schema.js +16 -0
- package/api/features/CreateWebhook/schema.js.map +1 -0
- package/api/features/CreateWebhookDelivery/CreateWebhookDeliveryRepository.d.ts +20 -0
- package/api/features/CreateWebhookDelivery/CreateWebhookDeliveryRepository.js +60 -0
- package/api/features/CreateWebhookDelivery/CreateWebhookDeliveryRepository.js.map +1 -0
- package/api/features/CreateWebhookDelivery/abstractions.d.ts +21 -0
- package/api/features/CreateWebhookDelivery/abstractions.js +5 -0
- package/api/features/CreateWebhookDelivery/abstractions.js.map +1 -0
- package/api/features/CreateWebhookDelivery/feature.d.ts +4 -0
- package/api/features/CreateWebhookDelivery/feature.js +11 -0
- package/api/features/CreateWebhookDelivery/feature.js.map +1 -0
- package/api/features/DeleteWebhook/DeleteWebhookRepository.d.ts +19 -0
- package/api/features/DeleteWebhook/DeleteWebhookRepository.js +66 -0
- package/api/features/DeleteWebhook/DeleteWebhookRepository.js.map +1 -0
- package/api/features/DeleteWebhook/DeleteWebhookUseCase.d.ts +15 -0
- package/api/features/DeleteWebhook/DeleteWebhookUseCase.js +34 -0
- package/api/features/DeleteWebhook/DeleteWebhookUseCase.js.map +1 -0
- package/api/features/DeleteWebhook/abstractions.d.ts +20 -0
- package/api/features/DeleteWebhook/abstractions.js +6 -0
- package/api/features/DeleteWebhook/abstractions.js.map +1 -0
- package/api/features/DeleteWebhook/feature.d.ts +4 -0
- package/api/features/DeleteWebhook/feature.js +13 -0
- package/api/features/DeleteWebhook/feature.js.map +1 -0
- package/api/features/DeleteWebhook/schema.d.ts +4 -0
- package/api/features/DeleteWebhook/schema.js +7 -0
- package/api/features/DeleteWebhook/schema.js.map +1 -0
- package/api/features/GetWebhook/GetWebhookRepository.d.ts +17 -0
- package/api/features/GetWebhook/GetWebhookRepository.js +39 -0
- package/api/features/GetWebhook/GetWebhookRepository.js.map +1 -0
- package/api/features/GetWebhook/GetWebhookUseCase.d.ts +14 -0
- package/api/features/GetWebhook/GetWebhookUseCase.js +29 -0
- package/api/features/GetWebhook/GetWebhookUseCase.js.map +1 -0
- package/api/features/GetWebhook/abstractions.d.ts +21 -0
- package/api/features/GetWebhook/abstractions.js +6 -0
- package/api/features/GetWebhook/abstractions.js.map +1 -0
- package/api/features/GetWebhook/feature.d.ts +4 -0
- package/api/features/GetWebhook/feature.js +13 -0
- package/api/features/GetWebhook/feature.js.map +1 -0
- package/api/features/GetWebhook/schema.d.ts +4 -0
- package/api/features/GetWebhook/schema.js +7 -0
- package/api/features/GetWebhook/schema.js.map +1 -0
- package/api/features/GetWebhookDelivery/GetWebhookDeliveryRepository.d.ts +17 -0
- package/api/features/GetWebhookDelivery/GetWebhookDeliveryRepository.js +39 -0
- package/api/features/GetWebhookDelivery/GetWebhookDeliveryRepository.js.map +1 -0
- package/api/features/GetWebhookDelivery/GetWebhookDeliveryUseCase.d.ts +14 -0
- package/api/features/GetWebhookDelivery/GetWebhookDeliveryUseCase.js +29 -0
- package/api/features/GetWebhookDelivery/GetWebhookDeliveryUseCase.js.map +1 -0
- package/api/features/GetWebhookDelivery/abstractions.d.ts +21 -0
- package/api/features/GetWebhookDelivery/abstractions.js +6 -0
- package/api/features/GetWebhookDelivery/abstractions.js.map +1 -0
- package/api/features/GetWebhookDelivery/feature.d.ts +4 -0
- package/api/features/GetWebhookDelivery/feature.js +13 -0
- package/api/features/GetWebhookDelivery/feature.js.map +1 -0
- package/api/features/GetWebhookDelivery/schema.d.ts +4 -0
- package/api/features/GetWebhookDelivery/schema.js +7 -0
- package/api/features/GetWebhookDelivery/schema.js.map +1 -0
- package/api/features/GetWebhookSettings/GetWebhookSettingsRepository.d.ts +19 -0
- package/api/features/GetWebhookSettings/GetWebhookSettingsRepository.js +57 -0
- package/api/features/GetWebhookSettings/GetWebhookSettingsRepository.js.map +1 -0
- package/api/features/GetWebhookSettings/abstractions.d.ts +13 -0
- package/api/features/GetWebhookSettings/abstractions.js +5 -0
- package/api/features/GetWebhookSettings/abstractions.js.map +1 -0
- package/api/features/GetWebhookSettings/feature.d.ts +4 -0
- package/api/features/GetWebhookSettings/feature.js +11 -0
- package/api/features/GetWebhookSettings/feature.js.map +1 -0
- package/api/features/ListAvailableWebhookEvents/ListAvailableWebhookEventsUseCase.d.ts +14 -0
- package/api/features/ListAvailableWebhookEvents/ListAvailableWebhookEventsUseCase.js +30 -0
- package/api/features/ListAvailableWebhookEvents/ListAvailableWebhookEventsUseCase.js.map +1 -0
- package/api/features/ListAvailableWebhookEvents/abstractions.d.ts +9 -0
- package/api/features/ListAvailableWebhookEvents/abstractions.js +5 -0
- package/api/features/ListAvailableWebhookEvents/abstractions.js.map +1 -0
- package/api/features/ListAvailableWebhookEvents/feature.d.ts +4 -0
- package/api/features/ListAvailableWebhookEvents/feature.js +11 -0
- package/api/features/ListAvailableWebhookEvents/feature.js.map +1 -0
- package/api/features/ListWebhookDeliveries/ListWebhookDeliveriesRepository.d.ts +21 -0
- package/api/features/ListWebhookDeliveries/ListWebhookDeliveriesRepository.js +63 -0
- package/api/features/ListWebhookDeliveries/ListWebhookDeliveriesRepository.js.map +1 -0
- package/api/features/ListWebhookDeliveries/ListWebhookDeliveriesUseCase.d.ts +14 -0
- package/api/features/ListWebhookDeliveries/ListWebhookDeliveriesUseCase.js +27 -0
- package/api/features/ListWebhookDeliveries/ListWebhookDeliveriesUseCase.js.map +1 -0
- package/api/features/ListWebhookDeliveries/abstractions.d.ts +40 -0
- package/api/features/ListWebhookDeliveries/abstractions.js +6 -0
- package/api/features/ListWebhookDeliveries/abstractions.js.map +1 -0
- package/api/features/ListWebhookDeliveries/feature.d.ts +4 -0
- package/api/features/ListWebhookDeliveries/feature.js +13 -0
- package/api/features/ListWebhookDeliveries/feature.js.map +1 -0
- package/api/features/ListWebhookDeliveries/schema.d.ts +7 -0
- package/api/features/ListWebhookDeliveries/schema.js +10 -0
- package/api/features/ListWebhookDeliveries/schema.js.map +1 -0
- package/api/features/ListWebhooks/ListWebhooksRepository.d.ts +21 -0
- package/api/features/ListWebhooks/ListWebhooksRepository.js +63 -0
- package/api/features/ListWebhooks/ListWebhooksRepository.js.map +1 -0
- package/api/features/ListWebhooks/ListWebhooksUseCase.d.ts +14 -0
- package/api/features/ListWebhooks/ListWebhooksUseCase.js +27 -0
- package/api/features/ListWebhooks/ListWebhooksUseCase.js.map +1 -0
- package/api/features/ListWebhooks/abstractions.d.ts +41 -0
- package/api/features/ListWebhooks/abstractions.js +6 -0
- package/api/features/ListWebhooks/abstractions.js.map +1 -0
- package/api/features/ListWebhooks/feature.d.ts +4 -0
- package/api/features/ListWebhooks/feature.js +13 -0
- package/api/features/ListWebhooks/feature.js.map +1 -0
- package/api/features/ListWebhooks/schema.d.ts +7 -0
- package/api/features/ListWebhooks/schema.js +10 -0
- package/api/features/ListWebhooks/schema.js.map +1 -0
- package/api/features/ResendWebhookDelivery/ResendWebhookDeliveryUseCase.d.ts +22 -0
- package/api/features/ResendWebhookDelivery/ResendWebhookDeliveryUseCase.js +70 -0
- package/api/features/ResendWebhookDelivery/ResendWebhookDeliveryUseCase.js.map +1 -0
- package/api/features/ResendWebhookDelivery/abstractions.d.ts +12 -0
- package/api/features/ResendWebhookDelivery/abstractions.js +5 -0
- package/api/features/ResendWebhookDelivery/abstractions.js.map +1 -0
- package/api/features/ResendWebhookDelivery/feature.d.ts +4 -0
- package/api/features/ResendWebhookDelivery/feature.js +11 -0
- package/api/features/ResendWebhookDelivery/feature.js.map +1 -0
- package/api/features/ResendWebhookDelivery/schema.d.ts +4 -0
- package/api/features/ResendWebhookDelivery/schema.js +7 -0
- package/api/features/ResendWebhookDelivery/schema.js.map +1 -0
- package/api/features/SendWebhookTask/SendWebhookTask.d.ts +33 -0
- package/api/features/SendWebhookTask/SendWebhookTask.js +111 -0
- package/api/features/SendWebhookTask/SendWebhookTask.js.map +1 -0
- package/api/features/SendWebhookTask/feature.d.ts +4 -0
- package/api/features/SendWebhookTask/feature.js +11 -0
- package/api/features/SendWebhookTask/feature.js.map +1 -0
- package/api/features/SendWebhookTask/types.d.ts +16 -0
- package/api/features/SendWebhookTask/types.js +0 -0
- package/api/features/Transformers/WebhookDeliveryTransformer.d.ts +13 -0
- package/api/features/Transformers/WebhookDeliveryTransformer.js +57 -0
- package/api/features/Transformers/WebhookDeliveryTransformer.js.map +1 -0
- package/api/features/Transformers/WebhookTransformer.d.ts +11 -0
- package/api/features/Transformers/WebhookTransformer.js +35 -0
- package/api/features/Transformers/WebhookTransformer.js.map +1 -0
- package/api/features/Transformers/abstractions/WebhookDeliveryTransformer.d.ts +10 -0
- package/api/features/Transformers/abstractions/WebhookDeliveryTransformer.js +5 -0
- package/api/features/Transformers/abstractions/WebhookDeliveryTransformer.js.map +1 -0
- package/api/features/Transformers/abstractions/WebhookTransformer.d.ts +10 -0
- package/api/features/Transformers/abstractions/WebhookTransformer.js +5 -0
- package/api/features/Transformers/abstractions/WebhookTransformer.js.map +1 -0
- package/api/features/Transformers/feature.d.ts +4 -0
- package/api/features/Transformers/feature.js +13 -0
- package/api/features/Transformers/feature.js.map +1 -0
- package/api/features/Transformers/index.d.ts +2 -0
- package/api/features/Transformers/index.js +2 -0
- package/api/features/TriggerWebhook/TriggerWebhookUseCase.d.ts +21 -0
- package/api/features/TriggerWebhook/TriggerWebhookUseCase.js +65 -0
- package/api/features/TriggerWebhook/TriggerWebhookUseCase.js.map +1 -0
- package/api/features/TriggerWebhook/abstractions.d.ts +13 -0
- package/api/features/TriggerWebhook/abstractions.js +5 -0
- package/api/features/TriggerWebhook/abstractions.js.map +1 -0
- package/api/features/TriggerWebhook/feature.d.ts +4 -0
- package/api/features/TriggerWebhook/feature.js +11 -0
- package/api/features/TriggerWebhook/feature.js.map +1 -0
- package/api/features/TriggerWebhook/schema.d.ts +5 -0
- package/api/features/TriggerWebhook/schema.js +8 -0
- package/api/features/TriggerWebhook/schema.js.map +1 -0
- package/api/features/UpdateWebhook/UpdateWebhookRepository.d.ts +21 -0
- package/api/features/UpdateWebhook/UpdateWebhookRepository.js +50 -0
- package/api/features/UpdateWebhook/UpdateWebhookRepository.js.map +1 -0
- package/api/features/UpdateWebhook/UpdateWebhookUseCase.d.ts +16 -0
- package/api/features/UpdateWebhook/UpdateWebhookUseCase.js +42 -0
- package/api/features/UpdateWebhook/UpdateWebhookUseCase.js.map +1 -0
- package/api/features/UpdateWebhook/abstractions.d.ts +30 -0
- package/api/features/UpdateWebhook/abstractions.js +6 -0
- package/api/features/UpdateWebhook/abstractions.js.map +1 -0
- package/api/features/UpdateWebhook/feature.d.ts +4 -0
- package/api/features/UpdateWebhook/feature.js +13 -0
- package/api/features/UpdateWebhook/feature.js.map +1 -0
- package/api/features/UpdateWebhook/schema.d.ts +9 -0
- package/api/features/UpdateWebhook/schema.js +15 -0
- package/api/features/UpdateWebhook/schema.js.map +1 -0
- package/api/features/UpdateWebhookDelivery/UpdateWebhookDeliveryRepository.d.ts +22 -0
- package/api/features/UpdateWebhookDelivery/UpdateWebhookDeliveryRepository.js +62 -0
- package/api/features/UpdateWebhookDelivery/UpdateWebhookDeliveryRepository.js.map +1 -0
- package/api/features/UpdateWebhookDelivery/abstractions.d.ts +23 -0
- package/api/features/UpdateWebhookDelivery/abstractions.js +5 -0
- package/api/features/UpdateWebhookDelivery/abstractions.js.map +1 -0
- package/api/features/UpdateWebhookDelivery/feature.d.ts +4 -0
- package/api/features/UpdateWebhookDelivery/feature.js +11 -0
- package/api/features/UpdateWebhookDelivery/feature.js.map +1 -0
- package/api/features/UpdateWebhookSettings/UpdateWebhookSettingsRepository.d.ts +21 -0
- package/api/features/UpdateWebhookSettings/UpdateWebhookSettingsRepository.js +62 -0
- package/api/features/UpdateWebhookSettings/UpdateWebhookSettingsRepository.js.map +1 -0
- package/api/features/UpdateWebhookSettings/UpdateWebhookSettingsUseCase.d.ts +14 -0
- package/api/features/UpdateWebhookSettings/UpdateWebhookSettingsUseCase.js +27 -0
- package/api/features/UpdateWebhookSettings/UpdateWebhookSettingsUseCase.js.map +1 -0
- package/api/features/UpdateWebhookSettings/abstractions.d.ts +27 -0
- package/api/features/UpdateWebhookSettings/abstractions.js +6 -0
- package/api/features/UpdateWebhookSettings/abstractions.js.map +1 -0
- package/api/features/UpdateWebhookSettings/feature.d.ts +4 -0
- package/api/features/UpdateWebhookSettings/feature.js +13 -0
- package/api/features/UpdateWebhookSettings/feature.js.map +1 -0
- package/api/features/UpdateWebhookSettings/schema.d.ts +5 -0
- package/api/features/UpdateWebhookSettings/schema.js +9 -0
- package/api/features/UpdateWebhookSettings/schema.js.map +1 -0
- package/api/features/WebhookDeliver/WebhookDeliver.d.ts +13 -0
- package/api/features/WebhookDeliver/WebhookDeliver.js +79 -0
- package/api/features/WebhookDeliver/WebhookDeliver.js.map +1 -0
- package/api/features/WebhookDeliver/abstractions.d.ts +24 -0
- package/api/features/WebhookDeliver/abstractions.js +5 -0
- package/api/features/WebhookDeliver/abstractions.js.map +1 -0
- package/api/features/WebhookDeliver/feature.d.ts +4 -0
- package/api/features/WebhookDeliver/feature.js +11 -0
- package/api/features/WebhookDeliver/feature.js.map +1 -0
- package/api/features/WebhookDeliver/index.d.ts +2 -0
- package/api/features/WebhookDeliver/index.js +2 -0
- package/api/features/WebhookDispatcher/WebhookDispatcher.d.ts +19 -0
- package/api/features/WebhookDispatcher/WebhookDispatcher.js +61 -0
- package/api/features/WebhookDispatcher/WebhookDispatcher.js.map +1 -0
- package/api/features/WebhookDispatcher/feature.d.ts +4 -0
- package/api/features/WebhookDispatcher/feature.js +11 -0
- package/api/features/WebhookDispatcher/feature.js.map +1 -0
- package/api/features/WebhookPermissions/abstractions.d.ts +17 -0
- package/api/features/WebhookPermissions/abstractions.js +6 -0
- package/api/features/WebhookPermissions/abstractions.js.map +1 -0
- package/api/features/WebhookPermissions/feature.d.ts +4 -0
- package/api/features/WebhookPermissions/feature.js +7 -0
- package/api/features/WebhookPermissions/feature.js.map +1 -0
- package/api/features/WebhookSignPayload/WebhookSignPayload.d.ts +9 -0
- package/api/features/WebhookSignPayload/WebhookSignPayload.js +26 -0
- package/api/features/WebhookSignPayload/WebhookSignPayload.js.map +1 -0
- package/api/features/WebhookSignPayload/feature.d.ts +4 -0
- package/api/features/WebhookSignPayload/feature.js +11 -0
- package/api/features/WebhookSignPayload/feature.js.map +1 -0
- package/api/features/WebhookVerifyPayload/WebhookVerifyPayload.d.ts +10 -0
- package/api/features/WebhookVerifyPayload/WebhookVerifyPayload.js +22 -0
- package/api/features/WebhookVerifyPayload/WebhookVerifyPayload.js.map +1 -0
- package/api/features/WebhookVerifyPayload/feature.d.ts +4 -0
- package/api/features/WebhookVerifyPayload/feature.js +11 -0
- package/api/features/WebhookVerifyPayload/feature.js.map +1 -0
- package/api/graphql/WebhookCrudSchema.d.ts +8 -0
- package/api/graphql/WebhookCrudSchema.js +166 -0
- package/api/graphql/WebhookCrudSchema.js.map +1 -0
- package/api/graphql/WebhookDeliverySchema.d.ts +8 -0
- package/api/graphql/WebhookDeliverySchema.js +100 -0
- package/api/graphql/WebhookDeliverySchema.js.map +1 -0
- package/api/graphql/WebhookEventSchema.d.ts +8 -0
- package/api/graphql/WebhookEventSchema.js +45 -0
- package/api/graphql/WebhookEventSchema.js.map +1 -0
- package/api/graphql/WebhookSettingsSchema.d.ts +8 -0
- package/api/graphql/WebhookSettingsSchema.js +62 -0
- package/api/graphql/WebhookSettingsSchema.js.map +1 -0
- package/api/graphql/WebhookTriggerSchema.d.ts +8 -0
- package/api/graphql/WebhookTriggerSchema.js +36 -0
- package/api/graphql/WebhookTriggerSchema.js.map +1 -0
- package/api/index.d.ts +1 -0
- package/api/index.js +8 -0
- package/api/index.js.map +1 -0
- package/api/models/WebhookDeliveryModel.d.ts +8 -0
- package/api/models/WebhookDeliveryModel.js +36 -0
- package/api/models/WebhookDeliveryModel.js.map +1 -0
- package/api/models/WebhookModel.d.ts +8 -0
- package/api/models/WebhookModel.js +33 -0
- package/api/models/WebhookModel.js.map +1 -0
- package/api/models/WebhookSettingsModel.d.ts +8 -0
- package/api/models/WebhookSettingsModel.js +28 -0
- package/api/models/WebhookSettingsModel.js.map +1 -0
- package/api/permissions.d.ts +12 -0
- package/api/permissions.js +22 -0
- package/api/permissions.js.map +1 -0
- package/api/utils/isValidEndpointUrl.d.ts +1 -0
- package/api/utils/isValidEndpointUrl.js +13 -0
- package/api/utils/isValidEndpointUrl.js.map +1 -0
- package/exports/api/webhooks.d.ts +5 -0
- package/exports/api/webhooks.js +1 -0
- package/package.json +58 -0
|
@@ -0,0 +1,196 @@
|
|
|
1
|
+
import { computed, makeAutoObservable, runInAction } from "mobx";
|
|
2
|
+
import { ListPresenter } from "@webiny/app-admin/presentation/listPresenter/abstractions.js";
|
|
3
|
+
import { ListWebhookDeliveriesUseCase } from "../../features/listWebhookDeliveries/abstractions.js";
|
|
4
|
+
import { ResendWebhookDeliveryUseCase } from "../../features/resendWebhookDelivery/abstractions.js";
|
|
5
|
+
import { ListAvailableEventsUseCase } from "../../features/listAvailableEvents/abstractions.js";
|
|
6
|
+
import { WebhookDeliveriesDataSource } from "../WebhookDeliveries/WebhookDeliveriesDataSource.js";
|
|
7
|
+
import { WebhookDeliveriesPagePresenter } from "./abstractions.js";
|
|
8
|
+
class WebhookDeliveriesPagePresenterImpl {
|
|
9
|
+
constructor(listPresenter, listDeliveriesUseCase, listAvailableEventsUseCase, resendDeliveryUseCase){
|
|
10
|
+
this.listPresenter = listPresenter;
|
|
11
|
+
this.listDeliveriesUseCase = listDeliveriesUseCase;
|
|
12
|
+
this.listAvailableEventsUseCase = listAvailableEventsUseCase;
|
|
13
|
+
this.resendDeliveryUseCase = resendDeliveryUseCase;
|
|
14
|
+
this._availableEvents = [];
|
|
15
|
+
this._filters = {
|
|
16
|
+
app: null,
|
|
17
|
+
entity: null,
|
|
18
|
+
eventName: null,
|
|
19
|
+
status: []
|
|
20
|
+
};
|
|
21
|
+
this._expandedDeliveryId = null;
|
|
22
|
+
this._resendingIds = new Set();
|
|
23
|
+
this._loading = false;
|
|
24
|
+
this._error = null;
|
|
25
|
+
makeAutoObservable(this, {
|
|
26
|
+
vm: computed
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
get vm() {
|
|
30
|
+
return {
|
|
31
|
+
availableApps: this._computeAvailableApps(),
|
|
32
|
+
availableEntities: this._computeAvailableEntities(),
|
|
33
|
+
availableEventNames: this._computeAvailableEventNames(),
|
|
34
|
+
filters: {
|
|
35
|
+
...this._filters
|
|
36
|
+
},
|
|
37
|
+
list: this.listPresenter.vm,
|
|
38
|
+
expandedDeliveryId: this._expandedDeliveryId,
|
|
39
|
+
resendingIds: new Set(this._resendingIds),
|
|
40
|
+
loading: this._loading,
|
|
41
|
+
error: this._error
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
async init() {
|
|
45
|
+
runInAction(()=>{
|
|
46
|
+
this._loading = true;
|
|
47
|
+
this._error = null;
|
|
48
|
+
});
|
|
49
|
+
try {
|
|
50
|
+
const events = await this.listAvailableEventsUseCase.execute();
|
|
51
|
+
runInAction(()=>{
|
|
52
|
+
this._availableEvents = events;
|
|
53
|
+
});
|
|
54
|
+
} catch (err) {
|
|
55
|
+
runInAction(()=>{
|
|
56
|
+
this._error = err instanceof Error ? err.message : "Failed to load events.";
|
|
57
|
+
});
|
|
58
|
+
} finally{
|
|
59
|
+
runInAction(()=>{
|
|
60
|
+
this._loading = false;
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
runInAction(()=>{
|
|
64
|
+
this._applyFilters();
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
setAppFilter(app) {
|
|
68
|
+
this._filters = {
|
|
69
|
+
app,
|
|
70
|
+
entity: null,
|
|
71
|
+
eventName: null,
|
|
72
|
+
status: this._filters.status
|
|
73
|
+
};
|
|
74
|
+
this._expandedDeliveryId = null;
|
|
75
|
+
this._applyFilters();
|
|
76
|
+
}
|
|
77
|
+
setEntityFilter(entity) {
|
|
78
|
+
this._filters = {
|
|
79
|
+
...this._filters,
|
|
80
|
+
entity,
|
|
81
|
+
eventName: null
|
|
82
|
+
};
|
|
83
|
+
this._expandedDeliveryId = null;
|
|
84
|
+
this._applyFilters();
|
|
85
|
+
}
|
|
86
|
+
setEventFilter(eventName) {
|
|
87
|
+
this._filters = {
|
|
88
|
+
...this._filters,
|
|
89
|
+
eventName
|
|
90
|
+
};
|
|
91
|
+
this._expandedDeliveryId = null;
|
|
92
|
+
this._applyFilters();
|
|
93
|
+
}
|
|
94
|
+
setStatusFilter(status) {
|
|
95
|
+
this._filters = {
|
|
96
|
+
...this._filters,
|
|
97
|
+
status
|
|
98
|
+
};
|
|
99
|
+
this._expandedDeliveryId = null;
|
|
100
|
+
this._applyFilters();
|
|
101
|
+
}
|
|
102
|
+
expandDelivery(id) {
|
|
103
|
+
this._expandedDeliveryId = this._expandedDeliveryId === id ? null : id;
|
|
104
|
+
}
|
|
105
|
+
async loadMore() {
|
|
106
|
+
await this.listPresenter.actions.loadMore();
|
|
107
|
+
}
|
|
108
|
+
async resend(id) {
|
|
109
|
+
runInAction(()=>{
|
|
110
|
+
this._resendingIds.add(id);
|
|
111
|
+
});
|
|
112
|
+
try {
|
|
113
|
+
await this.resendDeliveryUseCase.execute(id);
|
|
114
|
+
await this.listPresenter.actions.refresh();
|
|
115
|
+
} finally{
|
|
116
|
+
runInAction(()=>{
|
|
117
|
+
this._resendingIds.delete(id);
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
_applyFilters() {
|
|
122
|
+
const where = this._buildWhere();
|
|
123
|
+
const dataSource = new WebhookDeliveriesDataSource(this.listDeliveriesUseCase, where);
|
|
124
|
+
this.listPresenter.init({
|
|
125
|
+
dataSource,
|
|
126
|
+
initialSort: {
|
|
127
|
+
field: "createdOn",
|
|
128
|
+
direction: "DESC"
|
|
129
|
+
},
|
|
130
|
+
limit: 20
|
|
131
|
+
});
|
|
132
|
+
}
|
|
133
|
+
_buildWhere() {
|
|
134
|
+
const where = {};
|
|
135
|
+
const { app, entity, eventName } = this._filters;
|
|
136
|
+
if (app || entity || eventName) {
|
|
137
|
+
const matching = this._availableEvents.filter((event)=>{
|
|
138
|
+
if (app && event.app !== app) return false;
|
|
139
|
+
if (entity && event.entity !== entity) return false;
|
|
140
|
+
if (eventName && event.eventName !== eventName) return false;
|
|
141
|
+
return true;
|
|
142
|
+
});
|
|
143
|
+
if (matching.length > 0) where.eventType_in = matching.map((e)=>e.eventName);
|
|
144
|
+
}
|
|
145
|
+
if (this._filters.status.length > 0) where.status_in = this._filters.status;
|
|
146
|
+
return where;
|
|
147
|
+
}
|
|
148
|
+
_computeAvailableApps() {
|
|
149
|
+
const seen = new Set();
|
|
150
|
+
const result = [];
|
|
151
|
+
for (const event of this._availableEvents)if (!seen.has(event.app)) {
|
|
152
|
+
seen.add(event.app);
|
|
153
|
+
result.push({
|
|
154
|
+
value: event.app,
|
|
155
|
+
label: event.appLabel
|
|
156
|
+
});
|
|
157
|
+
}
|
|
158
|
+
return result;
|
|
159
|
+
}
|
|
160
|
+
_computeAvailableEntities() {
|
|
161
|
+
if (!this._filters.app) return [];
|
|
162
|
+
const seen = new Set();
|
|
163
|
+
const result = [];
|
|
164
|
+
for (const event of this._availableEvents)if (event.app === this._filters.app && !seen.has(event.entity)) {
|
|
165
|
+
seen.add(event.entity);
|
|
166
|
+
result.push({
|
|
167
|
+
value: event.entity,
|
|
168
|
+
label: event.entityLabel
|
|
169
|
+
});
|
|
170
|
+
}
|
|
171
|
+
return result;
|
|
172
|
+
}
|
|
173
|
+
_computeAvailableEventNames() {
|
|
174
|
+
if (!this._filters.app) return [];
|
|
175
|
+
return this._availableEvents.filter((event)=>{
|
|
176
|
+
if (event.app !== this._filters.app) return false;
|
|
177
|
+
if (this._filters.entity && event.entity !== this._filters.entity) return false;
|
|
178
|
+
return true;
|
|
179
|
+
}).map((event)=>({
|
|
180
|
+
value: event.eventName,
|
|
181
|
+
label: event.label
|
|
182
|
+
}));
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
const WebhookDeliveriesPagePresenter_WebhookDeliveriesPagePresenter = WebhookDeliveriesPagePresenter.createImplementation({
|
|
186
|
+
implementation: WebhookDeliveriesPagePresenterImpl,
|
|
187
|
+
dependencies: [
|
|
188
|
+
ListPresenter,
|
|
189
|
+
ListWebhookDeliveriesUseCase,
|
|
190
|
+
ListAvailableEventsUseCase,
|
|
191
|
+
ResendWebhookDeliveryUseCase
|
|
192
|
+
]
|
|
193
|
+
});
|
|
194
|
+
export { WebhookDeliveriesPagePresenter_WebhookDeliveriesPagePresenter as WebhookDeliveriesPagePresenter };
|
|
195
|
+
|
|
196
|
+
//# sourceMappingURL=WebhookDeliveriesPagePresenter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"admin/presentation/WebhookDeliveriesPage/WebhookDeliveriesPagePresenter.js","sources":["../../../../src/admin/presentation/WebhookDeliveriesPage/WebhookDeliveriesPagePresenter.ts"],"sourcesContent":["import { makeAutoObservable, computed, runInAction } from \"mobx\";\nimport { ListPresenter } from \"@webiny/app-admin/presentation/listPresenter/abstractions.js\";\nimport type { WebhookDelivery, WebhookEvent } from \"~/admin/shared/types.js\";\nimport {\n ListWebhookDeliveriesUseCase,\n type ListWebhookDeliveriesWhere\n} from \"~/admin/features/listWebhookDeliveries/abstractions.js\";\nimport { ResendWebhookDeliveryUseCase } from \"~/admin/features/resendWebhookDelivery/abstractions.js\";\nimport { ListAvailableEventsUseCase } from \"~/admin/features/listAvailableEvents/abstractions.js\";\nimport { WebhookDeliveriesDataSource } from \"~/admin/presentation/WebhookDeliveries/WebhookDeliveriesDataSource.js\";\nimport {\n WebhookDeliveriesPagePresenter as Abstraction,\n type IWebhookDeliveriesPagePresenter,\n type IWebhookDeliveriesPageViewModel,\n type IDeliveryFilterOption,\n type IDeliveryPageFilters\n} from \"./abstractions.js\";\n\nclass WebhookDeliveriesPagePresenterImpl implements IWebhookDeliveriesPagePresenter {\n private _availableEvents: WebhookEvent[] = [];\n private _filters: IDeliveryPageFilters = {\n app: null,\n entity: null,\n eventName: null,\n status: []\n };\n private _expandedDeliveryId: string | null = null;\n private _resendingIds: Set<string> = new Set();\n private _loading = false;\n private _error: string | null = null;\n\n constructor(\n private readonly listPresenter: ListPresenter.Interface<WebhookDelivery>,\n private readonly listDeliveriesUseCase: ListWebhookDeliveriesUseCase.Interface,\n private readonly listAvailableEventsUseCase: ListAvailableEventsUseCase.Interface,\n private readonly resendDeliveryUseCase: ResendWebhookDeliveryUseCase.Interface\n ) {\n makeAutoObservable(this, { vm: computed });\n }\n\n get vm(): IWebhookDeliveriesPageViewModel {\n return {\n availableApps: this._computeAvailableApps(),\n availableEntities: this._computeAvailableEntities(),\n availableEventNames: this._computeAvailableEventNames(),\n filters: { ...this._filters },\n list: this.listPresenter.vm,\n expandedDeliveryId: this._expandedDeliveryId,\n resendingIds: new Set(this._resendingIds),\n loading: this._loading,\n error: this._error\n };\n }\n\n public async init(): Promise<void> {\n runInAction(() => {\n this._loading = true;\n this._error = null;\n });\n try {\n const events = await this.listAvailableEventsUseCase.execute();\n runInAction(() => {\n this._availableEvents = events;\n });\n } catch (err) {\n runInAction(() => {\n this._error = err instanceof Error ? err.message : \"Failed to load events.\";\n });\n } finally {\n runInAction(() => {\n this._loading = false;\n });\n }\n runInAction(() => {\n this._applyFilters();\n });\n }\n\n public setAppFilter(app: string | null): void {\n this._filters = { app, entity: null, eventName: null, status: this._filters.status };\n this._expandedDeliveryId = null;\n this._applyFilters();\n }\n\n public setEntityFilter(entity: string | null): void {\n this._filters = { ...this._filters, entity, eventName: null };\n this._expandedDeliveryId = null;\n this._applyFilters();\n }\n\n public setEventFilter(eventName: string | null): void {\n this._filters = { ...this._filters, eventName };\n this._expandedDeliveryId = null;\n this._applyFilters();\n }\n\n public setStatusFilter(status: string[]): void {\n this._filters = { ...this._filters, status };\n this._expandedDeliveryId = null;\n this._applyFilters();\n }\n\n public expandDelivery(id: string | null): void {\n this._expandedDeliveryId = this._expandedDeliveryId === id ? null : id;\n }\n\n public async loadMore(): Promise<void> {\n await this.listPresenter.actions.loadMore();\n }\n\n public async resend(id: string): Promise<void> {\n runInAction(() => {\n this._resendingIds.add(id);\n });\n try {\n await this.resendDeliveryUseCase.execute(id);\n await this.listPresenter.actions.refresh();\n } finally {\n runInAction(() => {\n this._resendingIds.delete(id);\n });\n }\n }\n\n private _applyFilters(): void {\n const where = this._buildWhere();\n const dataSource = new WebhookDeliveriesDataSource(this.listDeliveriesUseCase, where);\n this.listPresenter.init({\n dataSource,\n initialSort: { field: \"createdOn\", direction: \"DESC\" },\n limit: 20\n });\n }\n\n private _buildWhere(): ListWebhookDeliveriesWhere {\n const where: ListWebhookDeliveriesWhere = {};\n const { app, entity, eventName } = this._filters;\n\n if (app || entity || eventName) {\n const matching = this._availableEvents.filter(event => {\n if (app && event.app !== app) {\n return false;\n }\n if (entity && event.entity !== entity) {\n return false;\n }\n if (eventName && event.eventName !== eventName) {\n return false;\n }\n return true;\n });\n if (matching.length > 0) {\n where.eventType_in = matching.map(e => e.eventName);\n }\n }\n\n if (this._filters.status.length > 0) {\n where.status_in = this._filters.status;\n }\n\n return where;\n }\n\n private _computeAvailableApps(): IDeliveryFilterOption[] {\n const seen = new Set<string>();\n const result: IDeliveryFilterOption[] = [];\n for (const event of this._availableEvents) {\n if (!seen.has(event.app)) {\n seen.add(event.app);\n result.push({ value: event.app, label: event.appLabel });\n }\n }\n return result;\n }\n\n private _computeAvailableEntities(): IDeliveryFilterOption[] {\n if (!this._filters.app) {\n return [];\n }\n const seen = new Set<string>();\n const result: IDeliveryFilterOption[] = [];\n for (const event of this._availableEvents) {\n if (event.app === this._filters.app && !seen.has(event.entity)) {\n seen.add(event.entity);\n result.push({ value: event.entity, label: event.entityLabel });\n }\n }\n return result;\n }\n\n private _computeAvailableEventNames(): IDeliveryFilterOption[] {\n if (!this._filters.app) {\n return [];\n }\n return this._availableEvents\n .filter(event => {\n if (event.app !== this._filters.app) {\n return false;\n }\n if (this._filters.entity && event.entity !== this._filters.entity) {\n return false;\n }\n return true;\n })\n .map(event => ({ value: event.eventName, label: event.label }));\n }\n}\n\nexport const WebhookDeliveriesPagePresenter = Abstraction.createImplementation({\n implementation: WebhookDeliveriesPagePresenterImpl,\n dependencies: [\n ListPresenter,\n ListWebhookDeliveriesUseCase,\n ListAvailableEventsUseCase,\n ResendWebhookDeliveryUseCase\n ]\n});\n"],"names":["WebhookDeliveriesPagePresenterImpl","listPresenter","listDeliveriesUseCase","listAvailableEventsUseCase","resendDeliveryUseCase","Set","makeAutoObservable","computed","runInAction","events","err","Error","app","entity","eventName","status","id","where","dataSource","WebhookDeliveriesDataSource","matching","event","e","seen","result","WebhookDeliveriesPagePresenter","Abstraction","ListPresenter","ListWebhookDeliveriesUseCase","ListAvailableEventsUseCase","ResendWebhookDeliveryUseCase"],"mappings":"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"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { WebhookDelivery } from "../../../admin/shared/types.js";
|
|
2
|
+
import type { IListViewModel } from "@webiny/app-admin/presentation/listPresenter/abstractions.js";
|
|
3
|
+
export interface IDeliveryPageFilters {
|
|
4
|
+
app: string | null;
|
|
5
|
+
entity: string | null;
|
|
6
|
+
eventName: string | null;
|
|
7
|
+
status: string[];
|
|
8
|
+
}
|
|
9
|
+
export interface IDeliveryFilterOption {
|
|
10
|
+
value: string;
|
|
11
|
+
label: string;
|
|
12
|
+
}
|
|
13
|
+
export interface IWebhookDeliveriesPageViewModel {
|
|
14
|
+
availableApps: IDeliveryFilterOption[];
|
|
15
|
+
availableEntities: IDeliveryFilterOption[];
|
|
16
|
+
availableEventNames: IDeliveryFilterOption[];
|
|
17
|
+
filters: IDeliveryPageFilters;
|
|
18
|
+
list: IListViewModel<WebhookDelivery>;
|
|
19
|
+
expandedDeliveryId: string | null;
|
|
20
|
+
resendingIds: Set<string>;
|
|
21
|
+
loading: boolean;
|
|
22
|
+
error: string | null;
|
|
23
|
+
}
|
|
24
|
+
export interface IWebhookDeliveriesPagePresenter {
|
|
25
|
+
vm: IWebhookDeliveriesPageViewModel;
|
|
26
|
+
init(): Promise<void>;
|
|
27
|
+
setAppFilter(app: string | null): void;
|
|
28
|
+
setEntityFilter(entity: string | null): void;
|
|
29
|
+
setEventFilter(eventName: string | null): void;
|
|
30
|
+
setStatusFilter(status: string[]): void;
|
|
31
|
+
expandDelivery(id: string | null): void;
|
|
32
|
+
loadMore(): Promise<void>;
|
|
33
|
+
resend(id: string): Promise<void>;
|
|
34
|
+
}
|
|
35
|
+
export declare const WebhookDeliveriesPagePresenter: import("@webiny/di").Abstraction<IWebhookDeliveriesPagePresenter>;
|
|
36
|
+
export declare namespace WebhookDeliveriesPagePresenter {
|
|
37
|
+
type Interface = IWebhookDeliveriesPagePresenter;
|
|
38
|
+
type ViewModel = IWebhookDeliveriesPageViewModel;
|
|
39
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"admin/presentation/WebhookDeliveriesPage/abstractions.js","sources":["../../../../src/admin/presentation/WebhookDeliveriesPage/abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/admin\";\nimport type { WebhookDelivery } from \"~/admin/shared/types.js\";\nimport type { IListViewModel } from \"@webiny/app-admin/presentation/listPresenter/abstractions.js\";\n\nexport interface IDeliveryPageFilters {\n app: string | null;\n entity: string | null;\n eventName: string | null;\n status: string[];\n}\n\nexport interface IDeliveryFilterOption {\n value: string;\n label: string;\n}\n\nexport interface IWebhookDeliveriesPageViewModel {\n availableApps: IDeliveryFilterOption[];\n availableEntities: IDeliveryFilterOption[];\n availableEventNames: IDeliveryFilterOption[];\n filters: IDeliveryPageFilters;\n list: IListViewModel<WebhookDelivery>;\n expandedDeliveryId: string | null;\n resendingIds: Set<string>;\n loading: boolean;\n error: string | null;\n}\n\nexport interface IWebhookDeliveriesPagePresenter {\n vm: IWebhookDeliveriesPageViewModel;\n init(): Promise<void>;\n setAppFilter(app: string | null): void;\n setEntityFilter(entity: string | null): void;\n setEventFilter(eventName: string | null): void;\n setStatusFilter(status: string[]): void;\n expandDelivery(id: string | null): void;\n loadMore(): Promise<void>;\n resend(id: string): Promise<void>;\n}\n\nexport const WebhookDeliveriesPagePresenter = createAbstraction<IWebhookDeliveriesPagePresenter>(\n \"WebhookDeliveriesPagePresenter\"\n);\n\nexport namespace WebhookDeliveriesPagePresenter {\n export type Interface = IWebhookDeliveriesPagePresenter;\n export type ViewModel = IWebhookDeliveriesPageViewModel;\n}\n"],"names":["WebhookDeliveriesPagePresenter","createAbstraction"],"mappings":";AAwCO,MAAMA,iCAAiCC,kBAC1C"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { IWebhookDeliveriesPagePresenter } from "../abstractions.js";
|
|
3
|
+
interface DeliveryBottomInfoBarProps {
|
|
4
|
+
presenter: IWebhookDeliveriesPagePresenter;
|
|
5
|
+
}
|
|
6
|
+
export declare const DeliveryBottomInfoBar: (({ presenter }: DeliveryBottomInfoBarProps) => React.JSX.Element | null) & {
|
|
7
|
+
displayName: string;
|
|
8
|
+
};
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import react from "react";
|
|
2
|
+
import { observer } from "mobx-react-lite";
|
|
3
|
+
import { Loader, Separator, Text } from "@webiny/admin-ui";
|
|
4
|
+
const DeliveryBottomInfoBar_DeliveryBottomInfoBar = observer(function({ presenter }) {
|
|
5
|
+
const { vm } = presenter;
|
|
6
|
+
const { pagination } = vm.list;
|
|
7
|
+
if (pagination.loading && 0 === vm.list.rows.length) return null;
|
|
8
|
+
return /*#__PURE__*/ react.createElement("div", {
|
|
9
|
+
className: "sticky bottom-0 z-5 bg-neutral-base w-full transform translate-z-0 overflow-hidden"
|
|
10
|
+
}, /*#__PURE__*/ react.createElement(Separator, null), /*#__PURE__*/ react.createElement("div", {
|
|
11
|
+
className: "h-xl px-md py-sm flex items-center justify-between"
|
|
12
|
+
}, /*#__PURE__*/ react.createElement(DeliveryMeta, {
|
|
13
|
+
loading: pagination.loading,
|
|
14
|
+
currentCount: pagination.currentCount,
|
|
15
|
+
totalCount: pagination.totalCount
|
|
16
|
+
}), /*#__PURE__*/ react.createElement(DeliveryLoadingStatus, {
|
|
17
|
+
loading: pagination.loadingMore
|
|
18
|
+
})));
|
|
19
|
+
});
|
|
20
|
+
const DeliveryMeta = ({ loading, currentCount, totalCount })=>{
|
|
21
|
+
if (loading) return null;
|
|
22
|
+
const label = 1 === totalCount ? "delivery" : "deliveries";
|
|
23
|
+
return /*#__PURE__*/ react.createElement(Text, {
|
|
24
|
+
size: "sm",
|
|
25
|
+
as: "div",
|
|
26
|
+
className: "text-neutral-strong"
|
|
27
|
+
}, `Showing ${currentCount} out of ${totalCount} ${label}.`);
|
|
28
|
+
};
|
|
29
|
+
const DeliveryLoadingStatus = ({ loading })=>{
|
|
30
|
+
if (!loading) return null;
|
|
31
|
+
return /*#__PURE__*/ react.createElement("div", {
|
|
32
|
+
className: "flex items-center gap-sm"
|
|
33
|
+
}, /*#__PURE__*/ react.createElement(Text, {
|
|
34
|
+
size: "sm",
|
|
35
|
+
as: "div",
|
|
36
|
+
className: "text-neutral-strong"
|
|
37
|
+
}, "Loading more deliveries..."), /*#__PURE__*/ react.createElement(Loader, {
|
|
38
|
+
size: "xs"
|
|
39
|
+
}));
|
|
40
|
+
};
|
|
41
|
+
export { DeliveryBottomInfoBar_DeliveryBottomInfoBar as DeliveryBottomInfoBar };
|
|
42
|
+
|
|
43
|
+
//# sourceMappingURL=DeliveryBottomInfoBar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"admin/presentation/WebhookDeliveriesPage/components/DeliveryBottomInfoBar.js","sources":["../../../../../src/admin/presentation/WebhookDeliveriesPage/components/DeliveryBottomInfoBar.tsx"],"sourcesContent":["import React from \"react\";\nimport { observer } from \"mobx-react-lite\";\nimport { Loader, Separator, Text } from \"@webiny/admin-ui\";\nimport type { IWebhookDeliveriesPagePresenter } from \"../abstractions.js\";\n\ninterface DeliveryBottomInfoBarProps {\n presenter: IWebhookDeliveriesPagePresenter;\n}\n\nexport const DeliveryBottomInfoBar = observer(function DeliveryBottomInfoBar({\n presenter\n}: DeliveryBottomInfoBarProps) {\n const { vm } = presenter;\n const { pagination } = vm.list;\n\n if (pagination.loading && vm.list.rows.length === 0) {\n return null;\n }\n\n return (\n <div className=\"sticky bottom-0 z-5 bg-neutral-base w-full transform translate-z-0 overflow-hidden\">\n <Separator />\n <div className=\"h-xl px-md py-sm flex items-center justify-between\">\n <DeliveryMeta\n loading={pagination.loading}\n currentCount={pagination.currentCount}\n totalCount={pagination.totalCount}\n />\n <DeliveryLoadingStatus loading={pagination.loadingMore} />\n </div>\n </div>\n );\n});\n\ninterface DeliveryMetaProps {\n loading: boolean;\n currentCount: number;\n totalCount: number;\n}\n\nconst DeliveryMeta = ({ loading, currentCount, totalCount }: DeliveryMetaProps) => {\n if (loading) {\n return null;\n }\n\n const label = totalCount === 1 ? \"delivery\" : \"deliveries\";\n\n return (\n <Text size=\"sm\" as=\"div\" className=\"text-neutral-strong\">\n {`Showing ${currentCount} out of ${totalCount} ${label}.`}\n </Text>\n );\n};\n\ninterface DeliveryLoadingStatusProps {\n loading: boolean;\n}\n\nconst DeliveryLoadingStatus = ({ loading }: DeliveryLoadingStatusProps) => {\n if (!loading) {\n return null;\n }\n\n return (\n <div className=\"flex items-center gap-sm\">\n <Text size=\"sm\" as=\"div\" className=\"text-neutral-strong\">\n Loading more deliveries...\n </Text>\n <Loader size=\"xs\" />\n </div>\n );\n};\n"],"names":["DeliveryBottomInfoBar","observer","presenter","vm","pagination","Separator","DeliveryMeta","DeliveryLoadingStatus","loading","currentCount","totalCount","label","Text","Loader"],"mappings":";;;AASO,MAAMA,8CAAwBC,SAAS,SAA+B,EACzEC,SAAS,EACgB;IACzB,MAAM,EAAEC,EAAE,EAAE,GAAGD;IACf,MAAM,EAAEE,UAAU,EAAE,GAAGD,GAAG,IAAI;IAE9B,IAAIC,WAAW,OAAO,IAAID,AAAwB,MAAxBA,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EACzC,OAAO;IAGX,OAAO,WAAP,GACI,oBAAC;QAAI,WAAU;qBACX,oBAACE,WAASA,OAAAA,WAAAA,GACV,oBAAC;QAAI,WAAU;qBACX,oBAACC,cAAYA;QACT,SAASF,WAAW,OAAO;QAC3B,cAAcA,WAAW,YAAY;QACrC,YAAYA,WAAW,UAAU;sBAErC,oBAACG,uBAAqBA;QAAC,SAASH,WAAW,WAAW;;AAItE;AAQA,MAAME,eAAe,CAAC,EAAEE,OAAO,EAAEC,YAAY,EAAEC,UAAU,EAAqB;IAC1E,IAAIF,SACA,OAAO;IAGX,MAAMG,QAAQD,AAAe,MAAfA,aAAmB,aAAa;IAE9C,OAAO,WAAP,GACI,oBAACE,MAAIA;QAAC,MAAK;QAAK,IAAG;QAAM,WAAU;OAC9B,CAAC,QAAQ,EAAEH,aAAa,QAAQ,EAAEC,WAAW,CAAC,EAAEC,MAAM,CAAC,CAAC;AAGrE;AAMA,MAAMJ,wBAAwB,CAAC,EAAEC,OAAO,EAA8B;IAClE,IAAI,CAACA,SACD,OAAO;IAGX,OAAO,WAAP,GACI,oBAAC;QAAI,WAAU;qBACX,oBAACI,MAAIA;QAAC,MAAK;QAAK,IAAG;QAAM,WAAU;OAAsB,6CAGzD,oBAACC,QAAMA;QAAC,MAAK;;AAGzB"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { IWebhookDeliveriesPagePresenter } from "../abstractions.js";
|
|
3
|
+
interface DeliveryFiltersProps {
|
|
4
|
+
presenter: IWebhookDeliveriesPagePresenter;
|
|
5
|
+
}
|
|
6
|
+
export declare const DeliveryFilters: (({ presenter }: DeliveryFiltersProps) => React.JSX.Element) & {
|
|
7
|
+
displayName: string;
|
|
8
|
+
};
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import react from "react";
|
|
2
|
+
import { observer } from "mobx-react-lite";
|
|
3
|
+
import { Grid, MultiSelect, Select } from "@webiny/admin-ui";
|
|
4
|
+
const STATUS_OPTIONS = [
|
|
5
|
+
{
|
|
6
|
+
value: "pending",
|
|
7
|
+
label: "Pending"
|
|
8
|
+
},
|
|
9
|
+
{
|
|
10
|
+
value: "delivering",
|
|
11
|
+
label: "Delivering"
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
value: "delivered",
|
|
15
|
+
label: "Delivered"
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
value: "failed",
|
|
19
|
+
label: "Failed"
|
|
20
|
+
}
|
|
21
|
+
];
|
|
22
|
+
const DeliveryFilters_DeliveryFilters = observer(function({ presenter }) {
|
|
23
|
+
const { vm } = presenter;
|
|
24
|
+
return /*#__PURE__*/ react.createElement(Grid, {
|
|
25
|
+
className: "py-sm"
|
|
26
|
+
}, /*#__PURE__*/ react.createElement(Grid.Column, {
|
|
27
|
+
span: 2
|
|
28
|
+
}, /*#__PURE__*/ react.createElement(Select, {
|
|
29
|
+
placeholder: "All apps",
|
|
30
|
+
value: vm.filters.app ?? "",
|
|
31
|
+
options: vm.availableApps,
|
|
32
|
+
onChange: (value)=>presenter.setAppFilter(value || null),
|
|
33
|
+
displayResetAction: true,
|
|
34
|
+
onValueReset: ()=>presenter.setAppFilter(null)
|
|
35
|
+
})), /*#__PURE__*/ react.createElement(Grid.Column, {
|
|
36
|
+
span: 2
|
|
37
|
+
}, /*#__PURE__*/ react.createElement(Select, {
|
|
38
|
+
placeholder: "All entities",
|
|
39
|
+
value: vm.filters.entity ?? "",
|
|
40
|
+
options: vm.availableEntities,
|
|
41
|
+
onChange: (value)=>presenter.setEntityFilter(value || null),
|
|
42
|
+
disabled: !vm.filters.app,
|
|
43
|
+
displayResetAction: true,
|
|
44
|
+
onValueReset: ()=>presenter.setEntityFilter(null)
|
|
45
|
+
})), /*#__PURE__*/ react.createElement(Grid.Column, {
|
|
46
|
+
span: 2
|
|
47
|
+
}, /*#__PURE__*/ react.createElement(Select, {
|
|
48
|
+
placeholder: "All events",
|
|
49
|
+
value: vm.filters.eventName ?? "",
|
|
50
|
+
options: vm.availableEventNames,
|
|
51
|
+
onChange: (value)=>presenter.setEventFilter(value || null),
|
|
52
|
+
disabled: !vm.filters.app,
|
|
53
|
+
displayResetAction: true,
|
|
54
|
+
onValueReset: ()=>presenter.setEventFilter(null)
|
|
55
|
+
})), /*#__PURE__*/ react.createElement(Grid.Column, {
|
|
56
|
+
span: 2
|
|
57
|
+
}, /*#__PURE__*/ react.createElement(MultiSelect, {
|
|
58
|
+
placeholder: "All statuses",
|
|
59
|
+
value: vm.filters.status,
|
|
60
|
+
options: STATUS_OPTIONS,
|
|
61
|
+
onChange: (values)=>presenter.setStatusFilter(values)
|
|
62
|
+
})));
|
|
63
|
+
});
|
|
64
|
+
export { DeliveryFilters_DeliveryFilters as DeliveryFilters };
|
|
65
|
+
|
|
66
|
+
//# sourceMappingURL=DeliveryFilters.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"admin/presentation/WebhookDeliveriesPage/components/DeliveryFilters.js","sources":["../../../../../src/admin/presentation/WebhookDeliveriesPage/components/DeliveryFilters.tsx"],"sourcesContent":["import React from \"react\";\nimport { observer } from \"mobx-react-lite\";\nimport { Grid, MultiSelect, Select } from \"@webiny/admin-ui\";\nimport type { IWebhookDeliveriesPagePresenter } from \"../abstractions.js\";\n\ninterface DeliveryFiltersProps {\n presenter: IWebhookDeliveriesPagePresenter;\n}\n\nconst STATUS_OPTIONS = [\n { value: \"pending\", label: \"Pending\" },\n { value: \"delivering\", label: \"Delivering\" },\n { value: \"delivered\", label: \"Delivered\" },\n { value: \"failed\", label: \"Failed\" }\n];\n\nexport const DeliveryFilters = observer(function DeliveryFilters({\n presenter\n}: DeliveryFiltersProps) {\n const { vm } = presenter;\n return (\n <Grid className=\"py-sm\">\n <Grid.Column span={2}>\n <Select\n placeholder=\"All apps\"\n value={vm.filters.app ?? \"\"}\n options={vm.availableApps}\n onChange={value => presenter.setAppFilter(value || null)}\n displayResetAction={true}\n onValueReset={() => presenter.setAppFilter(null)}\n />\n </Grid.Column>\n <Grid.Column span={2}>\n <Select\n placeholder=\"All entities\"\n value={vm.filters.entity ?? \"\"}\n options={vm.availableEntities}\n onChange={value => presenter.setEntityFilter(value || null)}\n disabled={!vm.filters.app}\n displayResetAction={true}\n onValueReset={() => presenter.setEntityFilter(null)}\n />\n </Grid.Column>\n <Grid.Column span={2}>\n <Select\n placeholder=\"All events\"\n value={vm.filters.eventName ?? \"\"}\n options={vm.availableEventNames}\n onChange={value => presenter.setEventFilter(value || null)}\n disabled={!vm.filters.app}\n displayResetAction={true}\n onValueReset={() => presenter.setEventFilter(null)}\n />\n </Grid.Column>\n <Grid.Column span={2}>\n <MultiSelect\n placeholder=\"All statuses\"\n value={vm.filters.status}\n options={STATUS_OPTIONS}\n onChange={values => presenter.setStatusFilter(values)}\n />\n </Grid.Column>\n </Grid>\n );\n});\n"],"names":["STATUS_OPTIONS","DeliveryFilters","observer","presenter","vm","Grid","Select","value","MultiSelect","values"],"mappings":";;;AASA,MAAMA,iBAAiB;IACnB;QAAE,OAAO;QAAW,OAAO;IAAU;IACrC;QAAE,OAAO;QAAc,OAAO;IAAa;IAC3C;QAAE,OAAO;QAAa,OAAO;IAAY;IACzC;QAAE,OAAO;QAAU,OAAO;IAAS;CACtC;AAEM,MAAMC,kCAAkBC,SAAS,SAAyB,EAC7DC,SAAS,EACU;IACnB,MAAM,EAAEC,EAAE,EAAE,GAAGD;IACf,OAAO,WAAP,GACI,oBAACE,MAAIA;QAAC,WAAU;qBACZ,oBAACA,KAAK,MAAM;QAAC,MAAM;qBACf,oBAACC,QAAMA;QACH,aAAY;QACZ,OAAOF,GAAG,OAAO,CAAC,GAAG,IAAI;QACzB,SAASA,GAAG,aAAa;QACzB,UAAUG,CAAAA,QAASJ,UAAU,YAAY,CAACI,SAAS;QACnD,oBAAoB;QACpB,cAAc,IAAMJ,UAAU,YAAY,CAAC;uBAGnD,oBAACE,KAAK,MAAM;QAAC,MAAM;qBACf,oBAACC,QAAMA;QACH,aAAY;QACZ,OAAOF,GAAG,OAAO,CAAC,MAAM,IAAI;QAC5B,SAASA,GAAG,iBAAiB;QAC7B,UAAUG,CAAAA,QAASJ,UAAU,eAAe,CAACI,SAAS;QACtD,UAAU,CAACH,GAAG,OAAO,CAAC,GAAG;QACzB,oBAAoB;QACpB,cAAc,IAAMD,UAAU,eAAe,CAAC;uBAGtD,oBAACE,KAAK,MAAM;QAAC,MAAM;qBACf,oBAACC,QAAMA;QACH,aAAY;QACZ,OAAOF,GAAG,OAAO,CAAC,SAAS,IAAI;QAC/B,SAASA,GAAG,mBAAmB;QAC/B,UAAUG,CAAAA,QAASJ,UAAU,cAAc,CAACI,SAAS;QACrD,UAAU,CAACH,GAAG,OAAO,CAAC,GAAG;QACzB,oBAAoB;QACpB,cAAc,IAAMD,UAAU,cAAc,CAAC;uBAGrD,oBAACE,KAAK,MAAM;QAAC,MAAM;qBACf,oBAACG,aAAWA;QACR,aAAY;QACZ,OAAOJ,GAAG,OAAO,CAAC,MAAM;QACxB,SAASJ;QACT,UAAUS,CAAAA,SAAUN,UAAU,eAAe,CAACM;;AAKlE"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { IWebhookDeliveriesPagePresenter } from "../abstractions.js";
|
|
3
|
+
interface DeliveryListProps {
|
|
4
|
+
presenter: IWebhookDeliveriesPagePresenter;
|
|
5
|
+
}
|
|
6
|
+
export declare const DeliveryList: (({ presenter }: DeliveryListProps) => React.JSX.Element) & {
|
|
7
|
+
displayName: string;
|
|
8
|
+
};
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import react, { useMemo } from "react";
|
|
2
|
+
import debounce from "lodash/debounce.js";
|
|
3
|
+
import { observer } from "mobx-react-lite";
|
|
4
|
+
import { Accordion, Scrollbar, Text } from "@webiny/admin-ui";
|
|
5
|
+
import { useConfirmationDialog } from "@webiny/app-admin/hooks/index.js";
|
|
6
|
+
import { DeliveryAccordionRow } from "../../WebhookDeliveries/components/DeliveryAccordionRow.js";
|
|
7
|
+
import { DeliveryBottomInfoBar } from "./DeliveryBottomInfoBar.js";
|
|
8
|
+
const DeliveryList_DeliveryList = observer(function({ presenter }) {
|
|
9
|
+
const { vm } = presenter;
|
|
10
|
+
const { showConfirmation: showResendConfirmation } = useConfirmationDialog({
|
|
11
|
+
title: "Resend Delivery",
|
|
12
|
+
message: "Are you sure you want to resend this delivery?"
|
|
13
|
+
});
|
|
14
|
+
const loadMoreOnScroll = useMemo(()=>debounce(async ({ scrollFrame })=>{
|
|
15
|
+
if (scrollFrame.top > 0.8) await presenter.loadMore();
|
|
16
|
+
}, 200), [
|
|
17
|
+
presenter
|
|
18
|
+
]);
|
|
19
|
+
if (0 === vm.list.rows.length && !vm.loading) return /*#__PURE__*/ react.createElement("div", {
|
|
20
|
+
className: "flex justify-center py-xl"
|
|
21
|
+
}, /*#__PURE__*/ react.createElement(Text, {
|
|
22
|
+
className: "text-neutral-strong"
|
|
23
|
+
}, "No deliveries found."));
|
|
24
|
+
return /*#__PURE__*/ react.createElement("div", {
|
|
25
|
+
className: "flex-1 overflow-hidden relative"
|
|
26
|
+
}, /*#__PURE__*/ react.createElement(Scrollbar, {
|
|
27
|
+
onScrollFrame: (scrollFrame)=>loadMoreOnScroll({
|
|
28
|
+
scrollFrame
|
|
29
|
+
})
|
|
30
|
+
}, /*#__PURE__*/ react.createElement(Accordion, {
|
|
31
|
+
variant: "underline"
|
|
32
|
+
}, vm.list.rows.map((delivery)=>/*#__PURE__*/ react.createElement(DeliveryAccordionRow, {
|
|
33
|
+
key: delivery.id,
|
|
34
|
+
delivery: delivery,
|
|
35
|
+
open: vm.expandedDeliveryId === delivery.id,
|
|
36
|
+
resending: vm.resendingIds.has(delivery.id),
|
|
37
|
+
onOpenChange: (open)=>presenter.expandDelivery(open ? delivery.id : null),
|
|
38
|
+
onResend: (id)=>showResendConfirmation(()=>presenter.resend(id))
|
|
39
|
+
})))), /*#__PURE__*/ react.createElement(DeliveryBottomInfoBar, {
|
|
40
|
+
presenter: presenter
|
|
41
|
+
}));
|
|
42
|
+
});
|
|
43
|
+
export { DeliveryList_DeliveryList as DeliveryList };
|
|
44
|
+
|
|
45
|
+
//# sourceMappingURL=DeliveryList.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"admin/presentation/WebhookDeliveriesPage/components/DeliveryList.js","sources":["../../../../../src/admin/presentation/WebhookDeliveriesPage/components/DeliveryList.tsx"],"sourcesContent":["import React, { useMemo } from \"react\";\nimport debounce from \"lodash/debounce.js\";\nimport { observer } from \"mobx-react-lite\";\nimport { Accordion, Scrollbar, Text } from \"@webiny/admin-ui\";\nimport { useConfirmationDialog } from \"@webiny/app-admin/hooks/index.js\";\nimport { DeliveryAccordionRow } from \"~/admin/presentation/WebhookDeliveries/components/DeliveryAccordionRow.js\";\nimport { DeliveryBottomInfoBar } from \"./DeliveryBottomInfoBar.js\";\nimport type { IWebhookDeliveriesPagePresenter } from \"../abstractions.js\";\nimport type { WebhookDelivery } from \"~/admin/shared/types.js\";\n\ninterface DeliveryListProps {\n presenter: IWebhookDeliveriesPagePresenter;\n}\n\nexport const DeliveryList = observer(function DeliveryList({ presenter }: DeliveryListProps) {\n const { vm } = presenter;\n\n const { showConfirmation: showResendConfirmation } = useConfirmationDialog({\n title: \"Resend Delivery\",\n message: \"Are you sure you want to resend this delivery?\"\n });\n\n const loadMoreOnScroll = useMemo(\n () =>\n debounce(async ({ scrollFrame }: { scrollFrame: { top: number } }) => {\n if (scrollFrame.top > 0.8) {\n await presenter.loadMore();\n }\n }, 200),\n [presenter]\n );\n\n if (vm.list.rows.length === 0 && !vm.loading) {\n return (\n <div className=\"flex justify-center py-xl\">\n <Text className=\"text-neutral-strong\">No deliveries found.</Text>\n </div>\n );\n }\n\n return (\n <div className=\"flex-1 overflow-hidden relative\">\n <Scrollbar onScrollFrame={scrollFrame => loadMoreOnScroll({ scrollFrame })}>\n <Accordion variant=\"underline\">\n {vm.list.rows.map((delivery: WebhookDelivery) => (\n <DeliveryAccordionRow\n key={delivery.id}\n delivery={delivery}\n open={vm.expandedDeliveryId === delivery.id}\n resending={vm.resendingIds.has(delivery.id)}\n onOpenChange={open =>\n presenter.expandDelivery(open ? delivery.id : null)\n }\n onResend={id => showResendConfirmation(() => presenter.resend(id))}\n />\n ))}\n </Accordion>\n </Scrollbar>\n <DeliveryBottomInfoBar presenter={presenter} />\n </div>\n );\n});\n"],"names":["DeliveryList","observer","presenter","vm","showResendConfirmation","useConfirmationDialog","loadMoreOnScroll","useMemo","debounce","scrollFrame","Text","Scrollbar","Accordion","delivery","DeliveryAccordionRow","open","id","DeliveryBottomInfoBar"],"mappings":";;;;;;;AAcO,MAAMA,4BAAeC,SAAS,SAAsB,EAAEC,SAAS,EAAqB;IACvF,MAAM,EAAEC,EAAE,EAAE,GAAGD;IAEf,MAAM,EAAE,kBAAkBE,sBAAsB,EAAE,GAAGC,sBAAsB;QACvE,OAAO;QACP,SAAS;IACb;IAEA,MAAMC,mBAAmBC,QACrB,IACIC,SAAS,OAAO,EAAEC,WAAW,EAAoC;YAC7D,IAAIA,YAAY,GAAG,GAAG,KAClB,MAAMP,UAAU,QAAQ;QAEhC,GAAG,MACP;QAACA;KAAU;IAGf,IAAIC,AAAwB,MAAxBA,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,IAAU,CAACA,GAAG,OAAO,EACxC,OAAO,WAAP,GACI,oBAAC;QAAI,WAAU;qBACX,oBAACO,MAAIA;QAAC,WAAU;OAAsB;IAKlD,OAAO,WAAP,GACI,oBAAC;QAAI,WAAU;qBACX,oBAACC,WAASA;QAAC,eAAeF,CAAAA,cAAeH,iBAAiB;gBAAEG;YAAY;qBACpE,oBAACG,WAASA;QAAC,SAAQ;OACdT,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAACU,WAAAA,WAAAA,GACf,oBAACC,sBAAoBA;YACjB,KAAKD,SAAS,EAAE;YAChB,UAAUA;YACV,MAAMV,GAAG,kBAAkB,KAAKU,SAAS,EAAE;YAC3C,WAAWV,GAAG,YAAY,CAAC,GAAG,CAACU,SAAS,EAAE;YAC1C,cAAcE,CAAAA,OACVb,UAAU,cAAc,CAACa,OAAOF,SAAS,EAAE,GAAG;YAElD,UAAUG,CAAAA,KAAMZ,uBAAuB,IAAMF,UAAU,MAAM,CAACc;6BAK9E,oBAACC,uBAAqBA;QAAC,WAAWf;;AAG9C"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import react, { useEffect, useMemo } from "react";
|
|
2
|
+
import { observer } from "mobx-react-lite";
|
|
3
|
+
import { DiContainerProvider, useContainer, useFeature } from "@webiny/app";
|
|
4
|
+
import { Button, Heading, Skeleton, Text } from "@webiny/admin-ui";
|
|
5
|
+
import { ListWebhookDeliveriesFeature } from "../../../features/listWebhookDeliveries/feature.js";
|
|
6
|
+
import { ListAvailableEventsFeature } from "../../../features/listAvailableEvents/feature.js";
|
|
7
|
+
import { ResendWebhookDeliveryFeature } from "../../../features/resendWebhookDelivery/feature.js";
|
|
8
|
+
import { WebhookDeliveriesPagePresenterFeature } from "../feature.js";
|
|
9
|
+
import { DeliveryFilters } from "./DeliveryFilters.js";
|
|
10
|
+
import { DeliveryList } from "./DeliveryList.js";
|
|
11
|
+
const WebhookDeliveriesPage_WebhookDeliveriesPageInner = observer(function() {
|
|
12
|
+
const { presenter } = useFeature(WebhookDeliveriesPagePresenterFeature);
|
|
13
|
+
useEffect(()=>{
|
|
14
|
+
presenter.init();
|
|
15
|
+
}, [
|
|
16
|
+
presenter
|
|
17
|
+
]);
|
|
18
|
+
const { vm } = presenter;
|
|
19
|
+
if (vm.loading && 0 === vm.list.rows.length) return /*#__PURE__*/ react.createElement("div", {
|
|
20
|
+
className: "flex flex-col gap-sm p-md"
|
|
21
|
+
}, /*#__PURE__*/ react.createElement(Skeleton, {
|
|
22
|
+
className: "h-10 w-full"
|
|
23
|
+
}), /*#__PURE__*/ react.createElement(Skeleton, {
|
|
24
|
+
className: "h-10 w-full"
|
|
25
|
+
}), /*#__PURE__*/ react.createElement(Skeleton, {
|
|
26
|
+
className: "h-10 w-full"
|
|
27
|
+
}));
|
|
28
|
+
if (vm.error) return /*#__PURE__*/ react.createElement("div", {
|
|
29
|
+
className: "flex flex-col items-center gap-sm p-md"
|
|
30
|
+
}, /*#__PURE__*/ react.createElement(Text, null, vm.error), /*#__PURE__*/ react.createElement(Button, {
|
|
31
|
+
variant: "secondary",
|
|
32
|
+
onClick: ()=>void presenter.init()
|
|
33
|
+
}, "Retry"));
|
|
34
|
+
return /*#__PURE__*/ react.createElement("div", {
|
|
35
|
+
className: "flex flex-col h-main-content"
|
|
36
|
+
}, /*#__PURE__*/ react.createElement("div", {
|
|
37
|
+
className: "p-md pb-0 flex flex-col gap-md"
|
|
38
|
+
}, /*#__PURE__*/ react.createElement(Heading, {
|
|
39
|
+
level: 4
|
|
40
|
+
}, "Delivery Log"), /*#__PURE__*/ react.createElement(DeliveryFilters, {
|
|
41
|
+
presenter: presenter
|
|
42
|
+
})), /*#__PURE__*/ react.createElement(DeliveryList, {
|
|
43
|
+
presenter: presenter
|
|
44
|
+
}));
|
|
45
|
+
});
|
|
46
|
+
const WebhookDeliveriesPage = ()=>{
|
|
47
|
+
const container = useContainer();
|
|
48
|
+
const scopedContainer = useMemo(()=>{
|
|
49
|
+
const child = container.createChildContainer();
|
|
50
|
+
ListWebhookDeliveriesFeature.register(child);
|
|
51
|
+
ListAvailableEventsFeature.register(child);
|
|
52
|
+
ResendWebhookDeliveryFeature.register(child);
|
|
53
|
+
WebhookDeliveriesPagePresenterFeature.register(child);
|
|
54
|
+
return child;
|
|
55
|
+
}, [
|
|
56
|
+
container
|
|
57
|
+
]);
|
|
58
|
+
return /*#__PURE__*/ react.createElement(DiContainerProvider, {
|
|
59
|
+
container: scopedContainer
|
|
60
|
+
}, /*#__PURE__*/ react.createElement(WebhookDeliveriesPage_WebhookDeliveriesPageInner, null));
|
|
61
|
+
};
|
|
62
|
+
export { WebhookDeliveriesPage };
|
|
63
|
+
|
|
64
|
+
//# sourceMappingURL=WebhookDeliveriesPage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"admin/presentation/WebhookDeliveriesPage/components/WebhookDeliveriesPage.js","sources":["../../../../../src/admin/presentation/WebhookDeliveriesPage/components/WebhookDeliveriesPage.tsx"],"sourcesContent":["import React, { useMemo, useEffect } from \"react\";\nimport { observer } from \"mobx-react-lite\";\nimport { DiContainerProvider, useContainer, useFeature } from \"@webiny/app\";\nimport { Button, Heading, Skeleton, Text } from \"@webiny/admin-ui\";\nimport { ListWebhookDeliveriesFeature } from \"~/admin/features/listWebhookDeliveries/feature.js\";\nimport { ListAvailableEventsFeature } from \"~/admin/features/listAvailableEvents/feature.js\";\nimport { ResendWebhookDeliveryFeature } from \"~/admin/features/resendWebhookDelivery/feature.js\";\nimport { WebhookDeliveriesPagePresenterFeature } from \"../feature.js\";\nimport { DeliveryFilters } from \"./DeliveryFilters.js\";\nimport { DeliveryList } from \"./DeliveryList.js\";\n\nconst WebhookDeliveriesPageInner = observer(function WebhookDeliveriesPageInner() {\n const { presenter } = useFeature(WebhookDeliveriesPagePresenterFeature);\n\n useEffect(() => {\n void presenter.init();\n }, [presenter]);\n\n const { vm } = presenter;\n\n if (vm.loading && vm.list.rows.length === 0) {\n return (\n <div className=\"flex flex-col gap-sm p-md\">\n <Skeleton className=\"h-10 w-full\" />\n <Skeleton className=\"h-10 w-full\" />\n <Skeleton className=\"h-10 w-full\" />\n </div>\n );\n }\n\n if (vm.error) {\n return (\n <div className=\"flex flex-col items-center gap-sm p-md\">\n <Text>{vm.error}</Text>\n <Button variant=\"secondary\" onClick={() => void presenter.init()}>\n Retry\n </Button>\n </div>\n );\n }\n\n return (\n <div className=\"flex flex-col h-main-content\">\n <div className=\"p-md pb-0 flex flex-col gap-md\">\n <Heading level={4}>Delivery Log</Heading>\n <DeliveryFilters presenter={presenter} />\n </div>\n <DeliveryList presenter={presenter} />\n </div>\n );\n});\n\nexport const WebhookDeliveriesPage = () => {\n const container = useContainer();\n\n const scopedContainer = useMemo(() => {\n const child = container.createChildContainer();\n ListWebhookDeliveriesFeature.register(child);\n ListAvailableEventsFeature.register(child);\n ResendWebhookDeliveryFeature.register(child);\n WebhookDeliveriesPagePresenterFeature.register(child);\n return child;\n }, [container]);\n\n return (\n <DiContainerProvider container={scopedContainer}>\n <WebhookDeliveriesPageInner />\n </DiContainerProvider>\n );\n};\n"],"names":["WebhookDeliveriesPageInner","observer","presenter","useFeature","WebhookDeliveriesPagePresenterFeature","useEffect","vm","Skeleton","Text","Button","Heading","DeliveryFilters","DeliveryList","WebhookDeliveriesPage","container","useContainer","scopedContainer","useMemo","child","ListWebhookDeliveriesFeature","ListAvailableEventsFeature","ResendWebhookDeliveryFeature","DiContainerProvider"],"mappings":";;;;;;;;;;AAWA,MAAMA,mDAA6BC,SAAS;IACxC,MAAM,EAAEC,SAAS,EAAE,GAAGC,WAAWC;IAEjCC,UAAU;QACDH,UAAU,IAAI;IACvB,GAAG;QAACA;KAAU;IAEd,MAAM,EAAEI,EAAE,EAAE,GAAGJ;IAEf,IAAII,GAAG,OAAO,IAAIA,AAAwB,MAAxBA,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EACjC,OAAO,WAAP,GACI,oBAAC;QAAI,WAAU;qBACX,oBAACC,UAAQA;QAAC,WAAU;sBACpB,oBAACA,UAAQA;QAAC,WAAU;sBACpB,oBAACA,UAAQA;QAAC,WAAU;;IAKhC,IAAID,GAAG,KAAK,EACR,OAAO,WAAP,GACI,oBAAC;QAAI,WAAU;qBACX,oBAACE,MAAIA,MAAEF,GAAG,KAAK,iBACf,oBAACG,QAAMA;QAAC,SAAQ;QAAY,SAAS,IAAM,KAAKP,UAAU,IAAI;OAAI;IAO9E,OAAO,WAAP,GACI,oBAAC;QAAI,WAAU;qBACX,oBAAC;QAAI,WAAU;qBACX,oBAACQ,SAAOA;QAAC,OAAO;OAAG,+BACnB,oBAACC,iBAAeA;QAAC,WAAWT;uBAEhC,oBAACU,cAAYA;QAAC,WAAWV;;AAGrC;AAEO,MAAMW,wBAAwB;IACjC,MAAMC,YAAYC;IAElB,MAAMC,kBAAkBC,QAAQ;QAC5B,MAAMC,QAAQJ,UAAU,oBAAoB;QAC5CK,6BAA6B,QAAQ,CAACD;QACtCE,2BAA2B,QAAQ,CAACF;QACpCG,6BAA6B,QAAQ,CAACH;QACtCd,sCAAsC,QAAQ,CAACc;QAC/C,OAAOA;IACX,GAAG;QAACJ;KAAU;IAEd,OAAO,WAAP,GACI,oBAACQ,qBAAmBA;QAAC,WAAWN;qBAC5B,oBAAChB,kDAA0BA;AAGvC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { createFeature } from "@webiny/feature/admin";
|
|
2
|
+
import { WebhookDeliveriesPagePresenter } from "./abstractions.js";
|
|
3
|
+
import { WebhookDeliveriesPagePresenter as external_WebhookDeliveriesPagePresenter_js_WebhookDeliveriesPagePresenter } from "./WebhookDeliveriesPagePresenter.js";
|
|
4
|
+
const WebhookDeliveriesPagePresenterFeature = createFeature({
|
|
5
|
+
name: "Webhooks/WebhookDeliveriesPagePresenter",
|
|
6
|
+
register (container) {
|
|
7
|
+
container.register(external_WebhookDeliveriesPagePresenter_js_WebhookDeliveriesPagePresenter).inSingletonScope();
|
|
8
|
+
},
|
|
9
|
+
resolve (container) {
|
|
10
|
+
return {
|
|
11
|
+
presenter: container.resolve(WebhookDeliveriesPagePresenter)
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
});
|
|
15
|
+
export { WebhookDeliveriesPagePresenterFeature };
|
|
16
|
+
|
|
17
|
+
//# sourceMappingURL=feature.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"admin/presentation/WebhookDeliveriesPage/feature.js","sources":["../../../../src/admin/presentation/WebhookDeliveriesPage/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/admin\";\nimport { WebhookDeliveriesPagePresenter as PresenterAbstraction } from \"./abstractions.js\";\nimport { WebhookDeliveriesPagePresenter } from \"./WebhookDeliveriesPagePresenter.js\";\n\nexport const WebhookDeliveriesPagePresenterFeature = createFeature({\n name: \"Webhooks/WebhookDeliveriesPagePresenter\",\n register(container) {\n container.register(WebhookDeliveriesPagePresenter).inSingletonScope();\n },\n resolve(container) {\n return { presenter: container.resolve(PresenterAbstraction) };\n }\n});\n"],"names":["WebhookDeliveriesPagePresenterFeature","createFeature","container","WebhookDeliveriesPagePresenter","PresenterAbstraction"],"mappings":";;;AAIO,MAAMA,wCAAwCC,cAAc;IAC/D,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC,2EAAgC,gBAAgB;IACvE;IACA,SAAQD,SAAS;QACb,OAAO;YAAE,WAAWA,UAAU,OAAO,CAACE;QAAsB;IAChE;AACJ"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { WebhookDeliveriesPagePresenterFeature } from "./feature.js";
|
|
2
|
+
export type { IWebhookDeliveriesPagePresenter } from "./abstractions.js";
|
|
3
|
+
export type { IWebhookDeliveriesPageViewModel } from "./abstractions.js";
|
|
4
|
+
export type { IDeliveryPageFilters } from "./abstractions.js";
|
|
5
|
+
export type { IDeliveryFilterOption } from "./abstractions.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { WebhookDeliveriesPagePresenterFeature } from "./feature.js";
|