ToolJet/server
Kavin Venkatachalam fd909ab00a
feat: Form 2.0 (#12941)
* init: Added resetOnSubmit, validateOnSubmit properties and exposed formData value

* Added the generate form from dropdown menu on the inspector

* feat: Added generate form button and fields section

* Added the generate column popup UI

* feat: Added UI for form fields

* feat: Added the UI for new custom field

* chore: Added refresh data and custom schema UI

* feat: Added the util function to map the JSON to component

* chore: cleanup and fixed bugs on dropdown

* feat: Added fields property to the form config

* feat: save generated fields on form

* feat: generated child components from the JSON

* fix: bugs on generating component from JSON

* chore: added functionality for view properties and styles on field popover

* feat: Added local state for add new custom fields

* feat: Added logic to create component on submitting new custom field

* fix: bugfies on creating a custom fields

* feat: Handled grouping of data in the manage column modal

* feat: Handled deletion case of the fields

* fix: fixed bug on deleting the fields

* chore: Updated the form fields logic to store only the necessary values and fetch the remaining values from the component directly using componentId

* chore: updated logic to handle fx in mandatory and selected fields

* feat: Added functionality to update the component from form fields

* fix: bug on componentType typo

* chore: written logic to handle the componentType update

* feat: Added multiple updates including componentType change

* chore: Added few more input components

* chore: Moved the form fields property logic to new formComponentSlice

* fix: creating a custom field while dragging across the parent components

* chore: reverted the deletion logic a bit to properly fetch the parentID from the component

* fix: while moving the component with more than 1 form field, it is clearing the complete list

* fix: handle the case of moving component from canvas to form

* chore: Removed unwanted UI blocks and added logic to conditionally display data section when custom schema is turned off

* chore: cleaned up the Dropdownmenu component & added memo to avoid re-render

* feat: Added query support and updated logic to display the columns on the modal

* chore: cleanup & passed the correct columns to the  component

* chore: cleaned up the form status constant

* chore: wrapped functions in a

* chore: created a separate function to create components from form

* chore: cleaned up the code to use the same code for component creation

* chore: updated the logic for the form field component update

* feat: Added functionality for single field popover icons & moved the single field creation out of common function to simplify the field update

* fix: removed the deleted fields while refreshing the form

* fix: updated the logic for the refresh fields

* feat: Added logic to ignore the components to be deleted for regeration of form

* chore: moved the component list supported to a constant

* fix: Added a backfill logic for the fields property to handle without migration

* fix: added a correct key for custom field

* fix: Fixed issue on adding custom fields while regenrating the form

* fix: Fixed issues on generating form fields while refreshing the FORM

* chore: cleanedup the code

* chore: Fixed path and merged with main

* fix: avoided the multiple re-renders on FORM and fixed the state issue on data & formData

* fix: removed the child components from inspector & added a support for query even if it is an array to generate the form

* fix: fixed few bugs and design feedbacks

* fix: Added a logic to set the width of the dropdown menu same as dropdown trigger

* feat: updated the deprecated section for Form

* feat: Added a logic to run query on selecting the query on generate form from

* fix: changed the logic of selection handled in the manage column modal. The components will be created only if the column is selected.

* refactor: moved the manage fields from button to an icon

* fix: merged the field definition with the existing default data to show it on manage column popup

* feat: focused the codehinter when the rawJson is selected on the dropdown menu

* chore: cleanup

* feat: update formComponentSlice with latest changes

- Fixed getCurrentPageIndex usage in setComponentPropertyByComponentIds
- Enhanced component batch operations functionality
- Improved form field management logic

* Reverted the git changes reflected on the form PR

* Reverted the git changes reflected on the form PR

* Reverted the git changes reflected on the form PR

* fix: fixed the issues due to merge conflict

* feat: Removed componentMapping modal for rawJson. Added JsonSchema in the dropdown menu and moved the refresh button inside the modal footer for the queries

* fix: Added a loader in the column mapping & updated the styles

* chore: cleanup and moves to separate files

* chore: cleanup the components

* fix: modal was not poping up when I click a different query

* chore: cleanedup `ColumnMappingComponent`

* fix: fixed bugs on regenerating the forms, shown the loader while running the query, added support for multiple queries etc

* chore: removed unwanted props

* fix: fixed the undo/redo issues

* fix: Fixed the issue on custom fields not showing up on the columnMappingModal

* fix: bugfixes like duplicate field, maping popup stays on screen, visibility not working, form loader etc

* fix: Fixed the height of the textare and fixed showing the main popover on click of make mandatory button

* fix: Fixed the undo redo issue on deleting the form component

* fix: removed the undo/redo while saving the form data section

* chore: updated the default data for rawJSON

* fix: Fixed bugs on toggleswitch, scroll, placeholder etc

* fix: Added a condition to render the placeholder input

* chore: taken care bito feedback

* fix: fixed the modal closing issue

* fix: Fixed the gutter issue as the canvas height needs to be updated once the child components are generated

* chore: fixed design feedback

* fix: Added hover to the modal body instead of each section
2025-06-27 20:08:15 +05:30
..
data-migrations Merge branch 'main' into appbuilder/sprint-14 2025-06-27 19:51:37 +05:30
ee@3bd72a7575 Merge branch 'main' into appbuilder/sprint-14 2025-06-27 19:51:37 +05:30
lib Initial commit 2025-02-25 12:22:50 +05:30
migrations Merge branch 'main' into appbuilder/sprint-14 2025-06-27 19:51:37 +05:30
scripts fix for plugin scripts (#13055) 2025-06-20 14:30:52 +05:30
src feat: Form 2.0 (#12941) 2025-06-27 20:08:15 +05:30
templates Initial commit 2025-02-25 12:22:50 +05:30
test Prevent Stringify Query Resolved Value (#12788) 2025-06-25 18:40:13 +05:30
.eslintignore Fix linting errors across the app (#785) 2021-09-21 19:18:28 +05:30
.eslintrc.js Initial commit 2025-02-25 12:22:50 +05:30
.gitignore Initial commit for nestjs 2021-07-08 11:10:27 +05:30
.node-version Revise node and npm version (#408) 2021-07-19 12:38:44 +05:30
.npmrc specify node and npm version for server (#405) 2021-07-19 08:48:59 +05:30
.version chore: version bump 2025-06-20 15:44:56 +05:30
data-migration-config.ts Node upgrade 18->22 (#12836) 2025-06-17 13:01:46 +05:30
jest.config.ts Prevent Stringify Query Resolved Value (#12788) 2025-06-25 18:40:13 +05:30
nest-cli.json Revamp: user journey emails (#9223) 2024-04-01 18:11:42 +05:30
ormconfig.ts Node upgrade 18->22 (#12836) 2025-06-17 13:01:46 +05:30
package-lock.json Feature/workflow permission 2 (#12869) 2025-06-21 13:10:05 +05:30
package.json Adding Cloud plugin scripts (#12995) 2025-06-20 12:59:17 +05:30
README.md Initial commit for nestjs 2021-07-08 11:10:27 +05:30
tsconfig.build.json Fixed: tsconfig oauth build issue 2025-02-25 14:54:54 +05:30
tsconfig.json Initial commit 2025-02-25 12:22:50 +05:30

Nest Logo

A progressive Node.js framework for building efficient and scalable server-side applications.

NPM Version Package License NPM Downloads CircleCI Coverage Discord Backers on Open Collective Sponsors on Open Collective Support us

Description

Nest framework TypeScript starter repository.

Installation

$ npm install

Running the app

# development
$ npm run start

# watch mode
$ npm run start:dev

# production mode
$ npm run start:prod

Test

# unit tests
$ npm run test

# e2e tests
$ npm run test:e2e

# test coverage
$ npm run test:cov

Support

Nest is an MIT-licensed open source project. It can grow thanks to the sponsors and support by the amazing backers. If you'd like to join them, please read more here.

Stay in touch

License

Nest is MIT licensed.