From 1a6b9ed5b734927a29d78dafa6dc64c98008fef6 Mon Sep 17 00:00:00 2001 From: Mateusz Szczygiel Date: Wed, 21 Aug 2024 09:26:50 +0200 Subject: [PATCH 1/6] Make filtered message receiver always returning a message --- .../composables/topic/use-form-topic/types.ts | 3 +- .../topic/use-form-topic/useFormTopic.ts | 5 ++- hermes-console/src/dummy/topic-form.ts | 3 +- .../src/i18n/en-US/subscription-form.ts | 4 ++ hermes-console/src/i18n/en-US/topic-form.ts | 4 ++ .../subscription-form/SubscriptionForm.vue | 12 +++++- .../src/views/topic/topic-form/TopicForm.vue | 42 ++++++++++++++++--- hermes-management/build.gradle | 8 ++-- 8 files changed, 67 insertions(+), 14 deletions(-) diff --git a/hermes-console/src/composables/topic/use-form-topic/types.ts b/hermes-console/src/composables/topic/use-form-topic/types.ts index 57c27946ad..10b6cdb388 100644 --- a/hermes-console/src/composables/topic/use-form-topic/types.ts +++ b/hermes-console/src/composables/topic/use-form-topic/types.ts @@ -50,7 +50,8 @@ export interface FormValidators { ownerSource: FieldValidator[]; owner: FieldValidator[]; contentType: FieldValidator[]; - retentionTimeDuration: FieldValidator[]; + retentionTimeDurationHours: FieldValidator[]; + retentionTimeDurationDays: FieldValidator[]; maxMessageSize: FieldValidator[]; offlineRetentionTime: FieldValidator[]; ack: FieldValidator[]; diff --git a/hermes-console/src/composables/topic/use-form-topic/useFormTopic.ts b/hermes-console/src/composables/topic/use-form-topic/useFormTopic.ts index f5ac01b391..4490d20725 100644 --- a/hermes-console/src/composables/topic/use-form-topic/useFormTopic.ts +++ b/hermes-console/src/composables/topic/use-form-topic/useFormTopic.ts @@ -38,9 +38,10 @@ function formValidators(): FormValidators { ownerSource: [required()], owner: [required()], contentType: [required()], - retentionTimeDuration: [required(), min(0), max(7)], + retentionTimeDurationDays: [required(), min(1), max(7)], + retentionTimeDurationHours: [required(), min(1), max(24)], maxMessageSize: [required(), min(0)], - offlineRetentionTime: [required(), min(0)], + offlineRetentionTime: [required(), min(1)], ack: [required()], }; } diff --git a/hermes-console/src/dummy/topic-form.ts b/hermes-console/src/dummy/topic-form.ts index aeca54e7c9..379ac947be 100644 --- a/hermes-console/src/dummy/topic-form.ts +++ b/hermes-console/src/dummy/topic-form.ts @@ -43,7 +43,8 @@ export const dummyTopicFormValidator = { ownerSource: [required()], owner: [required()], contentType: [required()], - retentionTimeDuration: [required(), min(0), max(7)], + retentionTimeDurationDays: [required(), min(0), max(7)], + retentionTimeDurationHours: [required(), min(0), max(7)], maxMessageSize: [required(), min(0)], offlineRetentionTime: [required(), min(0)], ack: [required()], diff --git a/hermes-console/src/i18n/en-US/subscription-form.ts b/hermes-console/src/i18n/en-US/subscription-form.ts index 32dd4d3d5e..4fb6dcce83 100644 --- a/hermes-console/src/i18n/en-US/subscription-form.ts +++ b/hermes-console/src/i18n/en-US/subscription-form.ts @@ -118,6 +118,10 @@ const messages = { title: 'Warning: Tracking all messages enabled', text: 'Please chose this option only when necessary. Mainly this is for debugging problems with subscription. Remember to disable this mode after the problem is solved.', }, + adminForm: { + title: 'Warning: Admin form enabled.', + text: 'New fields in the form have been revealed (they are highlighted). The form will be submitted regardless of the validation of the fields.', + }, }, actions: { create: 'Create subscription', diff --git a/hermes-console/src/i18n/en-US/topic-form.ts b/hermes-console/src/i18n/en-US/topic-form.ts index a857db23fc..e521e483ce 100644 --- a/hermes-console/src/i18n/en-US/topic-form.ts +++ b/hermes-console/src/i18n/en-US/topic-form.ts @@ -56,6 +56,10 @@ const messages = { title: 'Warning: Tracking all messages enabled', text: 'Please chose this option only when necessary. Mainly this is for debugging problems with subscription. Remember to disable this mode after the problem is solved.', }, + adminForm: { + title: 'Warning: Admin form enabled.', + text: 'New fields in the form have been revealed (they are highlighted). The form will be submitted regardless of the validation of the fields.', + }, }, info: { avro: { diff --git a/hermes-console/src/views/subscription/subscription-form/SubscriptionForm.vue b/hermes-console/src/views/subscription/subscription-form/SubscriptionForm.vue index b13a5f342c..d2891a6b43 100644 --- a/hermes-console/src/views/subscription/subscription-form/SubscriptionForm.vue +++ b/hermes-console/src/views/subscription/subscription-form/SubscriptionForm.vue @@ -1,11 +1,13 @@