Conversation
…sCard functionality - Deleted the CredentialCard component to streamline the codebase. - Updated SavedCredentialsCard to include expandable functionality with motion effects for improved user interaction. - Enhanced layout and styling for better visual consistency and responsiveness. - Integrated new props for handling click events and layout animations.
…ects and new hooks - Updated VaultDashboard to utilize motion effects for credential cards, improving user interaction and visual appeal. - Introduced useOutsideClick hook for handling outside click events, enhancing modal behavior. - Enhanced SavedCredentialsCard to support expandable functionality with layout animations and improved styling. - Refactored state management in VaultDashboard for better handling of active credentials and loading states.
- Removed unnecessary line breaks in the JSX structure to enhance clarity. - Reformatted the JSON stringification logic for better readability and maintainability.
- Updated next.config.ts to set outputFileTracingRoot to process.cwd(). - Added baseline-browser-mapping dependency to package.json and package-lock.json. - Adjusted peer dependencies in package-lock.json for various packages. - Cleaned up SavedCredentialsCard component by removing unused props.
- Introduced a new credential template for the Impacta Certificate, including fields for holder name and description. - Updated the credential issuance logic to conditionally include the issuer name for the Impacta Certificate. - Enhanced the DynamicIssueForm to support expiration date validation based on template fields.
…elements and layout
…subject fields - Added optional fields `issuerName` and `issuerDid` to the Credential type for improved credential metadata. - Updated the `adaptVcToCredential` function to incorporate new fields and dynamically include additional subject fields. - Enhanced the `useShareCredential` hook to conditionally display the new issuer fields. - Modified the `useVerifyCard` hook to recognize `issuerDid` as a valid identifier.
…al sharing - Reintroduced the `issuerName` field in the `useShareCredential` hook to ensure proper handling of credential metadata. - Adjusted the base array to include `issuerName` for consistent credential sharing functionality.
Feat/template credencial
…ial handling - Added a new page for the Impacta Bootcamp Certificate, integrating the Certificate component for display. - Enhanced the `useCredentialVerify` and `useShareCredential` hooks to support the new Impacta Certificate type, including additional fields for credential sharing. - Updated the `CredentialVerify` and `ShareCredentialModal` components to conditionally render based on the Impacta Certificate type. - Refactored the `Certificate` component to accept props for dynamic rendering of certificate details.
- Standardized code formatting in `useShareCredential`, `CredentialVerify`, `ShareCredentialModal`, and `Certificate` components for improved readability. - Removed unnecessary line breaks and adjusted indentation for consistency.
- Removed the fetch request for sharing credentials, simplifying the logic within the `useShareCredential` hook. - Adjusted payload handling to focus on encoding the credential data without making an API call.
…nd sharing functionality - Introduced floating animations for decorative elements in the CertificateCanvas component using CSS keyframes. - Added state management for sharing the certificate URL via social media, utilizing the useEffect hook to capture the current window URL. - Updated layout and styling for improved responsiveness and visual appeal.
- Reformatted the share link logic in the Certificate component for better clarity and maintainability. - Ensured consistent indentation and line breaks for improved code structure.
…hook and update Certificate component - Implemented a fallback mechanism in the `useShareCredential` hook to handle sharing via an API, with inline encoding as a backup. - Updated the share link format in the Certificate component to include a more descriptive message for social media sharing, improving user engagement.
…mp Certificate - Updated the share link message in the Certificate component to ensure proper encoding and formatting for social media sharing. - Maintained consistency with previous enhancements to the sharing functionality.
- Replaced useEffect with a more concise useState initialization for the share URL, improving code clarity and performance. - Ensured the share URL is set correctly based on the window location, maintaining functionality for social media sharing.
- Simplified the initialization of the share URL state in the Certificate component for improved readability. - Ensured the share URL is correctly set based on the window location, maintaining existing functionality.
… Certificate component - Updated the share URL management in the Certificate component to utilize useSyncExternalStore, enhancing performance and clarity. - Maintained the functionality of dynamically setting the share URL based on the window location.
…rtificate sharing - Implemented a new method to generate compact, URL-safe identifiers for share links in the Certificate component. - Added functionality to download the certificate as an image, including QR code generation for easy sharing. - Updated the CertificateCanvas component to support ref forwarding for better integration with the download feature. - Removed the unused BafPage component to streamline the codebase.
…nents - Removed an unused line from the ImpactaCertificateCanvasProps type definition. - Streamlined the Certificate component by eliminating redundant comments and ensuring consistent formatting for improved readability.
Feat/skills ai
…d VaultDashboard components - Added a new `createSponsoredVault` function in the `useVault` hook to facilitate the creation of vaults on behalf of other wallets. - Updated the `VaultDashboard` component to include a user interface for entering the sponsor's wallet address and DID, along with a button to create the sponsored vault. - Integrated loading states and error handling for a better user experience during the vault creation process.
…ions - Removed unnecessary type assertions for `vaultExists` and `vcReadError` in the `useVault` hook. - Updated the toast notification in `VaultDashboard` to use a more descriptive message format for sponsored vault transactions.
- Deleted the AI assistant implementation, including the main component, hooks, and API route. - Removed the associated environment variable and knowledge base file. - Cleaned up references in the client layout and sidebar.
- Implemented a new `verifyVaultViaRpc` function in the `useVault` hook to check vault existence directly against the smart contract, enhancing accuracy. - Updated the `readDashboard` function to utilize the new verification method when the vault ID list is empty. - Refactored state management in `VaultDashboard` to streamline the display logic for vault existence checks.
New UI vault
- Added `createSponsoredVault` function to the `useVault` hook for handling sponsored vault creation. - Implemented logic to ensure recipients have a vault via sponsored vault when issuing the Impacta Bootcamp template. - Enhanced error handling for existing vault scenarios during the sponsored vault creation process.
…ndling - Added a loading state (`shareLoading`) to the `useCredentialVerify` hook to manage the loading process more effectively. - Updated the `CredentialVerify` component to display a loading spinner while credentials are being verified. - Improved handling of `shareType` to accommodate both string and array types, ensuring better flexibility in processing share parameters.
- Consolidated SVG attributes for the loading spinner in the CredentialVerify component to improve readability and maintainability.
- Added a new API route to verify issuance codes for Impacta Bootcamp certificates. - Introduced state management for issuance code in the `useIssueCredential` hook, including validation logic. - Updated the `DynamicIssueForm` to include an input for the issuance code, with validation feedback. - Created a `.env.example` file to define the required environment variable for the issuance code.
- Adjusted the text in the issuance code requirement message for better readability by consolidating the lines into a single paragraph.
- Updated the `useCredentialVerify` hook to change the type of `sp.type` to `unknown` for better type safety. - Enhanced the `useIssueCredential` hook to initialize `issuanceCode` from session storage and manage its state more effectively, including setting and removing the code in session storage based on user input.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Tip Try Coding Plans. Let us write the prompt for your AI agent so you can ship faster (with fewer bugs). Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Merge pull request #62 from ACTA-Team/develop
This pull request introduces comprehensive Next.js best practices documentation in the
.agents/skills/next-best-practicesdirectory. It covers a wide range of topics relevant to modern Next.js development, including file conventions, server and client component boundaries, async patterns, data fetching strategies, bundling, and debugging techniques. Each topic is organized into its own markdown file with practical code examples and migration tips.The most important changes include:
Documentation Structure and Coverage
SKILL.md, outlining key Next.js concepts and linking to detailed guides on file conventions, RSC boundaries, async APIs, error handling, route handlers, optimization, and more.Async Patterns and Data Fetching
async-patterns.mdto document new async APIs in Next.js 15+, including usage of asyncparams,searchParams,cookies(), andheaders(), plus migration codemod instructions.data-patterns.mddetailing the decision tree for choosing between Server Components, Server Actions, and Route Handlers, with guidance on avoiding data waterfalls and best practices for client data fetching.Bundling and Optimization
bundling.mdto address common issues with third-party packages, server-incompatible modules, CSS imports, polyfills, ESM/CommonJS compatibility, and bundle analysis, including Turbopack migration notes.Directives and Debugging
directives.md, explaining'use client','use server', and'use cache'with code samples and references.debug-tricks.mdwith advanced debugging tips, including usage of the MCP endpoint, available dev tools, and partial build strategies for faster iteration.