* init
* scheduler
* name and mail
* comma.
* feat: add otpauth dependency and update MFA cleanup logging
* route change
* chore: update version to 3.20.51-lts across all components
---------
Co-authored-by: gsmithun4 <gsmithun4@gmail.com>
* feat: migrate from @sentry/node to @sentry/nestjs for improved integration
- Updated package dependencies to replace @sentry/node with @sentry/nestjs.
- Implemented Sentry initialization in bootstrap helper.
- Integrated Sentry exception capturing in the global exception filter.
- Removed obsolete Sentry interceptor and service modules.
- Adjusted application module to utilize new Sentry module setup.
- Updated onboarding service to use uuid from 'uuid' package instead of @sentry/utils.
* refactor: remove module-from-string dependency and use dynamic import for plugin services
* feat: add esbuild dependency to package.json and package-lock.json
* refactor: update ts-node and tsconfig-paths versions, remove unused dependencies
* refactor: replace dynamic import with vm context for plugin execution
* refactor: simplify sandbox context by using global objects for plugin execution
* refactor: enhance sandbox context creation by using createContext for plugin execution
* chore: remove unnecessary dev dependencies from package-lock.json
feat: add TextEncoder and TextDecoder to PluginsServiceSelector for better encoding support
* refactor: enhance sandbox context by organizing Node.js and Web APIs
* refactor: enhance sandbox context by adding comprehensive global objects for plugin execution
* Implement feature X to enhance user experience and fix bug Y in module Z
* Refactor imports and remove unused appContext variable in main.ts
* Bump version to 3.20.39-lts across all components
* Implement SCIM module with user and group management features
* Add SCIM module with user and group management features
* init
* working
* extend
* feature key
* scim auth guard
* sus
* default org
* sus
* fix: replace body-parser with NestJS json parser for SCIM routes
---------
Co-authored-by: gsmithun4 <gsmithun4@gmail.com>
* refactor(workflows): migrate core modules from Temporal to BullMQ
Update main application modules to support BullMQ-based workflow scheduling:
- Remove Temporal worker bootstrap code from main.ts
- Migrate from @nestjs/bull to @nestjs/bullmq
- Add Bull Board dashboard at /jobs with basic auth
- Register BullMQ queues in WorkflowsModule
- Add IWorkflowScheduler interface for scheduler abstraction
- Create CE stubs for WorkflowSchedulerService and ScheduleBootstrapService
- Remove workflow dependencies from AppsModule (moved to WorkflowsModule)
- Add proper route exclusion for /jobs dashboard
- Support WORKER env var for conditional processor registration
This commit completes the migration from Temporal to BullMQ for workflow
scheduling, enabling simpler deployment and better horizontal scaling.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
* chore: remove unused Temporal imports and commented code
Clean up migration artifacts:
- Remove unused imports from main.ts (TOOLJET_EDITIONS, getImportPath, ITemporalService, getTooljetEdition)
- Remove commented TemporalService references from WorkflowsModule
- Remove temporal.service from getProviders path array
- Add missing newlines at EOF for IWorkflowScheduler.ts and schedule-bootstrap.service.ts
This cleanup prepares the codebase for complete Temporal code removal in a future commit.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
* build: add BullMQ and Bull Board dependencies
Add required packages for BullMQ-based workflow scheduling:
- @nestjs/bullmq: NestJS integration for BullMQ
- @bull-board/api, @bull-board/express, @bull-board/nestjs: Queue dashboard
- bullmq: Core BullMQ library
- express-basic-auth: Authentication for Bull Board dashboard
Note: @nestjs/bull is kept for backward compatibility during migration.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
* chore: remove Temporal service files from CE
Remove deprecated Temporal-based workflow implementation files:
- server/src/modules/workflows/interfaces/ITemporalService.ts
- server/src/modules/workflows/services/temporal.service.ts
These files are replaced by IWorkflowScheduler interface and BullMQ-based
WorkflowSchedulerService implementation.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
* feat: add comprehensive Redis configuration support for BullMQ
* refactor: remove Temporal setup and configuration from entrypoint scripts and Dockerfiles (#14294)
* refactor: remove Temporal setup and configuration from entrypoint scripts and Dockerfiles
* feat: integrate Redis support for BullMQ in preview environment
* remove worker execution logic from setup script
* Refactor: Centralise workflow execution through BullMQ (#14321)
* refactor: run all workflows through bullmq
* refactor: update imports
* chore: update subproject commit reference in server/ee
* feat: ablity to cancel workflow
* feat: implement workflow cancellation functionality with Redis support
* feat: add optional timeout parameter to requestCancellation method
* refactor: clean up formatting and add maintenance toggle event emission in AppsService
* feat: ability to cancel multiple inprogress executions
* feat: implement execution state management and display logic
* chore: update submodule commit reference
---------
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Adish M <44204658+adishM98@users.noreply.github.com>
* Add cypress test cases for enterprise user groups and permissions
* update constants
* update user groups test cases
* update spec
* update groups cases
* update lock.json
* update custom group cases
* update docker file
* update first user onboarding and platform commands
* add case for UI promote and release permission
- Updated `AbilityGuard` to utilize `TransactionLogger` for logging execution time and errors.
- Enhanced `ResponseInterceptor` to include transaction metadata in logs.
- Modified `QueryAuthGuard`, `ValidateQueryAppGuard`, and `ValidateQuerySourceGuard` to log completion times and transaction IDs.
- Introduced `TransactionLogger` service for structured logging with transaction context.
- Added transaction ID and route information to request context in `RequestContextMiddleware`.
- Updated `JwtStrategy` to log validation completion times.
- Refactored logging configuration in `AppModuleLoader` to support pretty printing in non-production environments.
- Removed console logs in favor of structured logging for better traceability.
- Introduced MetricsService to collect and expose application metrics using Prometheus.
- Added memory and CPU usage metrics, including RSS, heap total, heap used, and external memory.
- Implemented load average metrics for 1, 5, and 15-minute intervals.
- Updated existing modules to conditionally register controllers based on the main import flag.
- Enhanced module registration methods across various modules to support the new isMainImport parameter.
* feat: Add new gRPC v2 plugin
- Enhanced DataSourcesController to support invoking methods on data sources.
- Introduced InvokeDataSourceMethodDto for method invocation requests.
- Added WhitelistPluginGuard to restrict method invocation based on data source kind.
- Updated IDataSourcesController and IDataSourcesService interfaces to include invoke method functionality.
- Implemented invokeMethod in DataSourcesService to handle method calls for gRPC v2.
- Added method whitelisting for gRPC v2 in the service layer.
* refactor: invokeMethod to use method dispatch pattern
* fix: improve error handling in testConnection method
* Apply suggestion from @Copilot
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Apply suggestion from @Copilot
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Apply suggestion from @Copilot
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* refactor: update types and interface
* fix: remove unnecessary border styles for improved UI consistency
* refactor: simplify error handling
- Introduced a new SCSS file for styling the gRPC v2 query editor components.
- Styled request sections, server URL input, dropdown menus, and method buttons for better user experience.
refactor(grpcv2): enhance error handling and type safety
- Updated error handling in gRPC query service to use a new `toError` utility function for consistent error conversion.
- Improved type definitions for gRPC client and service methods to ensure better type safety.
- Refactored method existence validation and gRPC call execution to handle errors more gracefully.
fix(grpcv2): improve service discovery and proto file loading
- Enhanced service discovery logic to handle reflection and proto file clients more robustly.
- Added checks for valid service constructors and improved error messages for better debugging.
- Updated the `loadProtoFromRemoteUrl` function to handle HTTP errors more effectively.
chore(grpcv2): add utility functions for type checks
- Introduced utility functions `isRecord`, `hasProperty`, and `toError` for better type checking and error handling throughout the codebase.
* feat: add LegacyBanner component for gRPC legacy tag display
* fix: styling changes
* fix: correct text in LegacyBanner component
* feat: enhance GRPCv2 component with request handling and state management improvements
* refactor: update metadata handling in GRPCv2 component and service
* refactor: update GRPCv2 component to use raw_message instead of requestData
* fix: Styling issues and labels
* refactor: gRPC test connection checks for proto file and url
* fix: improve error handling in service discovery
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* feat(spanner): add Google Cloud Spanner plugin with initial implementation
- Developed core functionality in lib/index.ts, including methods for running queries and testing connections.
- Defined manifest.json for plugin configuration and required properties.
- Created operations.json to specify query options and parameters.
- Introduced types.ts for source and query options definitions.
- Updated plugins.json to include the new Google Cloud Spanner plugin.
* chore(server): add @google-cloud/spanner dependency for Spanner plugin
* fix(DynamicForm): unify buttonText and editorType props for marketplace plugins
* fix(spanner): standardize error handling in index.ts
* refactor(spanner): simplify source options by removing client_email and project_id
* fix(spanner): standardize label casing in manifest and operations JSON files
* refactor(spanner): update parameters label
* refactor(spanner): update buttonText prop for query params
* refactor(spanner): change dialect type from dropdown-component-flip to dropdown to move it upwards in the frontend
* feat(DynamicForm): add HintText component to display hints for form fields
* refactor(spanner): rename hint to helpText for consistency in DynamicForm and manifest/operations JSON files
* Revert "feat(DynamicForm): add HintText component to display hints for form fields"
This reverts commit 79b48284f1.
* fix(Spanner): improve error handling for private key JSON parsing
* refactor(Spanner): rename getPrivateKey to parsePrivateKey for clarity
* fix(Spanner): enhance error handling with QueryError for better clarity and consistency
* refactor(Spanner): standardize label casing for consistency in manifest and operations JSON files
* feat(Spanner): add query mode support for executing queries and update operations schema
* fix deps
* Modularisation changes for Build with AI feature
* New app loading UI for Build with AI feature & added animation for chat messages
* Fix Error using AI feature
* add missing services and logic
* fix app gen
* update submodules
* EE frontend submodule updated
* update submodules
* EE frontend submodule updated post sync
* Added Artifact Preview component to ee moddules list
* Updated ai slice code
* app gen changes
* Resolved fix with AI bugs
* Resolved AI Copilot bugs
* app gen changes and query fixes
* fix query generation bugs
* update copilot
* Resolved ChatMode dropdown & popover bug fix
* Resolved PR suggestions & PreviewBox component in CE edition
* Synced frontend/ee with main
* Synced server/ee with main branch
* Enhance submodule checkout process to handle branch existence and fallback to main (#13218)
* Enhance submodule checkout process to handle branch existence and fallback to main
* Improve submodule checkout process to handle branch validation and fallback to main
* chore: Comment out Node.js setup, dependency installation, and build steps in cloud frontend workflow
* refactor: Enhance submodule checkout process to include submodule name in logs
* Update submodule checkout process to use the correct submodule name extraction method
* fix: Update submodule checkout script to use correct submodule path variable
* Improve submodule checkout process to correctly handle branch names and fallback to main
* chore: Uncomment Node.js setup, dependency installation, and build steps in cloud frontend workflow
* fix: Update branch checkout logic to use correct syntax and improve fallback handling
* fix: Update git checkout command to use -B flag for branch creation
* fix: Improve submodule checkout process to explicitly fetch branch ref before checkout
* fix: Enhance submodule checkout process with improved branch validation and error handling
* fix: Improve branch checkout logic by enhancing fetch command and validating branch existence
* fix: Enhance manual Git checkout process with improved fetch and error handling
* fix: Restore Node.js setup, dependency installation, and Netlify deployment steps in workflow
* 🔄 chore: update submodules to latest main after auto-merge
* Took sync of fix/appbuilder-02 in frontend/ee
---------
Co-authored-by: Kartik Gupta <gupta.kartik18kg@gmail.com>
Co-authored-by: Adish M <44204658+adishM98@users.noreply.github.com>
Co-authored-by: adishM98 Bot <adish.madhu@gmail.com>
* tooljet database import schema validation file to be included in the build
* add missing dependency
---------
Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com>
* bump version
* Sample data source (#9501)
* Added sample data populating script
* added expand-collapse in add data soure menu
* Sample database
* Design changes
* Added CTA to buttons and added design changes
* Added code sanity fix for some services
* changed configration for create sampke db and code sanity fix
* Removed logs
* Added xlsx in dependency
* added migration for sample db
* Added loggin for testing
* Added await in migration
* Replace excel sheet with JSON files
* reverted package-lock file
* Fixed issues
* dependecy deletion
* Added schedular
* Added changes for bug fixes and typeorm query for creating sample db
* Removed color.scss file import
* Add logo in sample application
* add documentation link for sample db
* fixed migration issue for data queries creation
* removed sample db intergration
* bump version
* Remove .env file and code sanity
* deleted migration file
---------
Co-authored-by: Kritagya <kriks.iitk@.com>
Co-authored-by: Kritagya Kumar <kritagyakumar@192.168.1.6>
Co-authored-by: kriks7raptor <kritagya@raptorx.ai>
Co-authored-by: gsmithun4 <gsmithun4@gmail.com>
* Add data-cy for drag drop empty canvas card (#9513)
* Add sample db condition on all components (#9516)
* Add sample db condition on all components
* Changed empty state for container
* Condiiton on sample data source
---------
Co-authored-by: kriks7raptor <kritagya@raptorx.ai>
* Release fix: subpath (#9535)
* Add sample db condition on all components
* Changed empty state for container
* Condiiton on sample data source
* fixed subpath issue for workspace setting and folders
* Folder change handler in subpath
---------
Co-authored-by: kriks7raptor <kritagya@raptorx.ai>
* fixed version
* fixed version
* fixed version
* update server version
* Bump version to v2.39.0
---------
Co-authored-by: kriks7iitk <34170719+kriks7iitk@users.noreply.github.com>
Co-authored-by: Kritagya <kriks.iitk@.com>
Co-authored-by: Kritagya Kumar <kritagyakumar@192.168.1.6>
Co-authored-by: kriks7raptor <kritagya@raptorx.ai>
Co-authored-by: Ajith KV <ajith.jaban@gmail.com>
Co-authored-by: kriks7iitk <kriks.iitk@gmail.com>
Co-authored-by: Adish M <44204658+adishM98@users.noreply.github.com>
Co-authored-by: Muhsin Shah <muhsinshah21@gmail.com>
* add custom resolvers info and editable row selection info (#9057)
* fix system requirements icon
* add auth info for webhooks and fix casing
* add regex custom validation info (#9068)
* [docs]: Marketplace 1.7 updates (#9085)
* [docs] Amazon redshift plugin
* make minor improvements
* add and update docs for marketplace 1.7
* update order of plugins in overview to match sidebar
* create new version
---------
Co-authored-by: Shubhendra <withshubh@gmail.com>
* add the latest version in the versions.json file (#9094)
* [docs]: Update PDF component (#9088)
* update PDF component
* merged with develop and added changes to the new version
* update docs favicon: (#9118)
* [docs] SSO revamp (#9031)
* add method to set default language
* update image settings through custom css and update screenshots for getting started and tooljet concepts (#9158)
* fix read documentation button
* fix formatting for setup icons (#9172)
* fix sidebar link for aws lambda
* Update static media (#9175)
* updated the screenshots
* reduced the gif size
* reverted the package.json file
* edited the zoomed in images and replaced some gifs with screenshots
* removed one gif
* update static media
* update file names
* update toolbar
* fix file names
* fix: dynamodb img path
* update media for org management dashboard
* fix: casing and formatting
* update workspace constant media
* update media in workspace settings and github
* update github sso
* minor change to github sso docs
* minor fix
* update google sso
* change includeCurrentVersion flag to false
---------
Co-authored-by: Asjad Ahmed Khan <iitasjad2001@gmail.com>
Co-authored-by: Asjad Ahmed Khan <60435499+2001asjad@users.noreply.github.com>
Co-authored-by: Karan Rathod <karan.altcampus@gmail.com>
* Feature: Engagespot plugin (#9012)
* feat(plugins): added engagespot plugin
* feat(docs): added engagespot plugin docs
* chore(engagespot-plugin): revised copywritings
* Feature: Databricks data source (#9174)
* plugin-created
* Databricks integration
* icon, error handling
* removed unrelated changes from marketplace and frontend package-lock.json removed runAsync and maxRows timeouts pending
* timeout implementation
* socket timeout and error handling
* resolve comments
* resolve comments2
* solved render issue test connection improvements
* solved undefined error
* fix TJDB not null value fail for is operation (#9055)
* fix TJDB not null value fail for is operation
* handling not null and null case insenstive values
* Support for marketplace plugin deploy on render preview app (#9221)
* Fix for marketplace error on render preview app
* add marketplace build command
* Adding new workflow for building marketplace plugin
* removed render app creation
* [:docs] Add documentation for Databricks plugin (#9224)
* add docs for databricks
* update databricks docs
* update docs
* remove ref to clusters
* bump to v2.34.0
* Fixed data source cypress failure (#9227)
* updated spec with required text
* updated mongodb and import spec
* updated import spec
---------
Co-authored-by: Karan Rathod <karan.altcampus@gmail.com>
Co-authored-by: Adish M <44204658+adishM98@users.noreply.github.com>
Co-authored-by: Midhun G S <gsmithun4@gmail.com>
Co-authored-by: Shubhendra <withshubh@gmail.com>
Co-authored-by: Aman Regu <amanregu@gmail.com>
Co-authored-by: Asjad Ahmed Khan <iitasjad2001@gmail.com>
Co-authored-by: Asjad Ahmed Khan <60435499+2001asjad@users.noreply.github.com>
Co-authored-by: Jobin Jose <129726530+jobin-logidots@users.noreply.github.com>
Co-authored-by: Syed Mohammad Akhtar Rizvi <85864291+ShazanRizvi@users.noreply.github.com>
Co-authored-by: blank0537 <111295371+blank0537@users.noreply.github.com>
Co-authored-by: Mekhla Asopa <59684099+Mekhla-Asopa@users.noreply.github.com>
* Added Edit column functionality in ToolJet Database Table
* feat: null constraint support for create_table add_column edit_column
* fix: default data-type validation has been added
* completed column header revamp
* feat: added not null toggle in create new table drawer
* feat: on toggle not null constraint value will be persisted
* fix: loads label for not null toggle dynamically
* feat: add new column to tjdb null constraint support
* new datatype dropdown design implemented
* added new icon for delete column
* added delete icon for column
* added delete icon for column
* fix: when table name is empty create button will be disabled
* fix: datatype dropdown height fix
* fix: datatype drop down issue fix
* fix: datatype dropdown alignment fix
* fix: delete icon changed to new theme
* fix: delete icon changed to new one
* fix: create new column column name and datatype mandatory validation added
* fixed styling issues
* Added 2 space indentation for css
* inline css moved to css files as well as added 2 space indentation
* fix: createTable addColumn editColumn api payload structure change to incorporate constraint changes
* fix: error handling added for editColumn api
* added 2 space indentation
* fix: create table API payload structure changes
* added 2 space indentation and applied styles for dark mode as well
* disabled the existing column's dataType
* fix: create new column payload updated
* renamed columnIndex to columnSelection and fixed the plus column creator button position issue
* renamed columnIndex to columnSelection and added text visiblity for dropdown in dark and light mode
* moved the react-select's new styles to constants.js file as function
* react select's css moved to constants.js file
* fix: review comments has been fixed
* added edit column warning UI
* completed edit column new flow
* remove Please wait for ToolJet to update..this line from edit column warning message
* increased height for add column + button
* fix: create table will not accept empty values for mandatory fields like tablename column_name datatype
* fix: custom error message for tjdb add row operation
* new design implemented for creating a new row in ToolJet database
* added darkmode design as well for the create row disabled fields
* added hover effects for disabled fields
* added text color for disabled state
* added toast message for handling errors
* added some changes in edit row file
* added some changes in create row file
* added styles for the edit row fields according to new design
* added stylings for react select in edit row
* disabled create button
* disabled save button
* added null tag inside the input field
* add versioned transformations for tjdb import dto
* update view table query
* update tjdb forms for constraints changes
* added all operators list in constants file
* fix primary key check
* added sticky style for column and row creator
* added null tag inside the cell if the value is null
* resolved bugs in nullable fields
* added functionality for allowing empty string for datatype character only for edit row and create row
* added functionality for allowing empty string for datatype character only for edit row and create row
* removed console logs
* fixed bugs
* fixed bugs in editrow
* fix: create table datatype dropdown tick icon for respective datatype selected
* fix: default value is not updating while edit a column after change it to null constraint
* fix: create-row and edit-row boolean field toggle on default value selection color was missing
* fixed bugs
* wip sticky button
* added styles for sticky column creator and row creator
---------
Co-authored-by: Abd-Rahman-1999 <s.rahmanabd1999@gmail.com>
Co-authored-by: Ganesh Kumar <ganesh8056234@gmail.com>
* started working on node upgrade to 18.18.2
* testing ci
* updated ci node version
* updated action code
* deleted all package-lock.json files
* deleted and ovverrided some packages
* deleted and fixed server & frontend vulnerabilities
* updated firestore version
* fix: ws type issue
* fix: upgraded lerna version
* regenerated package-lock.json files again
* regenerated marketplace lock file
* updated node version in other ci and docker files
* update: lock file plugin side
* updated the npm version in docker & ci files
* removed unused imports from events file
* removed dependency-review action
* updated some packages
* tried to go with current node-module of jest. had to upgrade
* fix: deprecated function usage - ts-jest
* fix: server directory lint issues
* fixed login page issue after router-dom upgrade
* updated import/no-unresolved rule to ignore import errors of react-loading-skeleton, react-spring packages
* fix: cypress node version & package-lock issue
* regenerated cli package-lock.json
* fix: new webpack version might cause runtime issues (had issues with enterprise). lets use old version only
* fix: form-data docker issue
* removed comment