Skip to content

Conversation

@sapayth
Copy link
Member

@sapayth sapayth commented Dec 29, 2025

closes #1334

This PR makes the form builder's icon-related fields only appear when icons are enabled. When the "Show Icon" option is set to "No", the "Field Icon" and "Icon Position" fields now hide automatically, reducing clutter and improving the form building experience.

Summary by CodeRabbit

Release Notes

  • New Features

    • Added signature field support to the form builder
    • Integrated AI-powered form generation and live previews
    • Added n8n integration for workflow automation
    • Introduced One Time Payments and Post Form Templates functionality
    • Expanded premium integrations including social login and dynamic fields
  • Documentation

    • Updated minimum WordPress version requirement to 5.0
    • Enhanced feature documentation with AI capabilities and new integrations

✏️ Tip: You can customize this high-level summary in your review settings.

@coderabbitai
Copy link

coderabbitai bot commented Dec 29, 2025

Walkthrough

The pull request conditionally renders icon-selector and select field templates based on met_dependencies, adds signature_field to the form builder's frontend object, updates translation file metadata with shifted line references, and refreshes the readme with expanded AI-driven feature descriptions and changelog entries.

Changes

Cohort / File(s) Summary
Template Conditional Rendering
admin/form-builder/assets/js/components/field-icon_selector/template.php, admin/form-builder/assets/js/components/field-select/template.php, assets/js-templates/form-components.php
Added v-if="met_dependencies" to root container elements, gating panel rendering on dependency evaluation. All nested content and event handlers preserved. Changes affect UI visibility logic without modifying underlying component behavior.
Form Builder Configuration
includes/Admin/Forms/Admin_Form_Builder.php
Added signature_field to the array of single form field identifiers exposed to the frontend via wpuf_single_objects in the admin_enqueue_scripts method. Extends the set of fields available to the form builder's JavaScript layer.
Translation & Documentation
languages/wp-user-frontend.pot, readme.md
Updated POT creation timestamp and incremented line number references across Admin_Form_Builder.php and related files to reflect code shifts. Refreshed readme with expanded feature descriptions, AI-oriented integrations, premium module additions, changelog updates, and metadata adjustments.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

  • #1583: Both PRs edit Admin_Form_Builder::admin_enqueue_scripts to extend the field identifiers exposed to the frontend.
  • #1725: Both PRs implement dependency-driven field rendering in form builder templates through conditional display logic.

Suggested labels

needs: dev review

Poem

🐰 The templates dance with logic keen,
When met_dependencies are seen,
A signature field joins the fold,
New features bright, the story told,
The form builder hops along with glee! ✨

Pre-merge checks and finishing touches

❌ Failed checks (2 warnings)
Check name Status Explanation Resolution
Linked Issues check ⚠️ Warning The PR changes do not address the linked issue #1334's requirements: displaying required asterisk for password fields and placing the eye icon inside password input fields. The PR focuses on conditional icon selector rendering, but issue #1334 specifically requests password field UI improvements (asterisk display and internal eye icon placement). Verify if this is the correct linked issue or implement the actual required changes.
Out of Scope Changes check ⚠️ Warning Changes include unrelated updates to readme.md (versioning, features, AI branding) and POT file that are not aligned with the conditional icon rendering objective or issue #1334 requirements. Remove out-of-scope changes from readme.md and translation files, keeping only code changes related to conditional icon field rendering and password field improvements for issue #1334.
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately describes the main change: adding conditional rendering for field icon settings based on dependencies.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (1)
includes/Admin/Forms/Admin_Form_Builder.php (1)

124-147: Confirm signature_field should be enforced as single-instance and slug matches field type

Adding 'signature_field' to wpuf_single_form_field will prevent more than one signature field being added to a form. That looks reasonable, but it is a behavior change:

  • Confirm that design/UX really requires at most one signature field per form (no valid use cases for multiple signatures).
  • Double‑check that the slug 'signature_field' exactly matches the identifier used by the field definition (e.g., template, input_type, or name) so the uniqueness logic actually applies to the correct field.

If both are true, this change is good to go.

📜 Review details

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between b7d7e76 and 3eb0b50.

📒 Files selected for processing (6)
  • admin/form-builder/assets/js/components/field-icon_selector/template.php
  • admin/form-builder/assets/js/components/field-select/template.php
  • assets/js-templates/form-components.php
  • includes/Admin/Forms/Admin_Form_Builder.php
  • languages/wp-user-frontend.pot
  • readme.md
