ToolJet/server/src/modules/app/constants/module-info.ts
vjaris42 58ba6b8563
Enable Git Sync for Datasources, constants and dashboard (#15434)
* feat: Folder permission system

* fix(group-permissions): resolve custom group validation, folder edit check, and UI inconsistencie

* edit folder container && no folder in custom resource

* fix the ui for custom in empty state

* fix: coercion logic for folder permissions

* feat: enhance folder permissions handling in app components

* feat: add folder granular permissions handling in user apps permissions

* feat: implement granular folder permissions in ability guard and service

* feat: improve error handling for folder permissions with specific messages

* feat: enhance EnvironmentSelect component to handle disabled state and improve display logic

* chore: bump ee submodules

* add basic framework to support platform git

* feat: Update permission prop to isEditable in BaseManageGranularAccess component

* chore: bump ee server submodule

* fix: refine folder visibility logic based on user permissions

* feat: enhance MultiValue rendering and styling for "All environments" option

* fix:Uniqueness-of-data-source

* revert folder changes

* fix folder imports

* feat: allow app lazy loading

feat: import all apps of branches

* feat: implement folder ownership checks and enhance app permissions handling

* fix:ui changes

* feat: update WorkspaceGitSyncModal UI

* feat: enhance folder permissions handling for app ownership and actions

* chore: clarify folder creation and deletion permissions in workspace context

* fix: pull commit button & swtich branch visibility

* feat: import app from git repo

* fix: freezed state

* remove reference of activebranchId

* fix linting

* fix: update folder permission labels

* fixed folder permission cases

* fixed css class issue

* fix: datasource UI

* minor fix

* feat: streamline folder permissions handling by removing redundant checks and simplifying access logic

* refactor: made error message consistent

* fix:ui changes and PR fetching on master

* fix: datasource and snapshot creation

* fix: app rendering and stub loading

* fix: add missing permission message for folder deletion action

* refactor: consolidate forbidden messages for folder actions and maintain consistency

* fix: allow pull into current branch

* fix renaming of tags and reload on branch switch

* fix: allow branches import from git

* fix:push or tab removed

* feat: streamline permission handling and improve app visibility logic

* fix: remove default access denial message in AbilityGuard

* fixed all user page functionality falky case

* feat: add workspace-level PR fetch endpoint (returns all repo PRs without app filtering)

* fix: remove app_branch_table

* Fixed profile flaky case

* fixed granular access flaky case

* fix: allow branch creation from tags

* fix: update default branch creation logic to use provider config

* fix: dso and dsv operations on codebase

* fix: constants reloading and refetch org git details on data

* uniquness per branch

* removed comment

* fix: update app version handling and add is_stub column for branch-level tracking

* fix workspace branch backfilling for scoped branches

* added unique constraint - migration

* fix: update app version unique constraint to include branchId for branch-aware handling

* fix: update subproject commit reference in server/ee

* chore: revert package-lock.json

* chore: revert frontend/package-lock.json to main

* removed banner and changed migration

* minor fix

* fix: remove unused import and handle UUID parse error gracefully in AppsUtilService

* fix: update app stub checks to safely access app_versions

* refactor: revert folder operations

* fix: removed branch id logic

* fix: ds migration

* fix encrypted diff logic

* fix: update openCreateAppModal to handle workspace branch lock

* fix: subscriber filtering, freeze priority, meta hash optimization, and co_relation_id backfill

* feat: add script to generate app metadata from app.json files

* fix: meta script

fix: backfilling of co-realtion-ids

* refactor: streamline parameter formatting in workspace git sync adapter methods

* Improves data source handling for workspace git sync

Fixes workspace git sync to properly recognize data sources across branches by improving correlation ID handling and branch-aware data source version creation.

Uses strict equality comparison in deep equal utility to prevent type coercion issues.

Excludes credential_id from data source comparison to prevent unnecessary save button states.

Removes is_active filter from branch data source queries to include all versions for proper synchronization.

* refactor: update branch switching logic and improve error handling for data source creation

* fix: migration order

* 🚀 chore: update submodules to latest main after auto-merge (#15628)

Co-authored-by: gsmithun4 <3417097+gsmithun4@users.noreply.github.com>

* chore: update version to 3.21.8-beta across all components

* fix:import app from device

* fix:ui Edit&launch,folderCopy,branching dropdown in apps and ds

* fix:encrypted helper text on master

* fix: import from git flow

* logs cleanup

* fix:migration-datasource-uniqueness

* fix: app on pull

* chore: update server submodule hash

* fix: corelation-id generation and version naming

* fix: last versions deletion error

fix: no multiple version creation

* fix:ui and toast

* chore: update server submodule hash

* feat: add branch handling for app availability and improve error handling

* fix: update encrypted value handling in DynamicForm and improve workspace constant validation logic

* fix: improve formatting of help text in DynamicForm and enhance error message for adding constants on master branch

* fix: correct version creation and pull in default branch

* chore: update server submodule hash

fix: remove logs from other PR

* fix:data source uniquness at workspace level

* fix: update header component logic for path validation and improve version import handling

* chore: update server submodule to latest commit

* fixed folder modal changes

* fix:failed to create a query error inside apps

* feat: add branchId support for data source versioning in app import/export service

* fix: push & pull of tags and versions

* fix: update subproject commit reference in server/ee

* fix:removed gitSync logic from module rename

* fix:removed switchbranch modal & allowed renaming from masted module&workflow creation

* chore: Update server submodule hash

* fix: change stub button to edit

* refactor/git-sync-remove-modules-workflows

* fix:version name for module and workflo
w

* fix:templet app creation

* fix: add author details for branch

---------

Co-authored-by: gsmithun4 <gsmithun4@gmail.com>
Co-authored-by: Pratush <pratush@Pratushs-MBP.lan>
Co-authored-by: Shantanu Mane <maneshantanu.20@gmail.com>
Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
Co-authored-by: Yukti Goyal <yuktigoyal02@gmail.com>
Co-authored-by: Muhsin Shah <muhsinshah21@gmail.com>
Co-authored-by: Adish M <44204658+adishM98@users.noreply.github.com>
Co-authored-by: gsmithun4 <3417097+gsmithun4@users.noreply.github.com>
Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com>
2026-03-27 23:23:23 +05:30

105 lines
5.7 KiB
TypeScript

import { FEATURES as USER_FEATURES } from '@modules/users/constants/features';
import { FEATURES as ROOT_FEATURES } from '../constants/features';
import { FEATURES as GROUP_PERMISSIONS_FEATURES_CE } from '@modules/group-permissions/constants/features';
import { FEATURES_EE as GROUP_PERMISSIONS_FEATURES_EE } from '@modules/group-permissions/constants/features';
import { FEATURES as APP_FEATURES } from '@modules/apps/constants/features';
import { FEATURES as METADATA_FEATURES } from '@modules/meta/constants/feature';
import { FEATURES as FOLDER_FEATURES } from '@modules/folders/constants/features';
import { FEATURES as FOLDER_APPS_FEATURES } from '@modules/folder-apps/constants/feature';
import { FEATURES as CUSTOM_STYLES_FEATURES } from '@modules/custom-styles/constants/feature';
import { FEATURES as VERSION_FEATURES } from '@modules/versions/constants/features';
import { FEATURES as SMTP_FEATURES } from '@modules/smtp/constants/features';
import { FEATURES as GLOBAL_DATA_SOURCE_FEATURES } from '@modules/data-sources/constants/feature';
import { FEATURES as PROFILE_FEATURES } from '@modules/profile/constants/feature';
import { FEATURES as FILE_FEATURES } from '@modules/files/constants/feature';
import { FEATURES as DATA_QUERY_FEATURES } from '@modules/data-queries/constants/feature';
import { FEATURES as LOGIN_CONFIGS } from '@modules/login-configs/constants/feature';
import { FEATURES as CONFIGS_FEATURES } from '@modules/configs/constants/feature';
import { FEATURES as SESSION_FEATURES } from '@modules/session/constants/feature';
import { FEATURES as ONBOARDING_FEATURES } from '@modules/onboarding/constants/feature';
import { FEATURES as AUTH_FEATURES } from '@modules/auth/constants/feature';
import { FEATURES as ORGANIZATIONS_FEATURES } from '@modules/organizations/constants/feature';
import { FEATURES as ORGANIZATION_CONSTANT } from '@modules/organization-constants/constants/feature';
import { FEATURES as ORGANIZATION_PAYMENTS } from '@modules/organization-payments/constants/feature';
import { FEATURES as ORGANIZATION_USERS_FEATURES } from '@modules/organization-users/constants/feature';
import { FEATURES as APP_ENVIRONMENTS_FEATURES } from '@modules/app-environments/constants/feature';
import { FEATURES as LICENSING_FEATURES } from '@modules/licensing/constants/features';
import { FEATURES as WORKFLOW_FEATURES } from '@modules/workflows/constants/feature';
import { FEATURES as INSTANCE_SETTINGS_FEATURES } from '@modules/instance-settings/constants/features';
import { FEATURES as ORGANIZATION_THEMES_FEATURES } from '@modules/organization-themes/constants/feature';
import { FEATURES as PLUGINS_FEATURES } from '@modules/plugins/constants/features';
import { FEATURES as TOOLJET_DATABASE_FEATURES } from '@modules/tooljet-db/constants/features';
import { FEATURES as IMPORT_EXPORT_RESOURCES_FEATURES } from '@modules/import-export-resources/constants/feature';
import { FEATURES as TEMPLATES_FEATURES } from '@modules/templates/constants/features';
import { FEATURES as AI_FEATURES } from '@modules/ai/constants/feature';
import { FEATURES as AUDIT_LOGS_FEATURES } from '@modules/audit-logs/constants/features';
import { getTooljetEdition } from '@helpers/utils.helper';
import { TOOLJET_EDITIONS } from '.';
import { FEATURES as WHITE_LABELLING_FEATURES } from '@modules/white-labelling/constant/feature';
import { FEATURES as APP_PERMISSIONS_FEATURES } from '@modules/app-permissions/constants/features';
import { FEATURES as EXTERNAL_API_FEATURES } from '@modules/external-apis/constants/feature';
import { FEATURES as MODULE_FEATURES } from '@modules/modules/constants/feature';
import { FEATURES as APP_GIT_FEATURES } from '@modules/app-git/constants/feature';
import { FEATURES as GIT_SYNC_FEATURES } from '@modules/git-sync/constants/feature';
import { FEATURES as APP_HISTORY_FEATURES } from '@modules/app-history/constants/features';
import { FEATURES as CRM_FEATURES } from '@modules/CRM/constants/feature';
import { FEATURES as METRICS } from '@modules/metrices/constants/features';
import { FEATURES as SCIM_FEATURES } from '@modules/scim/constants/feature';
import { FEATURES as WORKSPACE_BRANCHES_FEATURES } from '@modules/workspace-branches/constants/feature';
import { FEATURES as CUSTOM_DOMAINS_FEATURES } from '@modules/custom-domains/constant/feature';
const tooljetEdition = getTooljetEdition();
const GROUP_PERMISSIONS_FEATURES =
tooljetEdition === TOOLJET_EDITIONS.EE || tooljetEdition === TOOLJET_EDITIONS.Cloud
? GROUP_PERMISSIONS_FEATURES_EE
: GROUP_PERMISSIONS_FEATURES_CE;
//every module should be here
export const MODULE_INFO: { [key: string]: any } = {
...ROOT_FEATURES,
...METRICS,
...USER_FEATURES,
...SESSION_FEATURES,
...GROUP_PERMISSIONS_FEATURES,
...APP_FEATURES,
...METADATA_FEATURES,
...FOLDER_FEATURES,
...FOLDER_APPS_FEATURES,
...CUSTOM_STYLES_FEATURES,
...VERSION_FEATURES,
...SMTP_FEATURES,
...GLOBAL_DATA_SOURCE_FEATURES,
...PROFILE_FEATURES,
...FILE_FEATURES,
...DATA_QUERY_FEATURES,
...LOGIN_CONFIGS,
...CONFIGS_FEATURES,
...ONBOARDING_FEATURES,
...AUTH_FEATURES,
...ORGANIZATIONS_FEATURES,
...ORGANIZATION_USERS_FEATURES,
...APP_ENVIRONMENTS_FEATURES,
...LICENSING_FEATURES,
...WORKFLOW_FEATURES,
...INSTANCE_SETTINGS_FEATURES,
...ORGANIZATION_THEMES_FEATURES,
...PLUGINS_FEATURES,
...TOOLJET_DATABASE_FEATURES,
...IMPORT_EXPORT_RESOURCES_FEATURES,
...TEMPLATES_FEATURES,
...ORGANIZATION_CONSTANT,
...ORGANIZATION_PAYMENTS,
...AI_FEATURES,
...WHITE_LABELLING_FEATURES,
...APP_PERMISSIONS_FEATURES,
...AUDIT_LOGS_FEATURES,
...EXTERNAL_API_FEATURES,
...MODULE_FEATURES,
...APP_GIT_FEATURES,
...GIT_SYNC_FEATURES,
...APP_HISTORY_FEATURES,
...CRM_FEATURES,
...SCIM_FEATURES,
...WORKSPACE_BRANCHES_FEATURES,
...CUSTOM_DOMAINS_FEATURES,
};