Skip to content

Conversation

@artemmufazalov
Copy link
Member

@artemmufazalov artemmufazalov commented Dec 18, 2025

Closes #2975

Stand with environments: https://nda.ya.ru/t/xM88_qV27Q9XJJ
Stand without environments: https://nda.ya.ru/t/BbdRxL5C7Q9XKo

Config example: https://nda.ya.ru/t/kBkE7rlj7Q9XfE

CI Results

Test Status: ❌ FAILED

📊 Full Report

Total Passed Failed Flaky Skipped
384 328 53 1 2
Test Changes Summary ⏭️2

⏭️ Skipped Tests (2)

  1. Scroll to row, get shareable link, navigate to URL and verify row is scrolled into view (tenant/diagnostics/tabs/queries.test.ts)
  2. Copy result button copies to clipboard (tenant/queryEditor/queryEditor.test.ts)

Bundle Size: 🔺

Current: 62.61 MB | Main: 62.59 MB
Diff: +0.02 MB (0.03%)

⚠️ Bundle size increased. Please review.

ℹ️ CI Information
  • Test recordings for failed tests are available in the full report.
  • Bundle size is measured for the entire 'dist' directory.
  • 📊 indicates links to detailed reports.
  • 🔺 indicates increase, 🔽 decrease, and ✅ no change in bundle size.
## Key Changes - **New HomePage component** with tabbed navigation between "All Clusters" and "My Databases" for viewer users - **Role-based UI** that shows only "My Databases" for regular users without cluster access - **Multi-environment support** with environment tabs and URL parameter persistence - **Enhanced TenantsTable** to support both cluster-specific and environment-specific database listings - **Updated breadcrumbs** to reflect new navigation hierarchy with home page support - **API integration** using new `getTenantsV2` endpoint with environment filtering

Issues Found

  • Multiple hardcoded i18n strings in TenantsTable.tsx including column headers, labels, and error messages (6 instances)
  • All hardcoded strings violate project i18n conventions and must be extracted to translation files

Confidence Score: 3/5

  • This PR requires i18n fixes before merging but core functionality is sound
  • The implementation follows React best practices with proper hooks usage, state management, and component architecture. However, there are 6 hardcoded user-facing strings in TenantsTable.tsx that violate the project's mandatory i18n rule. These must be fixed before merging as they affect localization support.
  • Pay close attention to src/containers/Tenants/TenantsTable.tsx - all hardcoded strings must be moved to i18n files before merging

Important Files Changed

Filename Overview
src/containers/HomePage/HomePage.tsx New home page component with role-based navigation between clusters and databases tabs, with environment switching support
src/containers/Tenants/TenantsTable.tsx Refactored tenants table to support both cluster and environment contexts, with multiple hardcoded i18n strings that need to be extracted
src/routes.ts Added home page route with optional activeTab parameter and helper functions for generating database/cluster paths
src/store/reducers/tenants/tenants.ts Updated getTenants query to support environmentName parameter for fetching databases by environment
src/containers/Header/breadcrumbs.tsx Enhanced breadcrumb generation logic to support home page with databases/clusters tabs and role-based display

Sequence Diagram

sequenceDiagram
    participant User
    participant HomePage
    participant useMetaEnvironments
    participant useDatabasesPageEnv
    participant TenantsTable
    participant tenantsApi
    participant MetaAPI

    User->>HomePage: Navigate to home
    HomePage->>useMetaEnvironments: Check environments capability
    
    alt Environments Available
        HomePage->>useMetaEnvironments: Fetch environments
        useMetaEnvironments->>MetaAPI: getMetaEnvironments()
        MetaAPI-->>useMetaEnvironments: Return environments list
        useMetaEnvironments-->>HomePage: environments data
        
        HomePage->>useDatabasesPageEnv: Get selected environment
        useDatabasesPageEnv-->>HomePage: databasesPageEnvironment
        
        alt Is Viewer User
            HomePage->>User: Show tabs (Clusters | Databases)
            User->>HomePage: Select "Databases" tab
        else Regular User
            HomePage->>User: Show "My Databases" title
        end
        
        HomePage->>TenantsTable: Render with environmentName
        TenantsTable->>tenantsApi: getTenantsV2({environmentName})
        tenantsApi->>MetaAPI: getTenantsV2({environmentName})
        MetaAPI-->>tenantsApi: Return tenant list
        tenantsApi-->>TenantsTable: Prepared tenant data
        TenantsTable->>User: Display database table
        
    else No Environments
        HomePage->>User: Show "Clusters" only
    end
