Skip to content
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

Move console related i18n extensions to @wso2is/i18n module #7320

Merged

Conversation

pavinduLakshan
Copy link
Contributor

@pavinduLakshan pavinduLakshan commented Jan 17, 2025

Purpose

There are some i18n strings inside console/extensions folder. Since the console is now unified, we can move this i18n to i18n module to be used in both onprem and asgardeo.

This issue focuses on moving the i18n under "console" category[1] in console/extensions directory.

[1]

console: {
application: {
quickStart: {
addUserOption: {
description: "You need a <1>user account</1> to log in to the application.",
hint:
"If you don’t already have a user account, click the below button to create one. " +
"Alternatively, go to <1>User Management > Users</1><3></3> and create users.",
message:
"If you do not already have a user account, contact your organization " +
"administrator."
},
spa: {
customConfig: {
heading: "You can implement login using <1>Authorization Code flow with PKCE</1> " +
"with Asgardeo for any SPA technology.",
anySPATechnology: "or any SPA Technology",
configurations: "Configurations",
protocolConfig: "Use the following configurations to integrate your application with Asgardeo. " +
"For more details on configurations, go to the <1>Protocol</1> tab.",
clientId: "Client ID",
baseUrl: "Base URL",
redirectUrl: "Redirect URL",
scope: "Scope",
serverEndpoints: "Details on the server endpoints are available in the <1>Info</1> tab."
},
techSelection: {
heading: "Use the SDKs curated by Asgardeo and 3rd party integrations."
}
},
technologySelectionWrapper: {
subHeading:
"Use the <1>server endpoint " +
"details</1> and start integrating your own app or read through our <3>documentation</3> " +
"to learn more.",
otherTechnology: "or any mobile technology"
},
twa: {
common: {
orAnyTechnology: "or any technology"
},
oidc: {
customConfig: {
clientSecret: "Client Secret",
heading: "You can implement login using <1>Authorization Code flow</1> " +
"with Asgardeo for any traditional web application."
}
},
saml: {
customConfig: {
heading: "Discover <1>SAML configurations</1> to integrate Asgardeo with" +
" any traditional web application.",
issuer: "Issuer",
acsUrl: "Assertion Consumer Service URL",
idpEntityId: "IdP Entity ID",
idpUrl: "IdP URL"
}
}
},
m2m: {
customConfig: {
tokenEndpoint: "Token Endpoint",
tokenRequest: "Token Request",
configurations: "Configurations"
}
}
}
},
applicationRoles: {
assign: "Assign",
assignGroupWizard: {
heading: "Assign Groups",
subHeading: "Assign groups to the application role."
},
authenticatorGroups: {
goToConnections: "Go to Connections",
groupsList: {
assignGroups: "Assign Groups",
notifications: {
fetchAssignedGroups: {
error: {
description: "{{description}}",
message: "Error occurred while fetching assigned groups"
},
genericError: {
description: "An error occurred while fetching assigned groups.",
message: "Something went wrong"
}
},
updateAssignedGroups: {
error: {
description: "{{description}}",
message: "Error occurred while updating assigned groups"
},
genericError: {
description: "An error occurred while updating assigned groups.",
message: "Something went wrong"
},
success: {
description: "Successfully updated assigned groups.",
message: "Update successful"
}
}
}
},
hint: "When assigning external groups to a role, make sure that the connection is enabled in " +
"<1>External Grooup Role Resolution Control</1> in the Roles tab of the <3>Application</3>.",
placeholder: {
title: "No External Groups",
subTitle: {
0: "There are no external groups available at the moment.",
1: "You can add a new external group by visiting the " +
"Groups tab in a connection."
}
}
},
connectorGroups: {
placeholder: {
title: "No External Groups",
subTitle: {
0: "There are no external groups available at the moment.",
1: "Define the groups that you receive from your connections by adding a new group."
}
}
},
heading: "Application Roles",
searchApplication: "Search Application",
subHeading: "View and assign groups to your application roles.",
roleGroups: {
assignGroup: "Assign Group",
searchGroup: "Search groups",
placeholder: {
title: "No groups assigned",
subTitle: {
0: "There are no groups assigned to this role.",
1: "To assign a group, click on the Assign Group button."
}
},
notifications: {
addGroups: {
error: {
message: "An error occurred",
description: "An error occurred while adding the group."
},
success: {
message: "Group added successfully",
description: "The group has been successfully added to the role."
}
},
fetchGroups: {
error: {
message: "An error occurred",
description: "An error occurred while fetching the groups."
}
}
},
confirmation: {
deleteRole: {
message: "This action is irreversible and will remove " +
"the group from the application role.",
content: "If you remove this group from the application role, the permissions " +
"associated with this role will be removed from the group. Please proceed " +
"with caution."
}
}
},
roleList: {
placeholder: {
title: "No Application Roles",
subTitle: {
0: "There are no application roles available at the moment.",
1: "You can add a new application role by visiting the " +
"Roles tab in an Application."
}
}
},
roleMapping: {
heading: "External groups Role Resolution Control",
subHeading: "Enable or disable application role resolving from external groups " +
"during authentication flow",
notifications: {
sharedApplication: {
error: {
description: "An error occurred while retrieving the shared applications.",
message: "An error occurred"
}
},
updateRole: {
error: {
description: "{{description}}",
message: "Error updating role"
},
genericError: {
description: "An error occurred while updating the role.",
message: "Something went wrong"
},
success: {
description: "Successfully updated the role.",
message: "Updated successfully"
}
}
}
},
roles: {
heading: "Roles",
subHeading: "Manage roles and permissions.",
goBackToRoles: "Go back to Roles",
orgRoles: {
heading: "Organization Roles",
subHeading: "Manage organization roles here."
}
}
},
identityProviderGroups: {
claimConfigs: {
groupAttributeLabel: "Group attribute",
groupAttributeHint: "The attribute from the connection that will be mapped to the organization's group attribute.",
groupAttributePlaceholder: "Enter mapped attribute",
groupAttributeMessage1: "Please be aware that the attribute selected in the <1>Attributes tab</1> as the group attribute is used to identify groups at the Connection.",
groupAttributeMessage2: "For modifications to the group attribute, please visit the <1>Attributes tab</1>.",
groupAttributeMessageOIDC: "Please note that OpenID Connect attribute named <1>{{attribute}}</1> will be considered as the default " +
"<1>Group Attribute</1> as you have not added a custom attribute.",
groupAttributeMessageSAML: "Please note that <1>{{attribute}}</1> attribute will be considered as the default " +
"<1>Group Attribute</1> as you have not added a custom attribute.",
notifications: {
fetchConfigs: {
error: {
description: "{{description}}",
message: "Error occurred while fetching claim configurations"
},
genericError: {
description: "An error occurred while fetching claim configurations.",
message: "An error occurred"
}
}
}
},
createGroupWizard: {
groupNameLabel: "Group Name",
groupNamePlaceHolder: "Enter a group name",
groupNameHint: "This should correspond to the name of the groups that will be returned " +
"from your connection.",
subHeading: "Create a new connection group.",
notifications: {
createIdentityProviderGroup: {
error: {
description: "{{description}}",
message: "Error occurred while creating the connection group"
},
genericError: {
description: "An error occurred while creating the connection group.",
message: "An error occurred"
},
success: {
description: "The connection group has been created successfully.",
message: "Successfully created"
}
},
duplicateGroupError: {
error: {
description: "A group with the same name already exists.",
message: "Error occurred"
}
}
}
},
groupsList: {
confirmation: {
deleteGroup: {
message: "This action is irreversible.",
content: "This action will permanently delete the {{groupName}} identity provider group. " +
"Please proceed with caution"
}
},
newGroup: "New Group",
noGroupsAvailable: "No groups available",
notifications: {
fetchGroups: {
error: {
description: "{{description}}",
message: "Error occurred while fetching identity provider groups"
},
genericError: {
description: "An error occurred while retrieving identity provider groups.",
message: "An error occurred"
}
},
deleteGroup: {
error: {
description: "{{description}}",
message: "Error occurred while deleting the identity provider group"
},
genericError: {
description: "An error occurred while deleting the identity provider group.",
message: "An error occurred"
},
success: {
description: "The identity provider group has been deleted successfully.",
message: "Successfully deleted"
}
}
},
searchByName: "Search by name"
}
},
marketingConsent: {
heading: "Let's stay in touch!",
description: "Subscribe to get the latest news and product updates straight to your inbox.",
actions: {
subscribe: "Subscribe",
decline: "Don't show this again"
},
notifications: {
errors: {
fetch: {
message: "Something went wrong",
description: "Something went wrong when getting user consent data"
},
update: {
message: "Something went wrong",
description: "Something went wrong when updating user consent"
}
}
}
},
organizationInfo: {
heading: "Organization Info",
subHeading: "View information related to your organization.",
orgId: {
label: "Organization ID",
heading: "Organization ID",
subHeading: "The following organization ID will be useful for you to implement and configure the Asgardeo manangement REST APIs of " +
"organizations."
},
notifications: {
getConfiguration: {
error: {
description: "Error occurred while retrieving organization information",
message: "An error occurred"
},
genericError: {
description: "An error occurred while retrieving organization information.",
message: "An error occurred"
}
}
}
}
},

