refactor: Webhooks (#12487)
Closes #12303 ### What’s Changed - Replace auto‐save with explicit Save / Cancel Webhook forms now use manual “Save” and “Cancel” buttons instead of the old debounced auto‐save/update. - Separate “New” and “Detail” routes Two dedicated paths `/settings/webhooks/new` for creation and /`settings/webhooks/:webhookId` for editing, making the UX clearer. - URL hint & normalization If a user omits the http(s):// scheme, we display a “Will be saved as https://…” hint and automatically default to HTTPS. - Centralized validation with Zod Introduced a `webhookFormSchema` for client‐side URL, operations, and secret validation. - Storybook coverage Added stories for both “New Webhook” and “Webhook Detail” - Unit tests Added tests for the new `useWebhookForm` hook
This commit is contained in:
@ -671,6 +671,26 @@ export const graphqlMocks = {
|
||||
});
|
||||
},
|
||||
),
|
||||
graphql.query<GraphQLQuery, { objectRecordId: string }>(
|
||||
'FindOneWebhook',
|
||||
({ variables: { objectRecordId } }) => {
|
||||
return HttpResponse.json({
|
||||
data: {
|
||||
webhook: {
|
||||
__typename: 'Webhook',
|
||||
id: objectRecordId,
|
||||
createdAt: '2021-08-27T12:00:00Z',
|
||||
updatedAt: '2021-08-27T12:00:00Z',
|
||||
deletedAt: null,
|
||||
targetUrl: 'https://example.com/webhook',
|
||||
description: 'A Sample Description',
|
||||
operations: ['*.created', '*.updated'],
|
||||
secret: 'sample-secret',
|
||||
},
|
||||
},
|
||||
});
|
||||
},
|
||||
),
|
||||
graphql.query('FindManyWorkflows', () => {
|
||||
return HttpResponse.json({
|
||||
data: workflowQueryResult,
|
||||
|
||||
Reference in New Issue
Block a user