Loading

Context used:

  • Rule from dashboard - All code comments should be in English. Russian comments should be translated to English or removed ... (source)

Greptile Summary

This PR adds a new home page with role-based navigation that adapts to user permissions and environment configurations. The implementation introduces tabbed navigation between "All Clusters" and "My Databases" for viewer users, while regular users see only "My Databases". The feature includes multi-environment support with environment tabs that persist selections via URL parameters and localStorage.

Key changes include:

  • New HomePage component with role-based UI rendering based on isViewerUser permission
  • Enhanced TenantsTable to support both cluster-specific and environment-specific database listings via new environmentName prop
  • Updated breadcrumb logic to reflect the new navigation hierarchy with home page support
  • New route helpers (getHomePagePath, getDatabasesPath, getClustersPath) with activeTab parameter
  • Integration with getTenantsV2 API endpoint for environment-filtered database listings
  • Custom hooks for managing environment selection and home page tab state

Critical Issue: TenantsTable.tsx contains 7 hardcoded user-facing strings that violate the project's mandatory i18n convention. These must be extracted to the i18n translation files before merging:

  • Line 146: "Database name" (search placeholder)
  • Line 153: "Databases" (entities count label)
  • Line 164: "Database" (column header)
  • Line 202: "Show shared" (button text)
  • Line 324: "No such tenants" (empty state message)
  • Lines 62, 64: "Unspecified", "Pending" (state labels)

The rest of the implementation follows React best practices with proper hook usage, state management, memoization, and component architecture.

Confidence Score: 3/5

  • This PR requires i18n fixes before merging but core functionality is sound
  • The implementation is architecturally solid with proper React patterns, but contains 7 hardcoded strings in TenantsTable.tsx that violate mandatory i18n requirements and must be fixed before merging
  • Pay close attention to src/containers/Tenants/TenantsTable.tsx - all 7 hardcoded strings must be moved to i18n files before merging

Important Files Changed

Filename Overview
src/containers/HomePage/HomePage.tsx New home page with role-based tabs and environment switching - implementation is solid
src/containers/Tenants/TenantsTable.tsx Refactored table with 7 hardcoded i18n strings that must be extracted before merging
src/routes.ts Added home page routes with activeTab parameter and helper functions
src/containers/Header/breadcrumbs.tsx Enhanced breadcrumb logic for home page with role-based display
src/store/reducers/tenants/tenants.ts Updated query to support environmentName parameter for getTenantsV2

Sequence Diagram

sequenceDiagram
    participant User
    participant HomePage
    participant useMetaEnvironments
    participant useDatabasesPageEnv
    participant TenantsTable
    participant tenantsApi
    participant MetaAPI

    User->>HomePage: Navigate to home
    HomePage->>useMetaEnvironments: Check environments capability
    
    alt Environments Available
        HomePage->>useMetaEnvironments: Fetch environments
        useMetaEnvironments->>MetaAPI: getMetaEnvironments()
        MetaAPI-->>useMetaEnvironments: Return environments list
        useMetaEnvironments-->>HomePage: environments data
        
        HomePage->>useDatabasesPageEnv: Get selected environment
        useDatabasesPageEnv-->>HomePage: databasesPageEnvironment
        
        alt Is Viewer User
            HomePage->>User: Show tabs (Clusters | Databases)
            User->>HomePage: Select "Databases" tab
        else Regular User
            HomePage->>User: Show "My Databases" title
        end
        
        HomePage->>TenantsTable: Render with environmentName
        TenantsTable->>tenantsApi: getTenantsV2({environmentName})
        tenantsApi->>MetaAPI: getTenantsV2({environmentName})
        MetaAPI-->>tenantsApi: Return tenant list
        tenantsApi-->>TenantsTable: Prepared tenant data
        TenantsTable->>User: Display database table
        
    else No Environments
        HomePage->>User: Show "Clusters" only
    end
Loading

@artemmufazalov
Copy link
Member Author

@greptile review

@artemmufazalov artemmufazalov marked this pull request as ready for review December 18, 2025 14:15
Copilot AI review requested due to automatic review settings December 18, 2025 14:15
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR adds a new databases page feature to the YDB Embedded UI, transforming the previous "clusters" page into a unified "home page" with two tabs: "All Clusters" and "My Databases". The databases page supports environment filtering when multiple environments are configured.