Related Issues

  • N/A

Related PRs

  • N/A

Checklist

  • e2e cypress tests locally verified. (for internal contributers)
  • Manual test round performed and verified.
  • UX/UI review done on the final implementation.
  • Documentation provided. (Add links if there are any)
  • Relevant backend changes deployed and verified
  • Unit tests provided. (Add links if there are any)
  • Integration tests provided. (Add links if there are any)

Security checks

Copy link

codecov bot commented Jan 18, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 36.53%. Comparing base (dcb12db) to head (bc94c44).
Report is 131 commits behind head on master.

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #7320   +/-   ##
=======================================
  Coverage   36.53%   36.53%           
=======================================
  Files          42       42           
  Lines         906      906           
  Branches      223      223           
=======================================
  Hits          331      331           
+ Misses        575      529   -46     
- Partials        0       46   +46     
Flag Coverage Δ
@wso2is/core 36.53% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

see 13 files with indirect coverage changes

@pavinduLakshan pavinduLakshan marked this pull request as ready for review January 18, 2025 13:56
@pavinduLakshan pavinduLakshan force-pushed the move_console_i18n_extensions branch from 2862e0b to 67b921e Compare January 26, 2025 04:34
@DilshanSenarath
Copy link
Contributor

Let's include the reason for this change in the PR description. This will serve as a reference for the refactoring in case any issues arise from moving it.

@pavinduLakshan pavinduLakshan force-pushed the move_console_i18n_extensions branch from 67b921e to bc94c44 Compare January 26, 2025 11:17
@wso2-jenkins-bot
Copy link
Contributor

🦋 Changeset detected

The changes in this PR will be included in the next version bump.

Not sure what this means? Click here to learn what changesets are.

@pavinduLakshan pavinduLakshan merged commit b19f582 into wso2:master Jan 26, 2025
11 checks passed
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.

5 participants