Closed madassdev closed 1 month ago
The pull request introduces multiple changes across various classes and components. Key modifications include updates to validation rules in the SubmissionConfirmationIntegration
class, enhancements to the SubmissionConfirmationMail
class for improved data handling, and the creation of a new MentionParser
class for parsing mentions. Additionally, new components such as MentionInput
, FormSubmissionFormatter
, and MentionDropdown
have been added to support mention functionality in the user interface. The configuration for HTMLPurifier has been updated, and several existing components have been modified to incorporate these new features.
File Path | Change Summary |
---|---|
api/app/Integrations/Handlers/SubmissionConfirmationIntegration.php |
Updated validation rules for confirmation_reply_to , enhanced formatData method for data purification. Added validateEmail method. |
api/app/Mail/Forms/SubmissionConfirmationMail.php |
Added $formattedData property, modified constructor and build method, introduced getSubject and getNotificationBody methods. |
api/app/Open/MentionParser.php |
Introduced MentionParser class with methods for parsing and replacing mentions. |
api/app/Service/HtmlPurifier/OpenFormsHtmlDefinition.php |
Added OpenFormsHtmlDefinition class with custom attributes for mentions. |
api/config/purify.php |
Updated configuration to use OpenFormsHtmlDefinition instead of Html5Definition . |
client/components/forms/MentionInput.vue |
Added MentionInput component for mention functionality with various exposed methods. |
client/components/forms/RichTextAreaInput.client.vue |
Updated to integrate mention functionality with new props and conditional rendering of MentionDropdown . |
client/components/forms/components/FormSubmissionFormatter.js |
Introduced FormSubmissionFormatter class for formatting submission data. |
client/components/forms/components/MentionDropdown.vue |
Added MentionDropdown component for selecting mentions. |
client/components/open/forms/OpenCompleteForm.vue |
Updated to manage submitted data and utilize TextBlock for rendering. |
client/components/open/forms/components/FirstSubmissionModal.vue |
Updated backdrop-blur property type from string to boolean. |
client/components/open/forms/components/form-components/FormSubmissionSettings.vue |
Added enable-mentions property for mention functionality in success page text. |
client/data/blocks_types.json |
Added is_input property for input types and marked non-input types accordingly. |
client/lib/quill/quillMentionExtension.js |
Introduced custom Quill editor extension for handling mentions with MentionBlot and MentionModule . |
api/tests/Unit/Service/Forms/MentionParserTest.php |
Added unit tests for the MentionParser class to validate parsing functionality. |
client/components/forms/TextBlock.vue |
Introduced a new component to render HTML content dynamically based on provided props. |
SubmissionConfirmationIntegration
class relate to validation rules, which may connect with the modifications made in the main PR regarding the SubmissionConfirmationIntegration
class's validation logic.formatData
method or validation logic.notification_subject
or notification_body
fields that are being purified in the main PR.SubmissionConfirmationIntegration
class or its methods.Hop, hop, hooray, what a sight to see,
Mentioning friends, as happy as can be!
With fields now refined and data so neat,
Our forms come alive, oh, what a treat!
So letβs celebrate this change with cheer,
For every mention brings us near! πβ¨
Closing in favor of https://github.com/JhumanJ/OpnForm/pull/595
Summary by CodeRabbit
Release Notes
New Features
MentionInput
,MentionDropdown
,FormSubmissionFormatter
,TextBlock
, andOpenFormsHtmlDefinition
.SubmissionConfirmationIntegration
for better user interface and input handling.Improvements
QuillyEditor
component, adding support for mentions.Bug Fixes