This commit is contained in:
Dana Lee 2025-01-14 15:29:15 +01:00
parent e42d8157a0
commit eafc7dc945
No known key found for this signature in database
5 changed files with 18 additions and 3 deletions

View file

@ -22,6 +22,7 @@ export type FormTriggerData = {
validForm: boolean; validForm: boolean;
formTitle: string; formTitle: string;
formDescription?: string; formDescription?: string;
formDescriptionMetadata?: string;
formSubmittedHeader?: string; formSubmittedHeader?: string;
formSubmittedText?: string; formSubmittedText?: string;
redirectUrl?: string; redirectUrl?: string;

View file

@ -50,6 +50,7 @@ describe('FormTrigger', () => {
appendAttribution: false, appendAttribution: false,
buttonLabel: 'Submit', buttonLabel: 'Submit',
formDescription: 'Test Description', formDescription: 'Test Description',
formDescriptionMetadata: 'Test Description',
formFields: [ formFields: [
{ {
defaultValue: '', defaultValue: '',

View file

@ -7,7 +7,13 @@ import type {
MultiPartFormData, MultiPartFormData,
} from 'n8n-workflow'; } from 'n8n-workflow';
import { formWebhook, prepareFormData, prepareFormReturnItem, resolveRawData } from '../utils'; import {
formWebhook,
parseFormDescription,
prepareFormData,
prepareFormReturnItem,
resolveRawData,
} from '../utils';
describe('FormTrigger, formWebhook', () => { describe('FormTrigger, formWebhook', () => {
const executeFunctions = mock<IWebhookFunctions>(); const executeFunctions = mock<IWebhookFunctions>();
@ -58,6 +64,7 @@ describe('FormTrigger, formWebhook', () => {
appendAttribution: true, appendAttribution: true,
buttonLabel: 'Submit', buttonLabel: 'Submit',
formDescription: 'Test Description', formDescription: 'Test Description',
formDescriptionMetadata: 'Test Description',
formFields: [ formFields: [
{ {
defaultValue: '', defaultValue: '',
@ -135,6 +142,7 @@ describe('FormTrigger, formWebhook', () => {
appendAttribution: true, appendAttribution: true,
buttonLabel: 'Submit', buttonLabel: 'Submit',
formDescription: expected, formDescription: expected,
formDescriptionMetadata: parseFormDescription(expected),
formFields: [ formFields: [
{ {
defaultValue: '', defaultValue: '',
@ -247,6 +255,7 @@ describe('FormTrigger, prepareFormData', () => {
validForm: true, validForm: true,
formTitle: 'Test Form', formTitle: 'Test Form',
formDescription: 'This is a test form', formDescription: 'This is a test form',
formDescriptionMetadata: 'This is a test form',
formSubmittedText: 'Thank you for your submission', formSubmittedText: 'Thank you for your submission',
n8nWebsiteLink: n8nWebsiteLink:
'https://n8n.io/?utm_source=n8n-internal&utm_medium=form-trigger&utm_campaign=test-instance', 'https://n8n.io/?utm_source=n8n-internal&utm_medium=form-trigger&utm_campaign=test-instance',
@ -326,6 +335,7 @@ describe('FormTrigger, prepareFormData', () => {
validForm: true, validForm: true,
formTitle: 'Test Form', formTitle: 'Test Form',
formDescription: 'This is a test form', formDescription: 'This is a test form',
formDescriptionMetadata: 'This is a test form',
formSubmittedText: 'Your response has been recorded', formSubmittedText: 'Your response has been recorded',
n8nWebsiteLink: 'https://n8n.io/?utm_source=n8n-internal&utm_medium=form-trigger', n8nWebsiteLink: 'https://n8n.io/?utm_source=n8n-internal&utm_medium=form-trigger',
formFields: [ formFields: [

View file

@ -53,8 +53,8 @@ function sanitizeHtml(text: string) {
}); });
} }
function parseFormDescription(description: string) { export function parseFormDescription(description: string) {
return description.replace(/\\n/g, '\n').replace(/<br>/g, '\n'); return description.replace(/^\s*\n+|<\/?[^>]+(>|$)/g, '').slice(0, 150);
} }
export function prepareFormData({ export function prepareFormData({
@ -97,6 +97,7 @@ export function prepareFormData({
validForm, validForm,
formTitle, formTitle,
formDescription, formDescription,
formDescriptionMetadata: parseFormDescription(formDescription),
formSubmittedHeader, formSubmittedHeader,
formSubmittedText, formSubmittedText,
n8nWebsiteLink, n8nWebsiteLink,

View file

@ -240,6 +240,7 @@ describe('Send and Wait utils tests', () => {
validForm: true, validForm: true,
formTitle: '', formTitle: '',
formDescription: 'Test message', formDescription: 'Test message',
formDescriptionMetadata: 'Test message',
formSubmittedHeader: 'Got it, thanks', formSubmittedHeader: 'Got it, thanks',
formSubmittedText: 'This page can be closed now', formSubmittedText: 'This page can be closed now',
n8nWebsiteLink: 'https://n8n.io/?utm_source=n8n-internal&utm_medium=form-trigger', n8nWebsiteLink: 'https://n8n.io/?utm_source=n8n-internal&utm_medium=form-trigger',
@ -318,6 +319,7 @@ describe('Send and Wait utils tests', () => {
validForm: true, validForm: true,
formTitle: 'Test title', formTitle: 'Test title',
formDescription: 'Test description', formDescription: 'Test description',
formDescriptionMetadata: 'Test description',
formSubmittedHeader: 'Got it, thanks', formSubmittedHeader: 'Got it, thanks',
formSubmittedText: 'This page can be closed now', formSubmittedText: 'This page can be closed now',
n8nWebsiteLink: 'https://n8n.io/?utm_source=n8n-internal&utm_medium=form-trigger', n8nWebsiteLink: 'https://n8n.io/?utm_source=n8n-internal&utm_medium=form-trigger',