-
Notifications
You must be signed in to change notification settings - Fork 0
Dev #463
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
Open
shubhmjain30
wants to merge
103
commits into
main
Choose a base branch
from
dev
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Dev #463
+3,723
−1,278
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- Update react-complex-tree from 2.4.5 to 2.6.1. - Reorder check-updates script in package.json for consistency. - Remove unused dependencies from package-lock.json to reduce bloat.
- Introduce extractTextContent to extract text from various React node types, including strings, numbers, arrays, and React elements. This utility enhances text handling capabilities within the application, making it easier to work with dynamic content.
- Introduce comprehensive unit tests for various text formatting utilities including limitText, getFirstWord, capitalize, toKebabCase, nullRemover, numberRemover, getInitials, and extractTextContent. - These tests ensure the correctness of the utility functions and improve maintainability by providing a safety net for future changes.
- Updated SectionProps to accept ReactNode for title and desc, allowing more flexible content types. - Integrated extractTextContent utility in Section and FeatureList to ensure proper text extraction from title and description props. - Made title and description fields in FeatureList and Hero editable, improving user interaction and content management.
- Clean up onboarding steps by removing unused and deprecated entries. - This helps maintain clarity and reduces potential confusion in the codebase.
- Introduce comprehensive tests for the onboarding steps, ensuring unique IDs, applicable roles, and backward compatibility of the role field. This enhances the reliability of the onboarding process by validating the core functionalities. - Additionally, refactor the getStepsForUserType function to return the master list of steps for all user types, improving the overall structure and maintainability of the code.
- Fixed a typo in the documentation for the Section component, changing "decription" to "description" for clarity and accuracy.
- Simplified the `filterOnboardingStepsByRoles` function by removing the legacy role field checks, focusing solely on the applicableRoles array for filtering. This enhances code clarity and maintains backward compatibility through existing role structures.
- Introduced constants for onboarding step IDs and API response status to improve code readability and maintainability. This change replaces hardcoded values with descriptive constants across the onboarding components and hooks, ensuring consistency and reducing the risk of errors.
- This change updates the @ekoindia/oaas-widget package to the latest version, ensuring compatibility and access to the latest features and bug fixes.
- Updated the constant names from MERCHANT_TYPES to APPLICANT_TYPES to better reflect their purpose in the onboarding process. - Adjusted references in the visibleAgentTypes and getBaseRoleData functions to ensure consistency across the codebase.
- Introduce filtering for disabled and skippable steps based on org metadata, improving the onboarding experience by allowing dynamic step management. - Update the step configuration logic to apply these filters, ensuring that the onboarding process reflects the current organizational settings.
…ndling - Introduced functions to create a step lookup map and extract step configuration from organization metadata. This allows for improved performance and clarity in determining which onboarding steps are disabled or skippable based on user type. - Updated master onboarding steps to use uppercase naming conventions for consistency and clarity.
- Refactor onboarding steps to use uppercase naming conventions for consistency and clarity. The steps for Aadhaar consent, confirmation of Aadhaar number, and OTP confirmation have been modified to improve readability and maintainability.
- Enhance the step filtering mechanism by introducing visibility filtering as the first step in the process. This ensures that invisible steps are excluded before applying role-based and disabled steps filtering. - The changes improve the clarity and efficiency of the onboarding steps configuration, ensuring users only see relevant steps.
- Introduced a new method to handle skipping of onboarding steps, allowing users to bypass certain steps in the onboarding process. This enhances user experience by providing flexibility in navigation. - Updated the onboarding state management to include a new action for updating step status, including the newly defined SKIPPED status.
- Implement logic to update step status when a step is skipped, ensuring the stepper data reflects the current state accurately. - Adjust the flow to handle the next step after skipping, improving user experience by maintaining the correct progression through onboarding. - Note: refreshAgentProfile is intentionally not called to prevent unintended state resets during the onboarding process.
- Updated descriptions for various onboarding steps to provide clearer instructions and improve user understanding. This includes details on document uploads, consent verification, and account setup processes. - These enhancements aim to streamline the onboarding experience and reduce user confusion during the verification stages.
- Add state management for onboarding initialization to ensure that the onboarding steps are determined only after the agent profile has been refreshed. This improves the reliability of the onboarding flow by preventing premature step determination.
- Update the e-signature integration logic to support both Karza and Leegality as agreement providers. This allows for greater flexibility in handling e-signature requests based on the provider specified.
- Refactor onboarding step status updates to utilize session storage for persistence across page refreshes. This includes saving and loading step states based on user identifiers, ensuring that completed and skipped steps are preserved. - Improve the initialization logic to only set steps when valid user details are available, enhancing the onboarding experience.
- This update includes bug fixes and improvements from the previous version, ensuring better stability and performance of the application.
- Introduce functionality to handle passbook image uploads as part of the onboarding steps. This includes updating the file upload data structure and implementing the necessary logic to process the uploaded file. - This enhancement allows users to add their bank account details more seamlessly during onboarding.
- Refactor the updateStepStatus function to utilize the ONBOARDING_STEP_STATUS constant for setting the step status instead of a hardcoded value. This enhances code readability and maintainability by ensuring consistent use of status values throughout the onboarding process.
- Update tests to ensure that onboarding steps correctly reflect skippability based on the isRequired property. - Modify existing tests to use consistent naming for steps, improving clarity and maintainability.
- Update the updateStepStatus function to enforce type safety by specifying parameter types. This improves code clarity and reduces potential runtime errors. - Refactor step status updates to use constants for better maintainability and readability.
- Replace hardcoded status values for completed and skipped steps with constants from ONBOARDING_STEP_STATUS. This improves code readability and maintainability by reducing magic numbers.
- Update the dependency array in the useEffect hook to ensure that the effect correctly responds to changes in the booklet key function. This prevents potential stale closures and ensures the latest function is used when the component re-renders.
- Modify the dependency array in the useEffect hook to include refreshAgentProfile. This ensures that the onboarding process initializes correctly when the refresh function changes, improving the component's responsiveness to user data updates.
- Changed the title from "KYC & Verification Tools" to "KYC & Verification" to align with the overall branding and improve clarity for users.
- Introduced an `iconStyle` prop to both `InfoTile` and `InfoTileGrid` components, allowing users to choose between "avatar" and "square" styles for icons. This enhances the visual flexibility of the tiles. - Default icon style is set to "avatar" for backward compatibility.
- Introduced org_token as a parameter in sendOtpRequest, GoogleButtonContent, SocialVerify, and VerifyOtp components to enhance the login process. - This change allows for better handling of organization-specific details during authentication, improving the overall user experience.
- Updated the GOOGLELOGIN endpoint from "/authentication/wlc-login" to "/authentication/google-login" to ensure proper authentication flow with Google services.
…ration - Introduced a client_secret field for the google login configuration, which must be set on the server side. This enhances security by ensuring sensitive credentials are not exposed on the client side.
- Introduce a new custom hook, useNetworkState, that provides information about the user's network status, including online status, effective connection type, and downlink speed. - This hook listens for network events and updates the state accordingly, enhancing the application's ability to respond to changes in network conditions.
- Update the getFormErrorMessage function to destructure the type and message from the errors object directly. This change ensures that custom error messages are prioritized over default error type messages, enhancing the clarity of feedback provided to users.
- Integrate useNetworkState hook to track online status and connection type within the TroubleshootTab component. - Update diagnostic data to include network information, improving overall diagnostics and user feedback.
- Add networkStatus property to NetworkState interface to provide detailed information about the current network status. - Update getConnectionState function to calculate networkStatus based on effectiveType and navigator's online status.
- Modify the regex patterns for phone number validation to allow numbers starting with 5-9 instead of 6-9. This change ensures compliance with updated requirements for valid phone numbers.
… digits - Modified the regex patterns for phone number validation to ensure that numbers start with digits between 6 and 9, improving the accuracy of input validation for phone numbers.
- Updated the export statement for useNetworkState to a named export instead of a default export. This change improves consistency in how hooks are exported and allows for better tree-shaking in bundlers.
- Introduce a NetworkStatusIcon component that displays the current network status in the navbar. It shows a tooltip for offline or slow connections, enhancing user awareness of their connectivity. - This feature improves the user experience by providing immediate feedback on network conditions.
- Update the getUserTypeLabel function to return an empty string when user_type_id is -1, which represents a New/Unknown User during onboarding. This improves clarity and prevents unintended label returns for new users.
- Introduce an environment label that displays "DEV" or "UAT" based on the current environment. This label is shown only in non-production environments to help developers identify the current context. - The label is styled to be visually distinct and positioned in the navbar for easy visibility.
- Added required validations for address fields to ensure user input is complete and accurate. - Improved postal code validation to enforce a 6-digit numeric format and added error messages for better user guidance. - Updated city field to require only letters and spaces, enhancing data integrity.
- Introduce internal state management for formatted and unformatted values in numeric input mode. - Implement auto-adjustment of maxLength to accommodate formatting spaces. - Sync display value with controlled value prop for numeric inputs, improving user experience and input accuracy.
…ling - Refactor input handling in Login and SocialVerify components to accept unformatted mobile numbers directly, improving user experience. - Adjust validation rules to require exactly 10 digits for mobile numbers, ensuring consistency across components. - Enhance onChange handlers to manage input more effectively, allowing for better state management and user feedback.
- Added tests to verify the formatting of numeric input values with spaces and ensure unformatted values are dispatched correctly via onChange and onEnter events. - Improved coverage for controlled mode and partial input handling scenarios, ensuring the Input component behaves as expected.
- Refactor the Form component to improve handling of numeric and mobile inputs by utilizing the Controller from react-hook-form for better integration with form validation and state management. - Update parameter handling to ensure proper value assignment and visibility conditions for form fields.
- Refactor the AddAgentForm component to ensure the mobile number input adheres to stricter validation rules, including length and pattern checks. - Update the parameter type for the mobile number to ensure it is treated as a mobile input, enhancing user experience and data integrity.
- Introduced support for OTP input fields in the Form component. - This enhancement allows for better user experience during verification processes by integrating an OtpInput component. - The onEnter function is now passed to handle Enter key events for OTP submission.
- Adjust the margin of the ActionButtonGroup component to improve spacing and visual hierarchy within the form layout. This enhances the overall user interface and ensures better usability.
- Update parameter type for OTP input to ensure correct validation. - Adjust minimum length for OTP to 4 digits and update regex pattern. - Improve error handling for OTP verification, providing clearer feedback based on response status. - Add margin to ActionButtonGroup for better UI spacing.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
This PR consolidates multiple platform improvements across onboarding, admin features, infrastructure, and content management:
Onboarding System Refactor
STEP_STATUS,STEP_IDS)Admin Features
LandingPageConfigwith enhancedLandingPageEditorNetworkFilter,SortAndFilterMobile)About/Diagnostics
CMS Enhancements
extractTextContentutility for parsing nested React elementsInfrastructure
Bug Fixes
interaction_listandrole_tx_listin transaction processingCode Quality
Dependencies
@ekoindia/oaas-widget: 4.3.1 → 4.3.7Motivation and Context
These changes address multiple production issues and feature requests:
How Has This Been Tested?
Screenshots (if appropriate):
N/A
Types of changes
🚨 Checklist:
Further comments
This PR consolidates work from multiple development branches. Key architectural decisions:
🙏 Thank you!
Thank you for contributing to this project. We appreciate your time and effort. 🎉
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.