Key Changes:

  • Renamed "clusters" page to "home page" with tabbed navigation between clusters and databases views
  • Added environment filtering support for the databases page via new /meta/environments API endpoint
  • Enhanced tenant data model to include cluster information for cross-cluster database navigation

Reviewed changes

Copilot reviewed 32 out of 32 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
src/routes.ts Replaced clusters route with homePage route supporting activeTab parameter; added helper functions for navigation and Zod schema for tab validation
src/containers/HomePage/HomePage.tsx New home page component with tabbed interface for clusters/databases, environment selection, and conditional rendering based on user permissions
src/containers/HomePage/useDatabasesPageEnvironment.ts Custom hook managing environment selection state with query params, localStorage, and factory defaults
src/containers/HomePage/useHomePageTab.tsx Hook to extract active tab from route parameters
src/containers/HomePage/i18n/* Internationalization resources for home page UI strings
src/containers/Clusters/Clusters.tsx Refactored to remove page chrome (moved to HomePage), now accepts scrollContainerRef prop
src/containers/Tenants/TenantsTable.tsx Extracted reusable table component supporting both cluster-specific and cross-cluster views with environment filtering
src/containers/Tenants/TenantsClusterTab.tsx Wrapper component for cluster-scoped tenants view
src/containers/Header/Header.tsx Updated breadcrumb logic to support home page tabs and environment-aware navigation
src/containers/Header/breadcrumbs.tsx Refactored breadcrumb generation to handle home page tabs and databases page with environment context
src/store/reducers/tenants/tenants.ts Enhanced tenants query to accept environmentName parameter for filtering databases by environment
src/store/reducers/environments/* New RTK Query endpoint for fetching and filtering available environments
src/store/reducers/capabilities/hooks.ts Added useMetaEnvironmentsAvailable hook to check if environments feature is enabled
src/services/api/meta.ts Added getMetaEnvironments method and updated getTenantsV2 to support environment filtering
src/types/api/tenant.ts Added optional Cluster field to TTenant for cross-cluster database identification
src/types/api/environments.ts New type definitions for environments API response
src/types/api/capabilities.ts Added '/meta/environments' capability
src/uiFactory/types.ts Renamed clustersPageTitle to homePageTitle; added databasesEnvironmentsConfig for environment customization
src/utils/hooks/useMetaAuth.ts Renamed checkIsClustersPage to checkIsHomePage for clarity
src/containers/App/Content.tsx Updated routing to use HomePage with HomePageSlot instead of ClustersSlot
src/components/TenantNameWrapper/TenantNameWrapper.tsx Updated to pass cluster name in tenant path for proper navigation

@Raubzeug
Copy link
Contributor

In stand with envs when I switch to Development databases I see the next query in Network http://ui-dev-0.ydb.yandex.net:8780/ui/home/undefined/proxy/cluster/ydb_vla_dev02/meta/db_clusters?name=ydb_vla_dev02

Undefined seems to be unexpectable.

Copy link
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

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

29 files reviewed, 2 comments

Edit Code Review Agent Settings | Greptile

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 32 out of 32 changed files in this pull request and generated no new comments.

Copy link
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

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

Additional Comments (6)

  1. src/containers/Tenants/TenantsTable.tsx, line 146 (link)

    syntax: hardcoded user-facing string should use i18n

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

    Context Used: Rule from dashboard - All code comments should be in English. Russian comments should be translated to English or removed ... (source)

  2. src/containers/Tenants/TenantsTable.tsx, line 153 (link)

    syntax: hardcoded user-facing string should use i18n

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

    Context Used: Rule from dashboard - All code comments should be in English. Russian comments should be translated to English or removed ... (source)

  3. src/containers/Tenants/TenantsTable.tsx, line 164 (link)

    syntax: hardcoded column header should use i18n

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

    Context Used: Rule from dashboard - All code comments should be in English. Russian comments should be translated to English or removed ... (source)

  4. src/containers/Tenants/TenantsTable.tsx, line 177 (link)

    syntax: hardcoded column header should use i18n

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

    Context Used: Rule from dashboard - All code comments should be in English. Russian comments should be translated to English or removed ... (source)

  5. src/containers/Tenants/TenantsTable.tsx, line 201 (link)

    syntax: hardcoded button text should use i18n

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

    Context Used: Rule from dashboard - All code comments should be in English. Russian comments should be translated to English or removed ... (source)

  6. src/containers/Tenants/TenantsTable.tsx, line 323 (link)

    syntax: hardcoded error message should use i18n

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

    Context Used: Rule from dashboard - All code comments should be in English. Russian comments should be translated to English or removed ... (source)

29 files reviewed, 6 comments

Edit Code Review Agent Settings | Greptile

@artemmufazalov
Copy link
Member Author

In stand with envs when I switch to Development databases I see the next query in Network http://ui-dev-0.ydb.yandex.net:8780/ui/home/undefined/proxy/cluster/ydb_vla_dev02/meta/db_clusters?name=ydb_vla_dev02

Undefined seems to be unexpectable.

I don't know why this happens, it doesn't connected with my PR, I uploaded old version to host and there is still undefined in urls

Created a separate issue for this: #3247

Copy link
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

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

Additional Comments (8)

  1. src/containers/Tenants/TenantsTable.tsx, line 62 (link)

    logic: hardcoded string 'Unspecified' should be extracted to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  2. src/containers/Tenants/TenantsTable.tsx, line 64 (link)

    logic: hardcoded string 'Pending' should be extracted to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  3. src/containers/Tenants/TenantsTable.tsx, line 146 (link)

    logic: hardcoded placeholder string should be extracted to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  4. src/containers/Tenants/TenantsTable.tsx, line 153 (link)

    logic: hardcoded label string should be extracted to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  5. src/containers/Tenants/TenantsTable.tsx, line 164 (link)

    logic: hardcoded column header should be extracted to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  6. src/containers/Tenants/TenantsTable.tsx, line 178 (link)

    logic: hardcoded column header 'Name' should be extracted to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  7. src/containers/Tenants/TenantsTable.tsx, line 202 (link)

    logic: hardcoded button text should be extracted to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  8. src/containers/Tenants/TenantsTable.tsx, line 324 (link)

    logic: hardcoded error message should be extracted to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

29 files reviewed, 8 comments

Edit Code Review Agent Settings | Greptile

Copy link
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

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

Additional Comments (12)

  1. src/containers/Tenants/TenantsTable.tsx, line 61 (link)

    syntax: hardcoded i18n string - extract to translation file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  2. src/containers/Tenants/TenantsTable.tsx, line 63 (link)

    syntax: hardcoded i18n string - extract to translation file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  3. src/containers/Tenants/TenantsTable.tsx, line 145 (link)

    syntax: hardcoded i18n string - extract to translation file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  4. src/containers/Tenants/TenantsTable.tsx, line 152 (link)

    syntax: hardcoded i18n string - extract to translation file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  5. src/containers/Tenants/TenantsTable.tsx, line 163 (link)

    syntax: hardcoded i18n string - extract to translation file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  6. src/containers/Tenants/TenantsTable.tsx, line 177 (link)

    syntax: hardcoded i18n string - extract to translation file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  7. src/containers/Tenants/TenantsTable.tsx, line 201 (link)

    syntax: hardcoded i18n string - extract to translation file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  8. src/containers/Tenants/TenantsTable.tsx, line 249 (link)

    syntax: hardcoded i18n string - extract to translation file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  9. src/containers/Tenants/TenantsTable.tsx, line 275 (link)

    syntax: hardcoded i18n string - extract to translation file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  10. src/containers/Tenants/TenantsTable.tsx, line 284 (link)

    syntax: hardcoded i18n string - extract to translation file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  11. src/containers/Tenants/TenantsTable.tsx, line 293 (link)

    syntax: hardcoded i18n string - extract to translation file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  12. src/containers/Tenants/TenantsTable.tsx, line 324 (link)

    syntax: hardcoded i18n string - extract to translation file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

30 files reviewed, 12 comments

Edit Code Review Agent Settings | Greptile

Copy link
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

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

Additional Comments (10)

  1. src/containers/Tenants/TenantsTable.tsx, line 146 (link)

    syntax: hardcoded string must be extracted to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  2. src/containers/Tenants/TenantsTable.tsx, line 153 (link)

    syntax: hardcoded string must be extracted to i18n file

  3. src/containers/Tenants/TenantsTable.tsx, line 61-62 (link)

    syntax: hardcoded strings must be extracted to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  4. src/containers/Tenants/TenantsTable.tsx, line 164 (link)

    syntax: hardcoded column header must be extracted to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  5. src/containers/Tenants/TenantsTable.tsx, line 178 (link)

    syntax: hardcoded column header must be extracted to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  6. src/containers/Tenants/TenantsTable.tsx, line 202 (link)

    syntax: hardcoded button text must be extracted to i18n file

  7. src/containers/Tenants/TenantsTable.tsx, line 324 (link)

    syntax: hardcoded empty message must be extracted to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  8. src/containers/Tenants/TenantsTable.tsx, line 275-276 (link)

    syntax: hardcoded column headers must be extracted to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  9. src/containers/Tenants/TenantsTable.tsx, line 284-285 (link)

    syntax: hardcoded column headers must be extracted to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  10. src/containers/Tenants/TenantsTable.tsx, line 293-294 (link)

    syntax: hardcoded column header must be extracted to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

30 files reviewed, 10 comments

Edit Code Review Agent Settings | Greptile

const metaEnvironmentsAvailable = useMetaEnvironmentsAvailable();
const isViewerUser = useIsViewerUser();

const [savedHomePageTab, saveHomePageTab] = useSetting<string | undefined>(
Copy link
Contributor

Choose a reason for hiding this comment

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

please check this place carefully after rebase with Anton's PR with settings finish

Copy link
Member Author

Choose a reason for hiding this comment

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

Rebased, everything is fine

}

return (
<div>
Copy link
Contributor

Choose a reason for hiding this comment

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

if this wrapper is really needed please add comment, why

Copy link
Member Author

Choose a reason for hiding this comment

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

Added comment

Copy link
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

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

Additional Comments (7)

  1. src/containers/Tenants/TenantsTable.tsx, line 146 (link)

    logic: hardcoded string must be moved to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  2. src/containers/Tenants/TenantsTable.tsx, line 153 (link)

    logic: hardcoded string must be moved to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  3. src/containers/Tenants/TenantsTable.tsx, line 164 (link)

    logic: hardcoded column header must be moved to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  4. src/containers/Tenants/TenantsTable.tsx, line 178 (link)

    logic: hardcoded column header must be moved to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  5. src/containers/Tenants/TenantsTable.tsx, line 202 (link)

    logic: hardcoded button text must be moved to i18n file

  6. src/containers/Tenants/TenantsTable.tsx, line 324 (link)

    logic: hardcoded empty state message must be moved to i18n file

  7. src/containers/Tenants/TenantsTable.tsx, line 54-68 (link)

    logic: hardcoded state display strings ('Unspecified' and 'Pending') must be moved to i18n file for proper localization

32 files reviewed, 7 comments

Edit Code Review Agent Settings | Greptile

Copy link
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

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

Additional Comments (6)

  1. src/containers/Tenants/TenantsTable.tsx, line 146 (link)

    syntax: hardcoded string must be moved to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  2. src/containers/Tenants/TenantsTable.tsx, line 153 (link)

    syntax: hardcoded string must be moved to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  3. src/containers/Tenants/TenantsTable.tsx, line 164 (link)

    syntax: hardcoded string must be moved to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  4. src/containers/Tenants/TenantsTable.tsx, line 178 (link)

    syntax: hardcoded string must be moved to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  5. src/containers/Tenants/TenantsTable.tsx, line 202 (link)

    syntax: hardcoded string must be moved to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  6. src/containers/Tenants/TenantsTable.tsx, line 324 (link)

    syntax: hardcoded string must be moved to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

32 files reviewed, 6 comments

Edit Code Review Agent Settings | Greptile

Copy link
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

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

Additional Comments (7)

  1. src/containers/Tenants/TenantsTable.tsx, line 146 (link)

    logic: hardcoded string must be extracted to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  2. src/containers/Tenants/TenantsTable.tsx, line 153 (link)

    logic: hardcoded string must be extracted to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  3. src/containers/Tenants/TenantsTable.tsx, line 164 (link)

    logic: hardcoded string must be extracted to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  4. src/containers/Tenants/TenantsTable.tsx, line 202 (link)

    logic: hardcoded string must be extracted to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  5. src/containers/Tenants/TenantsTable.tsx, line 324 (link)

    logic: hardcoded string must be extracted to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  6. src/containers/Tenants/TenantsTable.tsx, line 62 (link)

    logic: hardcoded string must be extracted to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

  7. src/containers/Tenants/TenantsTable.tsx, line 64 (link)

    logic: hardcoded string must be extracted to i18n file

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

30 files reviewed, 7 comments

Edit Code Review Agent Settings | Greptile

@artemmufazalov artemmufazalov added this pull request to the merge queue Dec 19, 2025
Merged via the queue into main with commit 680a6d7 Dec 19, 2025
9 checks passed
@artemmufazalov artemmufazalov deleted the databases branch December 19, 2025 10:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Implement "My Databases" Page

3 participants