-
Notifications
You must be signed in to change notification settings - Fork 567
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix: sprint DELETE role permission #8380
fix: sprint DELETE role permission #8380
Conversation
WalkthroughThe changes in this pull request introduce two new permissions, Changes
Poem
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this 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
🧹 Outside diff range and nitpick comments (24)
packages/ui-core/i18n/assets/i18n/zh.json (1)
Line range hint
1-2094
: Overall, the translations are comprehensive and well-structured.The JSON file contains a wide range of Chinese translations for various UI elements and messages. The structure is logical and easy to follow. Here are a few observations and suggestions:
- The translations cover multiple sections of the application, providing a comprehensive localization.
- The nested object structure helps organize the translations effectively.
Consider reviewing the naming conventions for keys throughout the file. Some keys use snake_case (e.g., "ACCEPT_INVITE") while others use camelCase (e.g., "emailTemplate"). Consistency in key naming would improve maintainability.
There are instances where English text is mixed with Chinese translations, such as in the "INTEGRATIONS" section. While this might be intentional for certain terms, it's worth reviewing to ensure it aligns with the localization strategy.
packages/ui-core/i18n/assets/i18n/ar.json (1)
Line range hint
1-2092
: Overall translation quality is good, with a few minor suggestions for improvement.The Arabic translations in this file are generally well-done and consistent. However, there are a few areas where improvements can be made:
In some places, the translations use formal Arabic (فصحى), while in others, they use more colloquial forms. It might be beneficial to standardize the language style throughout the file for consistency.
Some technical terms might benefit from additional context or explanation in Arabic, especially for users who may not be familiar with certain concepts.
There are a few instances where the translation could be more natural or idiomatic in Arabic. For example:
- Line 86: "COPIED" is translated as "Copied!" which is in English. Consider changing it to "تم النسخ!" for consistency.
- Line 1990: "CLICK_HERE" is translated as "Click Here" which is in English. Consider changing it to "انقر هنا" for consistency.
Some placeholders use English words (e.g., "name", "organization"). Consider translating these to Arabic as well for a fully localized experience.
There are a few untranslated strings, such as:
- Line 2092: "This page is coming soon!" should be translated to Arabic.
Overall, the translation quality is good, but addressing these minor issues would further improve the Arabic localization of the application.
packages/ui-core/i18n/assets/i18n/he.json (4)
Line range hint
1-2124
: Overall review of Hebrew translationsThe Hebrew translation file for the Gauzy application is extensive and covers a wide range of features. However, there are several areas that require attention:
- Missing translations: Some keys have empty string values, indicating missing translations.
- Untranslated content: Several sections still contain English text that needs to be translated into Hebrew.
- Inconsistent translation style: Some technical terms are translated while others are left in English.
- New feature translations: Recently added features like sprints and time tracking have new keys that need to be reviewed for completeness and accuracy.
It's recommended to:
- Fill in all missing translations (empty strings).
- Translate remaining English text into Hebrew where appropriate.
- Establish and follow consistent guidelines for translating technical terms.
- Review and complete translations for newly added features.
Line range hint
5-13
: Inconsistent translation in BUTTONS sectionIn the BUTTONS section, there's an inconsistency in the translation approach:
"BUTTONS": { "PAY": "Pay", "ADD_EXISTING_USER": "Add Existing User", "ADD_NEW": "Add New", "ADD": "הוסף", "CREATE": "צור", "REGISTER": "Register", "CHANGE_PASSWORD": "שנה סיסמה", "LOGIN": "Log In",Some buttons are translated (e.g., "ADD", "CREATE"), while others remain in English (e.g., "PAY", "REGISTER", "LOGIN"). This inconsistency should be addressed for a better user experience.
Consider translating all button labels into Hebrew for consistency.
Line range hint
1048-1060
: Missing translations in INCOME_PAGE sectionIn the INCOME_PAGE section, several entries have empty translations:
"INCOME_PAGE": { "INCOME": "הכנסה", "BONUS_HELP": "If set, company % fee will NOT be applied to the Bonus Income", "BONUS_TOOLTIP": "This is a direct bonus", "EMPLOYEES_GENERATE_INCOME": "Employees that generate income" }, "EXPENSES_PAGE": { "EXPENSES": "הוצאות", "MUTATION": { "CONTACT_IS_REQUIRED": "Contact is required!", "PLEASE_SELECT_A_CONTACT_OR_CHANGE_EXPENSE_TYPE": "Please select a Contact from the dropdown menu below or change Expense type setting.", "ASSIGN_TO": "Assign to",The entries with English text should be translated to Hebrew to maintain consistency and improve the user experience for Hebrew-speaking users.
Please provide Hebrew translations for the missing entries in the INCOME_PAGE and EXPENSES_PAGE sections.
Line range hint
1901-1920
: Incomplete translations in TIMER_TRACKER sectionThe TIMER_TRACKER section contains a mix of translated and untranslated content:
"TIMER_TRACKER": { "IS_BILLABLE": "ניתן לחיוב", "STOP_TIMER": "עצור טיימר", "START_TIMER": "התחל טיימר", "TIMER": "טיימר", "MANUAL": "ידני", "MANUAL_NOT_ALLOW": "אין אפשרות לשימוש בזמן ידני", "SELECT_PROJECT": "בחר פרויקט", "SELECT_TASK": "בחר משימה", "SELECT_CLIENT": "בחר לקוח", "DATE": "תאריך", "START_TIME": "שעת התחלה", "END_TIME": "שעת סיום", "DESCRIPTION": "תיאור", "ADD_TIME_SUCCESS": "הזמן נוסף בהצלחה", "VALIDATION": { "CLIENT_REQUIRED": "יש לבחור לקוח", "PROJECT_REQUIRED": "יש לבחור פרויקט", "TASK_REQUIRED": "יש לבחור משימה", "DESCRIPTION_REQUIRED": "יש למלא תיאור" },While many entries are correctly translated, some remain in English. It's important to complete the translations for all entries to provide a consistent experience for Hebrew users.
Please translate the remaining English entries in the TIMER_TRACKER section to Hebrew.
packages/ui-core/i18n/assets/i18n/bg.json (3)
Line range hint
4-14
: Consider adding more context to PR_OBJECTIVESThe PR_OBJECTIVES section provides a good summary of the pull request. However, it might be beneficial to add more specific details about the changes made to the Bulgarian translations, if any.
Line range hint
21-2130
: Overall translation quality is good, but some improvements possibleThe bulk of the file contains translations for various UI elements and seems to be of good quality. However, there are a few areas where improvements could be made:
- Consistency: Ensure consistent terminology is used throughout the file. For example, "Таймер" and "Timer" are both used in different places.
- Completeness: Some entries are left in English (e.g., "CHARTS" section). Consider translating these to Bulgarian for consistency.
- Placeholders: Make sure all placeholders (e.g., {{ name }}, {{ email }}) are correctly preserved in the translations.
Consider reviewing these aspects to further improve the quality and consistency of the translations.
Line range hint
1-2131
: Overall good quality, with room for minor improvementsThe Bulgarian translation file is comprehensive and generally well-maintained. The new additions for sprint-related permissions are correctly implemented. However, there are some areas for improvement:
- Consistency: Ensure consistent terminology usage throughout the file (e.g., standardize on either "Таймер" or "Timer").
- Completeness: Translate remaining English text to Bulgarian where appropriate.
- Review placeholder usage: Ensure all placeholders are correctly preserved in translations.
- Proofread: Conduct a final proofreading to catch any minor grammatical or spelling errors.
Addressing these points will further enhance the quality and user experience of the Bulgarian localization.
packages/ui-core/i18n/assets/i18n/nl.json (2)
Line range hint
1-500
: Minor inconsistencies in quotation marks and untranslated termsThe Dutch translation file is comprehensive and well-structured. However, there are a few minor issues that could be addressed:
Inconsistent use of quotation marks: Some keys use single quotes, while others use double quotes. For consistency, it's recommended to use double quotes throughout the file.
Untranslated terms: There are a few English words or phrases that remain untranslated. For example:
- Line 26: "PRESENT" could be translated to "Huidig" or "Aanwezig"
- Line 27: "TERMS_OF_SERVICE" could be "Servicevoorwaarden"
- Line 28: "PRIVACY_POLICY" could be "Privacybeleid"
Formatting: Consider adding line breaks between major sections to improve readability.
To improve consistency and completeness, consider addressing these minor issues throughout the file.
Line range hint
1001-1500
: Comprehensive translations with well-organized complex featuresThis section of the translation file showcases several strengths:
- Detailed translations for specific features and UI elements, providing clear information to users.
- Well-structured nested objects for complex features like email templates, maintaining a logical organization.
- Inclusion of detailed explanations and instructions, which enhances user understanding.
One minor suggestion for improvement:
Consider standardizing the capitalization of section headers. For example, "email_templates_page" could be changed to "EMAIL_TEMPLATES_PAGE" to match the style of other top-level keys.
The content is well-translated and organized. Consider implementing the suggested capitalization change for consistency across the file.
packages/ui-core/i18n/assets/i18n/pl.json (4)
Line range hint
1-2094
: Overall structure and formatting look good.The JSON file is well-structured with proper nesting and consistent formatting. The translations are organized into logical sections, making it easy to navigate and maintain.
However, there are a few minor points to consider:
Some keys use camelCase (e.g., "timeOff"), while others use snake_case (e.g., "time_off"). It might be beneficial to standardize the key naming convention for consistency.
There are a few instances of English text remaining, which should be translated to Polish. For example:
- Line 2061: "This page is coming soon!"
- Line 2048: "name@company-email.com"
Some placeholders use different formats. For example:
- "{{ name }}" vs "{{name}}" (without spaces)
- Some use "{{ variable }}", while others use "{ variable }"
It would be good to standardize these for consistency across the file.
Consider standardizing key naming conventions and placeholder formats throughout the file for better consistency and maintainability.
Line range hint
1456-1941
: TIMER_TRACKER section looks good, with a few minor suggestions.The "TIMER_TRACKER" section is well-organized and contains comprehensive translations for timer-related functionality. However, there are a few points to consider:
In the "DIALOG" subsection (lines 1764-1778), the "INACTIVITY_HANDLER" and "ERROR_HANDLER" keys are in English. Consider translating these to Polish for consistency.
In the "NATIVE_NOTIFICATION" subsection (lines 1784-1787), the placeholder for the app name uses double curly braces {{ name }}, while the version uses single curly braces { version }. It would be better to standardize this to double curly braces for consistency.
In the "SETUP" subsection, there are some very long lines (e.g., lines 1805, 1807). Consider breaking these into multiple lines for better readability and maintainability.
Consider addressing these minor inconsistencies to improve the overall quality of the translations in the TIMER_TRACKER section.
Line range hint
591-676
: INTEGRATIONS section is well-translated, with a few suggestions for improvement.The "INTEGRATIONS" section provides good translations for integration-related content. However, there are a few areas that could be improved:
In the "HUBSTAFF_PAGE" subsection (lines 601-617), the "GRANT_PERMISSION" and "ENTER_CLIENT_SECRET" keys contain translations that seem to be direct translations from English. Consider refining these to sound more natural in Polish.
In the "UPWORK_PAGE" subsection (lines 618-642), the "NEXT_STEP_INFO" translation (line 624) could be improved to sound more natural in Polish.
The "GAUZY_AI_PAGE" subsection (lines 643-646) is very brief compared to the other integration sections. Consider adding more detailed translations if there are more UI elements or messages related to Gauzy AI integration.
The "COMING_SOON" key (line 647) is not nested under any specific integration. Consider moving it to a more appropriate location or creating a general section for such messages.
Consider refining the translations in the INTEGRATIONS section to sound more natural in Polish and organizing the content more consistently.
Line range hint
2026-2030
: ONBOARDING section needs translation.The "ONBOARDING" section contains English text that has not been translated to Polish. This is inconsistent with the rest of the file and should be addressed.
Please translate the following keys in the ONBOARDING section to Polish:
- "FIRST_ORGANIZATION"
- "COMPLETE_TITLE"
- "COMPLETE_SUB_TITLE"
Ensuring these are properly translated will maintain consistency with the rest of the Polish translations in the file.
packages/ui-core/i18n/assets/i18n/pt.json (4)
Line range hint
4-14
: Consider adding more context to some translationsIn the "BUTTONS" section, some translations like "PAY" and "ADD" are very short. While they may be correct, consider adding more context to ensure they're used appropriately across the application.
For example:
"PAY": "Pagar (Pay)", "ADD": "Adicionar (Add)"This approach can help developers and translators understand the context better.
Line range hint
82-90
: Ensure consistency in formal/informal language useIn the "POP_UPS" section, there's a mix of formal and informal language. For example:
- "SELECT_ORGANIZATION" uses the formal "selecione"
- "ADD_INCOME" uses the informal "Adicionar"
Consider standardizing the language style throughout the application for consistency.
Line range hint
245-255
: Review translations for clarity and contextIn the "DASHBOARD_PAGE" section, some translations might benefit from additional context:
- "PROFIT_HISTORY.PROFIT_REPORT": "Relatório de Lucros" - Consider specifying if this is a general profit report or for a specific period.
- "CHARTS.DOUGHNUT": "Doughnut:" - This seems to be a direct translation. Consider using a more descriptive term in Portuguese for this chart type.
Adding more context to these translations can improve user understanding.
Line range hint
1594-1612
: Review and update email template namesIn the "EMAIL_TEMPLATES_PAGE.TEMPLATE_NAMES" section, some template names are in English while others are in Portuguese. Consider translating all template names to Portuguese for consistency. For example:
- "password" could be "redefinir-senha"
- "email-verification" could be "verificacao-email"
This will provide a more cohesive experience for Portuguese-speaking users and administrators.
packages/ui-core/i18n/assets/i18n/es.json (1)
Line range hint
1-2096
: Comprehensive and well-structured Spanish translationsThe Spanish translation file is well-organized and covers a wide range of UI elements and messages. The nested structure is logical and easy to follow, making it simple for developers to locate and update specific translations as needed.
For consistency, consider standardizing the capitalization of the first word in each translation. For example, in the "BUTTONS" section, some translations start with a capital letter while others don't. Standardizing this would improve overall consistency.
packages/ui-core/i18n/assets/i18n/fr.json (4)
Line range hint
1-500
: LGTM! Consider standardizing key naming conventions.The translations in this segment are comprehensive and well-structured. The JSON format is correct, and the nested structure is organized logically. However, for improved consistency, consider standardizing the key naming convention throughout the file. Currently, there's a mix of snake_case (e.g., "CUSTOM_SMTP") and camelCase (e.g., "companySite"). Choosing one style and applying it consistently could enhance maintainability.
Line range hint
501-1000
: LGTM! Consider separating HTML from translations.The translations in this segment are well-structured and use placeholders consistently. However, there are instances where HTML tags are included directly in the translation strings, such as:
"REGISTER_AS_EMPLOYEE_TOOLTIP": "Vous devez être employé afin de pouvoir suivre le temps, créer des dépenses partagées et utiliser d'autres fonctionnalités liées aux employés."It's generally better to separate content from presentation by keeping HTML out of translation strings. Consider using a markup system that can be parsed and rendered separately, or use placeholders for HTML elements. This approach improves maintainability and allows for easier styling changes without modifying translations.
Line range hint
1001-1500
: LGTM! Consider breaking down long translation strings.The translations in this segment are well-structured and use markdown-style formatting appropriately for emphasis. However, there are some very long translation strings, such as:
"LABEL_SERVER_API": "L'application de bureau Ever Gauzy API Server fournit toutes les fonctionnalités de la plateforme Gauzy disponibles directement sur votre ordinateur de bureau ou votre ordinateur portable. De plus, elle permet de suivre le temps de travail, d'enregistrer les activités et de recevoir des rappels/notifications de suivi."Consider breaking down long translations into smaller, more manageable pieces. This approach can improve maintainability and make it easier to reuse common phrases. It can also help prevent potential layout issues in the UI caused by unexpectedly long text.
Line range hint
1501-2095
: LGTM! Consider completing translations and removing development notes.The translations in this final segment are generally well-structured and complete. However, there are a few points to consider:
Some terms are left in English, such as "SERVER_API" and "SERVER_API_LOG". If these are intended to remain in English as technical terms, that's fine. Otherwise, consider translating them for consistency.
The file ends with a "COMING_SOON" message:
"COMING_SOON": "This page is coming soon!"This appears to be a development note rather than a translation. Consider either translating this message or removing it from the production translation file.
- Ensure that all necessary translations are present. If any are missing, add them to complete the French localization.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
📒 Files selected for processing (16)
- packages/contracts/src/role-permission.model.ts (2 hunks)
- packages/core/src/organization-sprint/organization-sprint.controller.ts (1 hunks)
- packages/core/src/role-permission/default-role-permissions.ts (2 hunks)
- packages/ui-core/i18n/assets/i18n/ar.json (1 hunks)
- packages/ui-core/i18n/assets/i18n/bg.json (1 hunks)
- packages/ui-core/i18n/assets/i18n/de.json (1 hunks)
- packages/ui-core/i18n/assets/i18n/en.json (1 hunks)
- packages/ui-core/i18n/assets/i18n/es.json (1 hunks)
- packages/ui-core/i18n/assets/i18n/fr.json (1 hunks)
- packages/ui-core/i18n/assets/i18n/he.json (1 hunks)
- packages/ui-core/i18n/assets/i18n/it.json (1 hunks)
- packages/ui-core/i18n/assets/i18n/nl.json (1 hunks)
- packages/ui-core/i18n/assets/i18n/pl.json (1 hunks)
- packages/ui-core/i18n/assets/i18n/pt.json (1 hunks)
- packages/ui-core/i18n/assets/i18n/ru.json (1 hunks)
- packages/ui-core/i18n/assets/i18n/zh.json (1 hunks)
✅ Files skipped from review due to trivial changes (1)
- packages/ui-core/i18n/assets/i18n/de.json
🧰 Additional context used
🔇 Additional comments (37)
packages/core/src/organization-sprint/organization-sprint.controller.ts (1)
Line range hint
126-130
: LGTM! Permissions updated correctly for sprint deletion.The change from
ORG_SPRINT_EDIT
toORG_SPRINT_DELETE
for the delete method's permission is appropriate and aligns with the PR objective. This update provides more granular access control for sprint operations.Please run the following script to verify the
PermissionsEnum
definition and usage:This script will help ensure that:
- The new permission is properly defined in
PermissionsEnum
.- The new permission is consistently used across the codebase.
- There are no remaining instances of using
ORG_SPRINT_EDIT
for deletion operations.packages/contracts/src/role-permission.model.ts (4)
126-126
: LGTM: New permission for sprint deletion added.The addition of
ORG_SPRINT_DELETE
to thePermissionsEnum
is appropriate and follows the existing pattern for CRUD operations on sprints. It's correctly placed and named consistently with other sprint-related permissions.
126-126
: Summary: Sprint delete permission added successfullyThe changes to add the
ORG_SPRINT_DELETE
permission are implemented correctly in this file. They follow the existing patterns and conventions. However, to ensure a complete and secure implementation:
- Verify the actual sprint deletion functionality in the relevant services and controllers.
- Confirm that permission checks are in place throughout the codebase.
- Consider implementing additional safeguards for the deletion process.
- Review the placement of this permission in the
GENERAL
group to ensure it aligns with the intended access control strategy.These steps will help maintain the integrity and security of the sprint management features in the application.
Also applies to: 305-305
126-126
: Verify sprint deletion implementation and consider safeguards.The addition of the
ORG_SPRINT_DELETE
permission completes the set of CRUD operations for sprints. To ensure a robust implementation:
- Verify that the actual sprint deletion functionality has been implemented in the relevant service(s) and controller(s).
- Ensure that permission checks for
ORG_SPRINT_DELETE
are in place before allowing sprint deletion.- Consider implementing safeguards for sprint deletion, such as:
- Confirmation dialogs in the UI
- Checks for associated data (e.g., tasks, time logs) before deletion
- Soft delete functionality if permanent deletion is too risky
To help verify the implementation, run the following script:
#!/bin/bash # Description: Check for sprint deletion implementation and permission checks # Search for sprint deletion method echo "Sprint deletion method:" rg --type typescript "delete.*sprint" -g '!**/role-permission.model.ts' # Search for permission checks echo "\nPermission checks for sprint deletion:" rg --type typescript "ORG_SPRINT_DELETE.*delete.*sprint" -g '!**/role-permission.model.ts'This script will help identify where sprint deletion is implemented and if permission checks are in place. Review the results to ensure proper implementation and security measures.
Also applies to: 305-305
305-305
: LGTM: Sprint delete permission added to general permissions.The addition of
PermissionsEnum.ORG_SPRINT_DELETE
to theGENERAL
group inPermissionGroups
is consistent with other sprint-related permissions. However, consider the following:Ensure that the ability to delete sprints is intended to be available to all roles. If this is too permissive, consider moving it to a more restricted permission group.
To verify the current usage of sprint-related permissions, run the following script:
This will help identify where and how sprint permissions are currently used, allowing you to confirm if the new delete permission is appropriately placed in the
GENERAL
group.✅ Verification successful
[/run_scripts]
[/run_scripts]
LGTM: Sprint delete permission added to general permissions.
The addition of
PermissionsEnum.ORG_SPRINT_DELETE
to theGENERAL
group is consistent with its usage in the codebase. However, ensure that granting delete permissions broadly aligns with your security policies and is intended for all applicable roles.🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Check the usage of sprint-related permissions across the codebase # Search for usage of sprint-related permissions echo "Usage of sprint-related permissions:" rg --type typescript "ORG_SPRINT_(VIEW|EDIT|DELETE)" -g '!**/role-permission.model.ts'Length of output: 384
Script:
#!/bin/bash # Description: Check the usage of sprint-related permissions across the codebase using file extensions # Search for usage of sprint-related permissions in .ts and .tsx files echo "Usage of sprint-related permissions:" rg "ORG_SPRINT_(VIEW|EDIT|DELETE)" -g "*.{ts,tsx}" --ignore-file role-permission.model.tsLength of output: 2091
Script:
#!/bin/bash # Description: Check the usage of sprint-related permissions across the codebase excluding role-permission.model.ts # Search for usage of sprint-related permissions in .ts and .tsx files, excluding role-permission.model.ts echo "Usage of sprint-related permissions (excluding role-permission.model.ts):" rg "ORG_SPRINT_(VIEW|EDIT|DELETE)" -g "*.{ts,tsx}" -g "!role-permission.model.ts"Length of output: 1579
packages/core/src/role-permission/default-role-permissions.ts (3)
98-98
: Approval: Addition of ORG_SPRINT_DELETE permission for SUPER_ADMIN roleThe addition of
PermissionsEnum.ORG_SPRINT_DELETE
to theSUPER_ADMIN
role's permissions is appropriate and well-placed. This change completes the set of sprint-related permissions for theSUPER_ADMIN
role, allowing full control over sprints, including deletion. It adheres to the principle of least privilege by explicitly defining the delete permission.
273-273
: Approval: Addition of ORG_SPRINT_DELETE permission for ADMIN roleThe addition of
PermissionsEnum.ORG_SPRINT_DELETE
to theADMIN
role's permissions is appropriate and consistent with the change made for theSUPER_ADMIN
role. This change ensures thatADMIN
users have full control over sprints, including the ability to delete them, which is likely necessary for effective project management. The placement of the new permission maintains the logical order of the permissions list.
98-98
: Consider the impact on other roles and potential need for ORG_SPRINT_DELETE permissionThe addition of
PermissionsEnum.ORG_SPRINT_DELETE
to bothSUPER_ADMIN
andADMIN
roles is consistent and maintains the existing permission hierarchy. However, it's worth considering whether any other roles, such as project managers or team leads, might need this permission in certain scenarios.Could you please clarify the rationale behind restricting this permission to only the highest-level roles? Are there any plans to extend this permission to other roles in the future, or is there a specific reason to keep sprint deletion capabilities limited to administrators?
To help assess the potential impact, let's check if there are any other roles or permissions related to sprint management:
Also applies to: 273-273
packages/ui-core/i18n/assets/i18n/he.json (2)
2118-2123
: Newly added translations for sprint-related featuresNew translations have been added for sprint-related features:
"ORG_SPRINT_EDIT": "יצירה/עריכת ספרינטים", "ORG_SPRINT_VIEW": "הצג ספרינטים", "ORG_SPRINT_DELETE": "מחק ספרינטים", "ORG_PROJECT_EDIT": "יצירה/עריכת פרויקטים", "ORG_CONTACT_EDIT": "יצירה/עריכת אנשי קשר", "ORG_CONTACT_VIEW": "צפייה באנשי קשר",These new translations appear to be correctly implemented in Hebrew. However, it's important to ensure that they are consistent with the overall translation style and terminology used throughout the application.
Line range hint
2066-2085
: Well-translated LOGIN_PAGE sectionThe LOGIN_PAGE section shows good progress in Hebrew translations:
"LOGIN_PAGE": { "TITLE": "Login", "SUB_TITLE": "Hello! Log in with your email.", "REMEMBER_ME_TITLE": "Remember me", "DO_NOT_HAVE_ACCOUNT_TITLE": "Don't have an account?", "FORGOT_PASSWORD_TITLE": "Forgot Password?", "OR_SIGN_IN_WITH": "או להתחבר עם", "FORGOT_EMAIL_TITLE": "שכחת כתובת דואר אלקטרוני?", "LOGIN_MAGIC": { "TITLE": "התחברות עם קוד קסם", "DESCRIPTION_TITLE": "נשלח לך קוד קסום להתחברות ללא סיסמה. או ניתן ", "OR_SIGN_IN_WITH_PASSWORD": "להתחבר באמצעות סיסמה במקום זאת.", "RESEND_CODE_TITLE": "שלח שוב קוד", "SUCCESS_SENT_CODE_TITLE": "קוד באורך 6 תווים נשלח אל: ", "SUCCESS_SENT_CODE_SUB_TITLE": "הקוד פג תוקף בקרוב, אז יש להזין אותו מהר.", "REQUEST_NEW_CODE_TITLE": "בקשת קוד חדש בעוד {{ countdown }} שניות." }, "LABELS": { "EMAIL": "Email address:", "PASSWORD": "Password:", "CODE": "קוד:" },This section shows a good mix of translated content, especially in the "LOGIN_MAGIC" subsection. However, there are still some entries that need to be translated, particularly in the "LABELS" subsection.
The "LOGIN_MAGIC" subsection is well-translated. To improve further, consider translating the remaining English entries in the "LABELS" subsection.
packages/ui-core/i18n/assets/i18n/en.json (2)
2203-2203
: New permission added for deleting sprints.A new permission "ORG_SPRINT_DELETE" has been added with the translation "Delete sprints". This aligns with the changes mentioned in the AI-generated summary about introducing a new permission for deleting organization sprints.
Line range hint
1-3556
: LGTM! File changes are minimal and well-integrated.The addition of the "ORG_SPRINT_DELETE" permission is the only change in this file. It's correctly placed within the existing permission structure and provides a clear English translation for the new functionality. The change is consistent with the file's purpose of providing UI translations.
packages/ui-core/i18n/assets/i18n/bg.json (3)
Line range hint
1-3
: LGTM: JSON structure is validThe opening of the JSON file is correct, with the main object properly defined.
Line range hint
15-20
: LGTM: AI-generated summary is informativeThe AI-generated summary provides a clear overview of the changes made in this pull request, specifically mentioning the addition of the new permission and its integration into various parts of the system.
2125-2130
: New translations added for sprint-related permissionsThe newly added translations for sprint-related permissions (ORG_SPRINT_EDIT, ORG_SPRINT_VIEW, ORG_SPRINT_DELETE) are correctly implemented and consistent with the existing style.
packages/ui-core/i18n/assets/i18n/ru.json (7)
2126-2127
: New permission added for sprint deletionA new permission "ORG_SPRINT_DELETE" has been added to the Russian translations. This is consistent with the addition of a new feature for deleting sprints.
Line range hint
2128-2130
: New permissions added for project and contact managementNew permissions for editing projects and contacts have been added:
- "ORG_PROJECT_EDIT": "Создание/Редактирование проектов"
- "ORG_CONTACT_EDIT": "Создать/редактировать контакты"
- "ORG_CONTACT_VIEW": "Контакты"
These additions are consistent with expanding user role capabilities.
Line range hint
2131-2134
: New permissions added for project module managementFour new permissions related to project module management have been added:
- CREATE, READ, UPDATE, and DELETE operations for project modules.
This is a good addition that allows for more granular control over project module access.
Line range hint
2135-2141
: New permissions added for team managementSeveral new permissions related to team management have been added, including:
- Adding, viewing, editing, and deleting teams
- Editing active tasks
- Viewing and editing team join requests
These additions provide more detailed control over team-related operations.
Line range hint
2142-2143
: New permissions added for contract editing and time trackingTwo new permissions have been added:
- "ORG_CONTRACT_EDIT": "Создать/редактировать контракты"
- "TIME_TRACKER": "Отслеживание времени доступа"
These additions are consistent with expanding functionality for contract management and time tracking.
Line range hint
2144-2159
: New permissions added for various operationsSeveral new permissions have been added for different operations, including:
- Adding existing users to an organization
- Managing integrations
- Viewing file storage, payment gateway, SMS gateway, and custom SMTP
- Viewing import/export functionality
- Job-related permissions (applying, editing, searching, viewing)
- Access to delete account and all data
- Tenant settings management
- Time-related permissions (deleting, modifying, manual time entry)
- Deleting screenshots
- Task settings
- Viewing member's last log
These additions provide more granular control over various aspects of the application.
Line range hint
1-2159
: Overall assessment of Russian localization updatesThe changes in this file significantly enhance the Russian localization of the application. New translations have been added for various features, permissions, and UI elements, providing a more comprehensive and user-friendly experience for Russian-speaking users. The additions are consistent in style and terminology with the existing translations.
Key improvements include:
- New permissions for sprint, project, and team management
- Enhanced granularity in user role capabilities
- Additional translations for job-related features
- New permissions for various system operations (e.g., integrations, file storage, time tracking)
These updates will contribute to a more fully-featured and accessible application for Russian users.
packages/ui-core/i18n/assets/i18n/nl.json (2)
Line range hint
501-1000
: Well-structured translations with appropriate use of variablesThis section of the translation file demonstrates good practices in software localization:
- Proper use of placeholder variables (e.g.,
{{ name }}
,{{ email }}
) allows for dynamic content insertion.- Technical terms are appropriately kept in English where necessary, which is a common practice in software localization.
- The translations are context-appropriate and seem to accurately convey the meaning of the original text.
The structure and content of this section are well-maintained and follow good localization practices.
Line range hint
1501-2094
: Comprehensive authentication translations and general UI elementsThis final section of the translation file demonstrates several positive aspects:
- Thorough translations for authentication-related pages (login, register, forgot password), including detailed validation messages.
- Good coverage of general UI elements, ensuring a consistent Dutch interface throughout the application.
- Appropriate use of technical terms and placeholders where necessary.
Overall, the entire translation file is well-structured, comprehensive, and provides a good Dutch localization for the application. The translations appear accurate and context-appropriate, with good attention to detail in conveying the intended meanings.
The authentication translations and general UI elements in this section, as well as the overall quality of the entire translation file, are commendable and should provide a good user experience for Dutch-speaking users.
packages/ui-core/i18n/assets/i18n/pl.json (1)
Line range hint
1-2094
: Overall, the Polish translations are of good quality, with a few areas for improvement.The JSON file contains comprehensive Polish translations for various UI elements and messages. The structure is well-organized, and most translations seem accurate and natural. However, there are a few areas that could be improved:
- Standardize key naming conventions (camelCase vs snake_case).
- Ensure all placeholders use a consistent format (preferably {{ variable }}).
- Translate remaining English text, especially in the ONBOARDING section.
- Refine some translations in the INTEGRATIONS section to sound more natural in Polish.
- Break up long lines of text for better readability and maintainability.
- Review and standardize punctuation usage, especially for sentences ending with colons or periods.
The overall quality of the translations is good, but addressing these points will further improve the consistency and readability of the Polish language file.
packages/ui-core/i18n/assets/i18n/it.json (6)
Line range hint
4-106
: Excellent additions and refinements to button labels!The changes in the "BUTTONS" section significantly improve the Italian translations. New button labels have been added, and existing ones have been refined for clarity and consistency. This will enhance the user experience for Italian-speaking users.
Line range hint
107-186
: Great improvements in "No Data" messages!The additions and modifications in the "SM_TABLE" section, particularly in the "NO_DATA" subsection, significantly enhance user feedback. These changes provide clear and specific messages in Italian for various scenarios where no data is available, improving the overall user experience.
Line range hint
187-516
: Comprehensive improvements to form-related translations!The changes in the "FORM" section greatly enhance the Italian translations for various form elements. New labels and placeholders have been added, and existing ones have been refined. The addition of new subsections like "RATES" and "CHECKBOXES" provides better structure and covers more form-related scenarios. These improvements will make forms more user-friendly and understandable for Italian users.
Line range hint
517-594
: Enhanced pop-up message translations!The changes in the "POP_UPS" section significantly improve the Italian translations for various pop-up messages and labels. New entries have been added, and existing ones have been refined, ensuring more accurate and context-specific text. These improvements will enhance the user experience by providing clear and understandable pop-up dialogs for Italian users.
Line range hint
595-726
: Expanded menu and settings options with improved translations!The changes in the "MENU" and "SETTINGS_MENU" sections greatly enhance the Italian translations for various menu items and settings options. New entries have been added, and existing ones have been refined, providing a more comprehensive and localized experience. The addition of new language options improves the accessibility of the application. These improvements will make navigation and configuration more intuitive for Italian users.
Line range hint
727-4094
: Comprehensive improvements and expansions to Italian localization!The changes throughout the rest of the file, including new sections like "WORKSPACES" and "NO_IMAGE", significantly enhance the Italian localization of the application. New translations have been added for additional functionality, and existing sections have been expanded and refined. These improvements provide a more comprehensive and polished Italian language support, covering a wide range of features and user interactions.
Some notable improvements include:
- Enhanced translations for various application features and components.
- Addition of new sections to cover expanded functionality.
- Refinements and corrections to existing translations for better clarity and accuracy.
These changes will greatly improve the user experience for Italian-speaking users, making the application more accessible and user-friendly.
packages/ui-core/i18n/assets/i18n/pt.json (3)
Line range hint
1-3
: LGTM: File structure is correctThe file starts with the correct JSON structure, opening with a curly brace and using the "pt" key for Portuguese translations.
Line range hint
1089-1099
: Verify placeholder usage in translationsIn the "TIMESHEET" section, ensure that all placeholders are correctly used. For example:
"OVERLAP_MESSAGE": "Esta entrada de tempo se sobrepõe a atividades em outros projetos/tarefas, que serão substituídas."This message might benefit from using placeholders for dynamic content, such as specific project or task names.
Line range hint
1-1848
: Overall assessment: Good translation file with room for improvementThe Portuguese translation file is comprehensive and generally well-structured. However, there are areas that could be improved:
- Consistency in formal/informal language use throughout the file.
- Adding more context to short or ambiguous translations.
- Ensuring all template names and section headers are consistently translated to Portuguese.
- Reviewing the use of placeholders in messages that might contain dynamic content.
- Double-checking for any untranslated strings or direct English usage.
Consider a thorough review by a native Portuguese speaker to refine the translations and ensure they accurately convey the intended meaning in all contexts of the application.
packages/ui-core/i18n/assets/i18n/es.json (3)
2096-2099
: New sprint management permissions addedThe addition of translations for sprint-related permissions ("ORG_SPRINT_EDIT", "ORG_SPRINT_VIEW", "ORG_SPRINT_DELETE") is a valuable update. These new entries will support sprint management functionality within the organization, allowing for proper localization of these important features.
Line range hint
2100-2124
: Comprehensive addition of organization-related permission translationsThis section introduces a wide array of new translations for organization-related permissions. These additions cover crucial actions such as managing projects, contacts, teams, and various organizational modules. The translations are consistent with the existing structure and naming conventions, ensuring a seamless integration with the current localization system.
These new translations will greatly enhance the ability to localize and manage fine-grained permissions within the application, improving the overall user experience for Spanish-speaking administrators and users.
Line range hint
2125-2847
: Overall high-quality and comprehensive Spanish translationsThe entire translation file, including this final section, demonstrates a high level of quality and comprehensiveness. It covers a wide range of application features, from time tracking and server logs to workspace management and user authentication. The consistent structure and attention to detail in the translations will contribute to a smooth and natural user experience for Spanish-speaking users across all areas of the application.
☁️ Nx Cloud ReportCI is running/has finished running commands for commit 6be23db. As they complete they will appear below. Click to see the status, the terminal output, and the build insights. 📂 See all runs for this CI Pipeline Execution
✅ Successfully ran 1 targetSent with 💌 from NxCloud. |
There was a problem hiding this 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
🧹 Outside diff range and nitpick comments (22)
packages/ui-core/i18n/assets/i18n/zh.json (3)
Line range hint
1-2095
: Well-structured and comprehensive translationsThe Chinese translations in this file are well-organized and cover a wide range of UI elements and messages for the application. The JSON structure is correct, and the use of nested objects for related translations is a good practice.
Consider standardizing the naming convention for keys throughout the file. For example, some keys use camelCase (e.g., "timeTrackingEnabled"), while others use snake_case (e.g., "CUSTOM_SMTP"). Consistency in naming conventions can improve maintainability.
Line range hint
1-2095
: Review needed for incomplete translations and language consistencyThere are several areas in the file that may require additional attention:
Some sections contain placeholder text or incomplete translations. For example, the "COMING_SOON" key at the end of the file has an English message.
There are instances of mixed language usage, where English words appear in Chinese sentences. While this might be intentional for technical terms, it's worth reviewing for consistency and clarity.
Consider reviewing these areas to ensure all translations are complete and the language usage is consistent throughout the file. This will improve the overall quality and user experience of the Chinese localization.
Line range hint
1-2095
: Comprehensive and natural translations with good coverageThe translations in this file cover a wide range of features, including dashboards, reports, settings, and various system messages. The use of natural and idiomatic Chinese for most content, while keeping some technical terms in English, is a good practice in software localization.
Consider reviewing longer translations, especially those used in UI elements like buttons or headers, to ensure they fit well in the interface. You might want to provide shorter alternatives for some longer phrases to accommodate different screen sizes and layouts.
packages/ui-core/i18n/assets/i18n/ar.json (1)
Line range hint
1-2093
: Consider adding translation for "COMING_SOON".The last key in the file, "COMING_SOON", has an English value. Consider translating this to Arabic for consistency.
You could update it as follows:
- "COMING_SOON": "This page is coming soon!" + "COMING_SOON": "هذه الصفحة قادمة قريبًا!"packages/ui-core/i18n/assets/i18n/he.json (1)
Line range hint
1-2118
: Overall translation update looks good with some improvements needed.The Hebrew translations for the Gauzy application have been significantly updated. Most of the changes appear to be accurate and improve the localization. However, there are a few areas that could use some refinement:
- Some English text remains untranslated, particularly in more technical sections.
- There are inconsistencies in the use of gender in some translations.
- Some translations might benefit from more natural phrasing in Hebrew.
Despite these minor issues, the overall quality of the translations has improved.
Consider reviewing the untranslated sections and improving the consistency of gender usage in the Hebrew translations.
packages/ui-core/i18n/assets/i18n/ru.json (2)
Line range hint
1-2127
: Overall translation quality and consistencyThe Russian translations in this file generally appear to be of good quality and consistent with the rest of the application. However, there are a few minor points to consider:
Some technical terms are transliterated rather than translated (e.g., "таймер" for "timer", "скриншот" for "screenshot"). This is common practice but ensure it's consistent throughout the application.
The use of formal "вы" (you) is maintained throughout, which is appropriate for a professional application.
Some phrases might benefit from more natural Russian expressions, but this would require a native speaker's input for fine-tuning.
Consider having a native Russian speaker review the translations for more natural expressions and consistency in technical term usage.
Line range hint
1-2127
: Potential improvements in formattingWhile the JSON structure is valid, there are some inconsistencies in the formatting that could be improved:
Inconsistent use of quotation marks. Some keys use single quotes, while others use double quotes. It's generally recommended to stick to one style, preferably double quotes for JSON.
Some lines are exceptionally long, which can make reading and editing difficult. Consider breaking long strings into multiple lines for improved readability.
Consider using a JSON formatter to standardize the quotation marks and improve overall readability by breaking long lines.
packages/ui-core/i18n/assets/i18n/nl.json (1)
Line range hint
1-2095
: Overall file review: Consistent and well-structured.The entire file appears to be well-structured and consistent in its formatting and translation style. The nested objects are properly organized, making it easy to navigate and maintain. No glaring issues or inconsistencies were found.
However, there are a couple of minor suggestions for improvement:
- Consider adding comments or separators to group related translations, which could improve readability for larger sections.
- Ensure that all placeholders (e.g., {{name}}, {{email}}) are consistently formatted throughout the file.
To improve readability and maintenance, consider adding comment separators for major sections of the translation file. For example:
{ // ===== User Management ===== "USER": { // ... user-related translations ... }, // ===== Project Management ===== "PROJECT": { // ... project-related translations ... } }This structure can help developers quickly locate specific sections when working with the translation file.
packages/ui-core/i18n/assets/i18n/pl.json (2)
Line range hint
1-2092
: Consider reviewing and updating some translations for clarity and consistency.While the overall quality of translations is good, there are a few areas that might benefit from review:
Some English terms are left untranslated, e.g., "Dashboard" (line 274). Consider translating these if appropriate for the Polish audience.
Some translations might be too literal and could be improved for natural Polish language use. For example, "EMPLOYEE_UPDATED" (line 1300) is translated as "Pracownik został zaktualizowany", which might sound unnatural. Consider a more idiomatic phrase.
Ensure consistency in formality level across translations. Some use formal "you" (Pan/Pani), while others use informal. Stick to one style throughout if possible.
Line range hint
1-2092
: Consider adding comments for complex or context-dependent translations.For translations that might be ambiguous or context-dependent, it would be helpful to add comments explaining the context or providing alternative translations. This can help maintain consistency across the application and assist future translators or developers.
For example, for keys like "TOASTR.TITLE.MAX_LIMIT_REACHED" (line 453), a comment explaining when this message is displayed could be beneficial.
packages/ui-core/i18n/assets/i18n/it.json (3)
Line range hint
3639-3642
: New time zone and time format options added.New translations have been added for time zone and time format options:
- "TIME_ZONE": "Time Zone"
- "TIME_FORMAT": "Time Format"
- "TIME_ZONE_OPTION": { ... }
These additions enhance the localization for time-related settings. However, it's worth noting that "Time Zone" and "Time Format" are left in English. Consider translating these to Italian for consistency.
Consider translating "Time Zone" and "Time Format" to Italian:
-"TIME_ZONE": "Time Zone", -"TIME_FORMAT": "Time Format", +"TIME_ZONE": "Fuso orario", +"TIME_FORMAT": "Formato orario",
Line range hint
3810-3811
: Placeholder text for upcoming feature.A new key has been added:
"COMING_SOON": "This page is coming soon!"This is a placeholder for a feature that's not yet implemented. However, it's in English instead of Italian.
Consider translating the "COMING_SOON" message to Italian:
-"COMING_SOON": "This page is coming soon!" +"COMING_SOON": "Questa pagina sarà disponibile a breve!"
Line range hint
1-3811
: Overall assessment of the translation file.The Italian translation file has been significantly expanded and updated. It covers a wide range of application features and provides localization for various UI elements. The translations generally appear to be accurate and consistent.
However, there are a few areas that could be improved:
- Some English text remains in the file, particularly for newer additions. These should be translated to Italian for full localization.
- There might be some inconsistencies in formatting or punctuation that could be standardized across the file.
- It would be beneficial to have a native Italian speaker review the translations for nuance and natural language use.
Consider having a native Italian speaker review the entire file for accuracy and natural language use. Additionally, search for any remaining English text and translate it to Italian to ensure complete localization.
packages/ui-core/i18n/assets/i18n/pt.json (6)
Line range hint
6-10
: Consider localizing technical terms consistentlySome technical terms like "CodeRabbit Inc." and "Knowledge cutoff" are left in English. While this is often acceptable, consider whether these should be translated or if a glossary of terms should be maintained for consistency across the application.
Line range hint
228-232
: Improve clarity of translationThe translation for "FROM" (line 230) is "Do you have any plans for tonight?", which seems incorrect. This should likely be translated to "De" or "A partir de" depending on the context.
Consider updating this translation to:
-"FROM": "Do you have any plans for tonight?", +"FROM": "De",
Line range hint
1048-1052
: Improve translation consistencyThe translation for "UPWORK_ORGANIZATION_ID" (line 1051) uses "Identificação" while the translation for "UPWORK_ID" (line 1053) uses "ID". Consider using consistent terminology.
Consider updating the translation to:
-"UPWORK_ORGANIZATION_ID": "Identificação da Organização Upwork", +"UPWORK_ORGANIZATION_ID": "ID da Organização Upwork",
Line range hint
3300-3304
: Improve clarity of translationThe translation for "TRACK_ON_SLEEP" (line 3301) is "Rastrear durante o sono", which might be confusing. Consider using a more technical term like "modo de suspensão" or "modo de espera" to better reflect the computer state.
Consider updating the translation to:
-"TRACK_ON_SLEEP": "Rastrear durante o sono", +"TRACK_ON_SLEEP": "Rastrear durante o modo de suspensão",
Line range hint
4106-4110
: Consider adjusting formality levelThe translation for "ALERT_TITLE" (line 4108) uses a very casual "Oh snap!" which is translated to "Oh, droga!". Consider using a more neutral expression for a wider audience.
Consider updating the translation to:
-"ALERT_TITLE": "Oh snap! - Oh, droga!", +"ALERT_TITLE": "Atenção!",
Line range hint
4528-4532
: Consider translating "COMING_SOON" messageThe last entry "COMING_SOON" (line 4531) is left in English. Consider translating this message for consistency with the rest of the file.
Consider updating the translation to:
-"COMING_SOON": "This page is coming soon!" +"COMING_SOON": "Esta página estará disponível em breve!"packages/ui-core/i18n/assets/i18n/fr.json (1)
Line range hint
1-500
: Overall structure and content look good, with a minor consistency note.The first segment of the French translation file is well-structured and contains appropriate translations for various UI elements and messages. The nested object structure is consistent and easy to follow.
There's a minor inconsistency in the naming convention for keys. Some keys use snake_case (e.g., "ACCEPT_INVITE"), while others use camelCase (e.g., "jobPostContent"). Consider standardizing the key naming convention throughout the file for better maintainability.
packages/ui-core/i18n/assets/i18n/de.json (2)
Line range hint
3315-3321
: Potential improvement in translationIn the "TIMESHEET" section, the following translations could be improved:
"TIME_ZONE": "Time Zone", "TIME_FORMAT": "Time Format", "TIME_ZONE_OPTION": { "UTC": "UTC", "ORG_TIMEZONE": "Org Timezone", "MY_TIMEZONE": "My Timezone" }These entries are currently in English. Consider translating them to German for consistency.
Line range hint
3701-3702
: Untranslated contentThe following lines at the end of the file are in English:
"COMING_SOON": "This page is coming soon!"Consider translating this to German for consistency across the application.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
📒 Files selected for processing (16)
- packages/contracts/src/role-permission.model.ts (2 hunks)
- packages/core/src/organization-sprint/organization-sprint.controller.ts (2 hunks)
- packages/core/src/role-permission/default-role-permissions.ts (2 hunks)
- packages/ui-core/i18n/assets/i18n/ar.json (1 hunks)
- packages/ui-core/i18n/assets/i18n/bg.json (1 hunks)
- packages/ui-core/i18n/assets/i18n/de.json (1 hunks)
- packages/ui-core/i18n/assets/i18n/en.json (1 hunks)
- packages/ui-core/i18n/assets/i18n/es.json (1 hunks)
- packages/ui-core/i18n/assets/i18n/fr.json (1 hunks)
- packages/ui-core/i18n/assets/i18n/he.json (1 hunks)
- packages/ui-core/i18n/assets/i18n/it.json (1 hunks)
- packages/ui-core/i18n/assets/i18n/nl.json (1 hunks)
- packages/ui-core/i18n/assets/i18n/pl.json (1 hunks)
- packages/ui-core/i18n/assets/i18n/pt.json (1 hunks)
- packages/ui-core/i18n/assets/i18n/ru.json (1 hunks)
- packages/ui-core/i18n/assets/i18n/zh.json (1 hunks)
🚧 Files skipped from review as they are similar to previous changes (4)
- packages/contracts/src/role-permission.model.ts
- packages/core/src/organization-sprint/organization-sprint.controller.ts
- packages/core/src/role-permission/default-role-permissions.ts
- packages/ui-core/i18n/assets/i18n/bg.json
🧰 Additional context used
🔇 Additional comments (32)
packages/ui-core/i18n/assets/i18n/zh.json (1)
Line range hint
1-2095
: Overall high-quality Chinese translations with minor improvement opportunitiesIn conclusion, this Chinese translation file is of high quality, demonstrating a comprehensive and well-structured approach to localizing the application. The translations are generally natural and idiomatic, with good coverage across various features and UI elements.
While no major issues were found, there are opportunities for minor improvements:
- Standardize naming conventions for keys throughout the file.
- Complete any remaining placeholder or incomplete translations.
- Review mixed language usage for consistency.
- Consider providing shorter alternatives for longer phrases used in UI elements.
Addressing these points will further enhance the maintainability of the localization and improve the overall user experience for Chinese-speaking users.
packages/ui-core/i18n/assets/i18n/ar.json (5)
Line range hint
1-2090
: Overall translation quality and consistency is good.The Arabic translations in this file appear to be comprehensive and consistent in style. The JSON structure is well-formatted and follows proper nesting conventions.
2090-2093
: New permissions added successfully.The following new permissions have been correctly added to the file:
- "ORG_SPRINT_DELETE": "حذف السبرينتات"
- "ORG_SPRINT_ADD": "إضافة سبرينت"
These additions align with the changes mentioned in the AI-generated summary.
2090-2091
: Permission updated correctly.The permission "ORG_SPRINT_EDIT" has been updated to "تعديل السبرينت" (previously "إنشاء/تعديل السبرينت"). This change aligns with the summary and improves clarity.
2092-2093
: Permission updated correctly.The permission "ORG_SPRINT_VIEW" has been updated to "عرض السبرينت" (previously "عرض السبرنت"). This change corrects a typo in the Arabic word for "sprint".
Line range hint
1-2093
: Arabic translations updated successfully with minor suggestion for improvement.The file has been successfully updated with new and modified permissions as described in the AI-generated summary. The overall translation quality is good, and the JSON structure is well-maintained. Consider translating the "COMING_SOON" key to Arabic for full consistency.
packages/ui-core/i18n/assets/i18n/he.json (2)
2118-2124
: New permissions added for sprint management.The following new permissions have been added:
ORG_SPRINT_EDIT
: "עריכת ספרינט"ORG_SPRINT_VIEW
: "צפייה בספרינט"ORG_SPRINT_DELETE
: "מחיקת ספרינטים"ORG_SPRINT_ADD
: "הוספת ספרינט"ORG_PROJECT_EDIT
: "יצירה/עריכת פרויקטים"ORG_CONTACT_EDIT
: "יצירה/עריכת אנשי קשר"ORG_CONTACT_VIEW
: "צפייה באנשי קשר"These additions improve the granularity of permissions for sprint and project management features.
Line range hint
1-2124
: Verify the usage of new sprint-related translations.The new sprint-related translations have been added to the Hebrew localization file. It's important to ensure that these are being used correctly in the application.
Run the following script to check for the usage of these new translations:
✅ Verification successful
<!-- [monologue] [task verify_translation_usage_final/1/1] [observations] The latest shell script successfully searched for the usage of new sprint-related translation keys (`ORG_SPRINT_EDIT`, `ORG_SPRINT_VIEW`, `ORG_SPRINT_DELETE`, `ORG_SPRINT_ADD`) across all files and also looked for any hardcoded Hebrew text related to "ספרינט" (sprint). The output indicates that: 1. The new sprint-related translation keys are present in multiple localization files, including `he.json`. 2. These keys are being referenced in TypeScript files, specifically in `role-permission.model.ts` and `organization-sprint.controller.ts`, which suggests they are actively used within the application's permission system. 3. The search for hardcoded Hebrew text related to "ספרינט" only found occurrences within the localization files themselves, implying there are no hardcoded instances elsewhere in the codebase. [analysis] Given that the translation keys are properly defined in the localization files and are being utilized in the application code without any hardcoded Hebrew text outside of these files, it can be concluded that the new sprint-related translations are being used correctly within the application. [actions] Proceed to generate the final response indicating that the verification is successful. -->✅ Verification Successful
The new sprint-related translations in
he.json
are properly defined and are actively used within the application. No hardcoded Hebrew sprint-related text was found outside the localization files, ensuring consistent and correct usage.Category:
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Check for usage of new sprint-related translations in the codebase. # Search for usage of sprint-related keys echo "Searching for usage of new sprint-related translation keys:" rg --type typescript --type html 'ORG_SPRINT_EDIT|ORG_SPRINT_VIEW|ORG_SPRINT_DELETE|ORG_SPRINT_ADD' # Search for any hardcoded Hebrew text related to sprints echo "Searching for hardcoded Hebrew sprint-related text:" rg --type typescript --type html 'ספרינט'Length of output: 500
Script:
#!/bin/bash # Description: Corrected script to check for usage of new sprint-related translations in the codebase. # Search for usage of sprint-related keys in TypeScript and TSX files echo "Searching for usage of new sprint-related translation keys in TypeScript files:" rg --type ts --type tsx 'ORG_SPRINT_EDIT|ORG_SPRINT_VIEW|ORG_SPRINT_DELETE|ORG_SPRINT_ADD' # Search for usage of sprint-related keys in HTML files echo "Searching for usage of new sprint-related translation keys in HTML files:" rg --type html 'ORG_SPRINT_EDIT|ORG_SPRINT_VIEW|ORG_SPRINT_DELETE|ORG_SPRINT_ADD' # Search for any hardcoded Hebrew text related to sprints in TypeScript, TSX, and HTML files echo "Searching for hardcoded Hebrew sprint-related text in TypeScript, TSX, and HTML files:" rg --type ts --type tsx --type html 'ספרינט'Length of output: 831
Script:
#!/bin/bash # Description: Updated script to check for usage of new sprint-related translations in the codebase using glob patterns. # Define file extensions to search FILE_EXTENSIONS=("*.ts" "*.tsx" "*.html") # Join file extensions for rg EXTENSIONS=$(IFS='|'; echo "${FILE_EXTENSIONS[*]}") # Search for usage of sprint-related keys in specified file types echo "Searching for usage of new sprint-related translation keys in TypeScript and HTML files:" rg --glob '/*.ts' --glob '/*.tsx' --glob '/*.html' 'ORG_SPRINT_EDIT|ORG_SPRINT_VIEW|ORG_SPRINT_DELETE|ORG_SPRINT_ADD' # Search for any hardcoded Hebrew text related to sprints in specified file types echo "Searching for hardcoded Hebrew sprint-related text in TypeScript, TSX, and HTML files:" rg --glob '/*.ts' --glob '/*.tsx' --glob '/*.html' 'ספרינט'Length of output: 710
Script:
#!/bin/bash # Description: Simplified script to check for usage of new sprint-related translations in all files. # Search for usage of sprint-related keys in all files echo "Searching for usage of new sprint-related translation keys in all files:" rg 'ORG_SPRINT_EDIT|ORG_SPRINT_VIEW|ORG_SPRINT_DELETE|ORG_SPRINT_ADD' # Search for any hardcoded Hebrew text related to sprints in all files echo "Searching for hardcoded Hebrew sprint-related text in all files:" rg 'ספרינט'Length of output: 7422
packages/ui-core/i18n/assets/i18n/en.json (1)
2201-2204
: New sprint-related permissions added: ApprovedFour new permissions have been added to manage sprint-related actions:
- ORG_SPRINT_EDIT: "Edit sprint"
- ORG_SPRINT_VIEW: "View sprint"
- ORG_SPRINT_DELETE: "Delete sprints"
- ORG_SPRINT_ADD: "Add sprint"
These additions will allow for more granular control over sprint management within the organization, which is a valuable feature for project management and agile workflows.
packages/ui-core/i18n/assets/i18n/ru.json (1)
2124-2127
: New permissions added for sprint managementThe following new permissions have been added for sprint management:
- "ORG_SPRINT_EDIT": "Редактировать спринт"
- "ORG_SPRINT_VIEW": "Просмотреть спринт"
- "ORG_SPRINT_DELETE": "Удалить спринты"
- "ORG_SPRINT_ADD": "Добавить спринт"
These additions enhance the granularity of permissions for sprint-related actions.
packages/ui-core/i18n/assets/i18n/nl.json (2)
2092-2095
: New sprint management translations added successfully.The following new keys have been added for sprint management:
- "ORG_SPRINT_EDIT": "Sprint bewerken"
- "ORG_SPRINT_VIEW": "Sprint bekijken"
- "ORG_SPRINT_DELETE": "Sprints verwijderen"
- "ORG_SPRINT_ADD": "Sprint toevoegen"
These additions are consistent with the existing translation style and provide necessary functionality for sprint management in Dutch.
Line range hint
1-2095
: Updated keys are correct and consistent.The updated keys mentioned in the AI summary have been correctly modified:
- "ORG_SPRINT_EDIT": "Sprint bewerken"
- "ORG_SPRINT_VIEW": "Sprint bekijken"
These updates maintain consistency with the existing translation style and accurately reflect the intended meanings.
packages/ui-core/i18n/assets/i18n/pl.json (2)
Line range hint
1-2092
: Overall structure and formatting look good, with some notable additions and changes.The JSON file for Polish translations appears to be well-structured and formatted consistently. I've identified several additions and modifications as mentioned in the AI-generated summary:
New keys added:
- "DELETE_ACCOUNT": "Usuń swoje konto"
- "DELETE_ALL_DATA": "Usuń wszystkie dane"
- "NO_DATA": "Brak danych"
- "CANDIDATE_ACTION_CONFIRMATION": { "SURE": "Czy na pewno chcesz?" }
- Several new keys under "APPROVAL_REQUEST_PAGE" and "TIME_OFF_PAGE"
Modified keys:
- "MAKE_PUBLIC": changed from "udostępnić publicznie" to "Utwórz publiczne"
These changes seem to enhance the functionality and user experience of the application. The translations appear to be appropriate and consistent with the rest of the file.
2092-2095
: New permissions added for sprint management.Four new permission keys have been added for sprint management:
"ORG_SPRINT_EDIT": "Edytuj sprint", "ORG_SPRINT_VIEW": "Wyświetl sprint", "ORG_SPRINT_DELETE": "Usuń sprinty", "ORG_SPRINT_ADD": "Dodaj sprint",These additions improve the granularity of permissions for sprint-related actions, which is a good practice for role-based access control.
packages/ui-core/i18n/assets/i18n/it.json (2)
Line range hint
1-4
: LGTM: File structure and initial keys look good.The file starts with the correct JSON structure and includes the main "BUTTONS" key. The translations for the first few button labels appear to be accurate and consistent.
2092-2095
: New translations added for sprint-related actions.Four new translations have been added for sprint-related actions:
- "ORG_SPRINT_EDIT": "Modifica sprint"
- "ORG_SPRINT_VIEW": "Visualizza sprint"
- "ORG_SPRINT_DELETE": "Elimina sprint"
- "ORG_SPRINT_ADD": "Aggiungi sprint"
These additions improve the localization for sprint management features.
packages/ui-core/i18n/assets/i18n/pt.json (5)
Line range hint
2-5
: LGTM: General structure and initial translations look goodThe overall structure of the JSON file and the initial translations for general terms and dashboard-related content appear to be well-formed and accurate.
Line range hint
1234-1238
: LGTM: Accurate translations for technical termsThe translations for technical terms like "SPRINT" and "BACKLOG" are appropriately left in English, which is a good practice for widely recognized software development terms.
Line range hint
4334-4338
: LGTM: Clear and accurate translations for authenticationThe translations for authentication-related messages and labels are clear, accurate, and maintain a good balance between formality and user-friendliness.
Line range hint
1-4532
: Overall assessment: Well-translated with minor improvements neededThe Portuguese (pt) translation file is generally well-translated and covers a wide range of features and UI elements. The translations are mostly accurate, clear, and maintain a good balance between technical accuracy and natural language use. There are a few areas where consistency in terminology and formality level could be improved, and some minor formatting issues to address. Overall, it provides a solid foundation for the Portuguese localization of the application.
2092-2095
:⚠️ Potential issueFormatting issue in translations
There are unexpected line numbers (2092~, 2093~, etc.) within the JSON structure. These should be removed to maintain proper JSON formatting.
Remove the unexpected line numbers:
- "ORG_SPRINT_EDIT": "Editar sprint", - "ORG_SPRINT_VIEW": "Ver sprint", - "ORG_SPRINT_DELETE": "Excluir sprints", - "ORG_SPRINT_ADD": "Adicionar sprint", + "ORG_SPRINT_EDIT": "Editar sprint", + "ORG_SPRINT_VIEW": "Ver sprint", + "ORG_SPRINT_DELETE": "Excluir sprints", + "ORG_SPRINT_ADD": "Adicionar sprint",Likely invalid or redundant comment.
packages/ui-core/i18n/assets/i18n/es.json (4)
2094-2097
: New sprint-related translations addedThe following new translations for sprint-related functionality have been added:
"ORG_SPRINT_EDIT": "Editar sprint", "ORG_SPRINT_VIEW": "Ver sprint", "ORG_SPRINT_DELETE": "Eliminar sprints", "ORG_SPRINT_ADD": "Agregar sprint",These additions are consistent with the existing structure and naming conventions. They provide necessary translations for managing sprints in the Spanish version of the application.
Line range hint
2098-2101
: New project-related permission translations addedThe following new translations for project-related permissions have been added:
"ORG_PROJECT_ADD": "Crear proyectos", "ORG_PROJECT_VIEW": "Ver proyectos", "ORG_PROJECT_EDIT": "Editar Proyectos", "ORG_PROJECT_DELETE": "Eliminar Proyectos",These additions expand the permission system to include project management capabilities. The translations are consistent with the existing permission naming conventions and provide clear descriptions in Spanish.
Line range hint
2102-2109
: New contact and project module permission translations addedThe following new translations for contact and project module permissions have been added:
"ORG_CONTACT_EDIT": "Crear/Editar Contactos", "ORG_CONTACT_VIEW": "Ver contactos", "PROJECT_MODULE_CREATE": "Crear módulos de proyecto", "PROJECT_MODULE_READ": "Ver módulos de proyecto", "PROJECT_MODULE_UPDATE": "Actualizar módulos de proyecto", "PROJECT_MODULE_DELETE": "Eliminar módulos de proyecto",These additions further expand the permission system to include contact management and fine-grained control over project modules. The translations maintain consistency with existing permission naming conventions and provide clear descriptions in Spanish.
Line range hint
2110-2117
: New team-related permission translations addedThe following new translations for team-related permissions have been added:
"ORG_TEAM_ADD": "Agregar equipos", "ORG_TEAM_VIEW": "Ver Equipos", "ORG_TEAM_EDIT_ACTIVE_TASK": "Editar tareas activas", "ORG_TEAM_EDIT": "Editar Equipos", "ORG_TEAM_DELETE": "Eliminar equipos", "ORG_TEAM_JOIN_REQUEST_VIEW": "Ver solicitudes de unirse a los equipos", "ORG_TEAM_JOIN_REQUEST_EDIT": "Eliminar solicitudes de unión a equipos",These additions complete the expansion of the permission system to include comprehensive team management capabilities. The translations maintain consistency with existing permission naming conventions and provide clear descriptions in Spanish. The inclusion of "join request" permissions introduces a new concept in team management within the application.
packages/ui-core/i18n/assets/i18n/fr.json (3)
Line range hint
501-1000
: Translations continue to be well-structured and appropriate.This segment of the translation file maintains the high quality of translations seen in the first part. It covers specific pages and features, including Organizations, Contacts, and Public pages. The use of placeholders is consistent and correct throughout.
Line range hint
1001-1500
: Translations maintain quality and consistency.This segment of the translation file continues to provide high-quality French translations for various features, including Proposals, Approval Requests, Time Off, and Equipment. The translations for form validations, error messages, and specific actions are appropriate and complete. The structure and use of placeholders remain consistent with previous segments.
Line range hint
1501-2096
: Final segment maintains high quality, completing a comprehensive translation file.The final segment of the translation file continues to provide accurate and complete French translations for various features, including Timesheets, Appointments, and settings pages. The authentication-related translations (Login, Register, Forgot Password) are well-covered. The file structure remains consistent throughout, and it ends properly with a closing curly brace.
This French translation file is comprehensive, well-structured, and appears to cover all necessary UI elements and messages for the application. The consistent use of placeholders and appropriate translations throughout the file is commendable.
packages/ui-core/i18n/assets/i18n/de.json (4)
Line range hint
1-5
: LGTM: File structure looks goodThe opening of the JSON file is correct, with proper nesting of the "BUTTONS" object.
Line range hint
6-66
: Consistent use of placeholders and formattingThe "BUTTONS" section maintains consistent formatting and proper use of placeholders (e.g., "{{ label }}"). The translations appear to be appropriate for the context.
2088-2091
: New sprint-related permissions addedNew permissions for sprint management have been added:
- ORG_SPRINT_EDIT
- ORG_SPRINT_VIEW
- ORG_SPRINT_DELETE
- ORG_SPRINT_ADD
These additions enhance the granularity of permissions for sprint-related actions.
Line range hint
1-3702
: Overall assessment: Good quality with minor improvements neededThe German translation file is comprehensive and well-structured. Most sections are properly translated with correct use of placeholders. However, there are a few areas that could be improved:
- Some entries, particularly in the TIMESHEET section (lines 3315-3321), are still in English and should be translated to German.
- The "COMING_SOON" message at the end of the file (lines 3701-3702) is also in English and needs translation.
These minor issues aside, the translation file appears to be of good quality and ready for use with some small refinements.
PR
Please note: we will close your PR without comment if you do not check the boxes above and provide ALL requested information.
Summary by CodeRabbit
New Features
ORG_SPRINT_ADD
andORG_SPRINT_DELETE
for managing organization sprints.SUPER_ADMIN
andADMIN
to include the new sprint management permissions.Localization Updates