🧰 Additional context used
🪛 GitHub Actions: Inspections
admin/form-builder/assets/js/components/field-icon_selector/template.php

[error] 1-1: Overriding WordPress globals is prohibited. Found assignment to $post

🪛 LanguageTool
readme.md

[grammar] ~24-~24: Use a hyphen to join words.
Context: ...nt, and the AI generates a complete post submission form with smart fields, label...

(QB_NEW_EN_HYPHEN)


[grammar] ~30-~30: Use a hyphen to join words.
Context: ...s without any manual steps. One Time Payments Offer simple one...

(QB_NEW_EN_HYPHEN)


[grammar] ~218-~218: Use a hyphen to join words.
Context: ...mail marketing tool for newsletters, opt in forms, and audience growth. * [wePOS]...

(QB_NEW_EN_HYPHEN)


[grammar] ~219-~219: Use a hyphen to join words.
Context: ...ooCommerce point of sale solution for in store sales and real time inventory sync...

(QB_NEW_EN_HYPHEN)


[grammar] ~219-~219: Use a hyphen to join words.
Context: ...ale solution for in store sales and real time inventory sync. * [WP Project Manag...

(QB_NEW_EN_HYPHEN)


[grammar] ~221-~221: Use a hyphen to join words.
Context: ...Readme): Elementor enhancements with 500 plus templates, advanced widgets, Theme ...

(QB_NEW_EN_HYPHEN)


[grammar] ~342-~342: Use a hyphen to join words.
Context: ... Forms in Gutenberg Editor 15. Create AI Powered Post Form ## Changelog ## ### ...

(QB_NEW_EN_HYPHEN)


[grammar] ~527-~527: Use a hyphen to join words.
Context: ...AJAX image upload * Fix – Error on multi select form custom taxonomy * Fix – Fron...

(QB_NEW_EN_HYPHEN)

🪛 markdownlint-cli2 (0.18.1)
readme.md

3-3: Bare URL used

(MD034, no-bare-urls)


10-10: Bare URL used

(MD034, no-bare-urls)

🔇 Additional comments (7)
languages/wp-user-frontend.pot (1)

7-7: POT header and reference updates look consistent

The updated POT-Creation-Date and the adjusted source references for includes/Admin/Forms/Admin_Form_Builder.php (and related admin templates) are all consistent with the PHP line shifts. No msgids changed, so there’s no i18n or compatibility impact here.

Also applies to: 451-455, 498-507, 514-523, 1121-1125, 2915-2976

admin/form-builder/assets/js/components/field-icon_selector/template.php (2)

1-67: Note: Pipeline failure appears unrelated to this change.

The pipeline reports "Overriding WordPress globals is prohibited. Found assignment to $post", but no $post variable assignment is present in this template file. This error may be a false positive from the scanning tool or originate from a different context.


1-1: The met_dependencies implementation is properly defined and working correctly.

The computed property exists in admin/form-builder/assets/js/mixins/option-field.js and correctly evaluates field dependencies. It returns true when dependencies are met or absent, and false when any dependency fails validation. The conditional rendering in the template is correct.

admin/form-builder/assets/js/components/field-select/template.php (1)

1-1: LGTM! Consistent conditional rendering.

This change follows the same pattern as the icon selector template, conditionally rendering the select field panel based on met_dependencies. The implementation is consistent across components.

assets/js-templates/form-components.php (3)

295-295: LGTM! Consistent template implementation.

The conditional rendering for the icon selector template matches the component-level implementation. This ensures consistent behavior across the form builder.


631-631: LGTM! Template change is consistent.

The conditional rendering for the select field template matches the component-level implementation.


295-295: Clarify the relationship between PR description and linked issue.

The PR description states it "closes issue #1334", which requests:

  1. Display required asterisk for password fields
  2. Place eye icon inside password input field

However, this PR implements conditional display of icon-related settings in the form builder, which appears unrelated to the password field improvements described in #1334. Please verify that the correct issue is linked, or clarify how these changes address the password field requirements.

Also applies to: 631-631

@Rubaiyat-E-Mohammad
Copy link
Contributor

Enough spaces not added @sapayth vai
image

@sapayth
Copy link
Member Author

sapayth commented Dec 30, 2025

Enough spaces not added @sapayth vai image

those tweaks are mentioned in separate issue and fixed in this PR @Rubaiyat-E-Mohammad bhai

@Rubaiyat-E-Mohammad Rubaiyat-E-Mohammad added QA Approved This PR is approved by the QA team and removed needs: testing labels Dec 30, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

QA Approved This PR is approved by the QA team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants