This test project aims to evaluate technical skills in developing Lightning Web Components (LWC) and working with Salesforce's ecosystem. The project involves creating a 'Settings' page that allows authorized users to manage template mappings between an external API and Salesforce Object Fields.
- Create a Lightning Web Component for the Settings page
- Implement user authorization to restrict access to the Settings page
- Integrate with Harbour's API to fetch available templates
- Display template inputs and allow mapping to Salesforce Object Fields
- Store and persist mappings in a custom Salesforce object
- Create a new LWC called
templateSettings
- The component should have a clean, user-friendly interface
- Implement proper error handling and loading states
- Restrict access to the Settings page to users with a specific custom permission
- Implement server-side and client-side checks for authorization
- Integrate with Harbour's API to fetch all available templates
- Use Named Credentials to securely store API credentials
- Implement proper error handling for API calls
- Display a list of all templates retrieved from the API
- When a template is selected, show all its inputs
- Clearly indicate which inputs are required
- Provide a way to map each input to a Salesforce Object Field
- Implement type checking to ensure compatible field types are mapped
- Create a custom object called
Template_Mapping__c
to store the mappings - The object should have fields for:
- Template ID
- Input ID
- Salesforce Object API Name
- Salesforce Field API Name
- Implement CRUD operations for this object in Apex
- Ensure that mappings are saved and can be retrieved across different sessions
- Implement a way to edit existing mappings
Template ID: template_123
Input ID: abc123
Salesforce Object API Name: Opportunity
Salesforce Field API Name: Account.Name
- Code quality and organization
- Proper use of Lightning Web Components
- Salesforce best practices and security considerations
- Error handling and user experience
- Apex code quality (if used for backend operations)
- Proper use of custom objects and fields
- API integration implementation
- Overall solution design and scalability
- Create a new Salesforce Developer Edition org for this project
- Develop the solution in your org
- Use GitHub to version control your code
- Provide clear documentation on how to deploy and test your solution
- Include any assumptions made during development
Please complete this project within 5 business days.
Good luck!