Skip to content

Refactored pagination component#282

Merged
arhtudormorar merged 14 commits intodevelopmentfrom
ic/feature/refactor-pagination
Dec 18, 2025
Merged

Refactored pagination component#282
arhtudormorar merged 14 commits intodevelopmentfrom
ic/feature/refactor-pagination

Conversation

@iuliacimpeanu
Copy link
Copy Markdown
Contributor

@iuliacimpeanu iuliacimpeanu commented Dec 12, 2025

Turn Pagination component into function and stop exporting webcomponent

@gemini-code-assist
Copy link
Copy Markdown

Summary of Changes

Hello @iuliacimpeanu, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request focuses on a significant refactoring of the pagination component, transitioning it from a Stencil class-based implementation to a more modern and flexible functional component. This change aims to improve the component's maintainability and integration across the application, particularly within the AddressTable component, which has been updated to consume the new functional pagination. Additionally, the MvxTransactionsTable component now supports a pageChange event, enhancing its interactive capabilities.

Highlights

  • Pagination Component Refactoring: The mvx-pagination component has been refactored from a Stencil class-based component into a functional component named Pagination. This change streamlines its implementation and enhances reusability.
  • Component Definition Updates: The src/components.d.ts file has been updated to remove the old MvxPagination interface and related event maps, reflecting the removal of the class-based component. It also adds MvxTransactionsTableCustomEvent and updates HTMLMvxTransactionsTableElement to include event listeners for a pageChange event.
  • Integration in AddressTable: The AddressTable component (src/components/visual/address-table/address-table.tsx) has been updated to import and utilize the new functional Pagination component. This includes adapting to the new prop-based event handling for page changes and managing tooltip state internally.
  • Storybook Updates: The Storybook configuration for the pagination component (src/components/visual/pagination/pagination.stories.tsx) has been adjusted to correctly type and render the new functional Pagination component.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request successfully refactors the Pagination component from a Stencil class-based web component to a stateless, controlled functional component. This is a great improvement for maintainability and aligns with modern frontend practices by making it a controlled component. The state is now correctly managed by parent components like AddressTable. The changes are well-contained and the logic has been preserved correctly. I've found one issue in the Storybook file that needs to be addressed, and another suggestion for improving code organization.

@iuliacimpeanu iuliacimpeanu changed the title Refactored pagination component WIP - Refactored pagination component - NOT FINISHED Dec 12, 2025
@arhtudormorar arhtudormorar marked this pull request as ready for review December 18, 2025 12:04
@arhtudormorar arhtudormorar changed the title WIP - Refactored pagination component - NOT FINISHED Refactored pagination component Dec 18, 2025
@arhtudormorar arhtudormorar merged commit c657c83 into development Dec 18, 2025
2 checks passed
@arhtudormorar arhtudormorar deleted the ic/feature/refactor-pagination branch December 18, 2025 15:53
arhtudormorar added a commit that referenced this pull request Jan 13, 2026
* Refactored sign transactions panel internal components (#267)

* Update styles

* Refactored sign transactions footer

* Refactored copy button

* Refactored button component

* Refactored tooltip component

* Refactored spinner icon component

* Refactored arrow right component

* Updated copy button

* Updated styles

* Refactored sign transactions overview

* Refactored sign-transactions-advanced and sign-transactions-header

* Updated styles

* Fixed test

* Updated changelog

* Updated files

* Fixes after review

* Eslint and prettierrc fixes (#270)

* Eslint fixes

* Prettierrc fixes

* Updated changelog

* Added minimize/maximize toasts (#272)

* Added min/max toasts

* Update changelog

* Replace icon

* Fixed trimmed address not showing in address-table (#273)

* Fixed addresses not showing

* Fix issue with trimWrapperVisible

* Fixed unlockPanelFooter styles

* Updated Trim

* Updated Trim

* Updated changelog

---------

Co-authored-by: Gavrila Andrei <andrei.gavrila@multiversx.com>

* Refactored side panel components (#271)

* Update styles

* Refactored sign transactions footer

* Refactored copy button

* Refactored button component

* Refactored tooltip component

* Refactored spinner icon component

* Refactored arrow right component

* Updated copy button

* Updated styles

* Refactored sign transactions overview

* Refactored sign-transactions-advanced and sign-transactions-header

* Updated styles

* Updated styles

* Fixed test

* Updated changelog

* Updated changelog

* Updated files

* Fixes after review

* Fixes after review

* Updates files location

* Refactored side-panel-header comp

* Refactored side-panel comp

* Refactored side-panel-swipper styles

* Refactored side panel swiper component.

* Updated components

* Updated styles

* Updated changelog

* Fixed test

* Fixes after review

* Refactored transaction list item (#274)

* Refactored styles

* Refactored transaction-list-item component

* Updated changelog

* Fixed tests

* Fixes after review

* Upgraded version

* Fixed copy button (#276)

* Fixed copy button

* Upgraded version

* Sync development with main (#278)

* 0.1.5 (#275)

* Refactored sign transactions panel internal components (#267)

* Update styles

* Refactored sign transactions footer

* Refactored copy button

* Refactored button component

* Refactored tooltip component

* Refactored spinner icon component

* Refactored arrow right component

* Updated copy button

* Updated styles

* Refactored sign transactions overview

* Refactored sign-transactions-advanced and sign-transactions-header

* Updated styles

* Fixed test

* Updated changelog

* Updated files

* Fixes after review

* Eslint and prettierrc fixes (#270)

* Eslint fixes

* Prettierrc fixes

* Updated changelog

* Added minimize/maximize toasts (#272)

* Added min/max toasts

* Update changelog

* Replace icon

* Fixed trimmed address not showing in address-table (#273)

* Fixed addresses not showing

* Fix issue with trimWrapperVisible

* Fixed unlockPanelFooter styles

* Updated Trim

* Updated Trim

* Updated changelog

---------

Co-authored-by: Gavrila Andrei <andrei.gavrila@multiversx.com>

* Refactored side panel components (#271)

* Update styles

* Refactored sign transactions footer

* Refactored copy button

* Refactored button component

* Refactored tooltip component

* Refactored spinner icon component

* Refactored arrow right component

* Updated copy button

* Updated styles

* Refactored sign transactions overview

* Refactored sign-transactions-advanced and sign-transactions-header

* Updated styles

* Updated styles

* Fixed test

* Updated changelog

* Updated changelog

* Updated files

* Fixes after review

* Fixes after review

* Updates files location

* Refactored side-panel-header comp

* Refactored side-panel comp

* Refactored side-panel-swipper styles

* Refactored side panel swiper component.

* Updated components

* Updated styles

* Updated changelog

* Fixed test

* Fixes after review

* Refactored transaction list item (#274)

* Refactored styles

* Refactored transaction-list-item component

* Updated changelog

* Fixed tests

* Fixes after review

* Upgraded version

---------

Co-authored-by: Gavrila Andrei <andrei.gavrila@multiversx.com>

* Updated changelog

---------

Co-authored-by: Gavrila Andrei <andrei.gavrila@multiversx.com>

* Fixed compatibility issue on stencil/core (#279)

* Updated package version

* Updated changelog

* Updated lockfile

* Upgraded version

* Refactored pagination component (#282)

* Refactored pagination comp

* Refactored pagination ellipsis

* Work on pagination

* Refactor components

* Work on pagination

* Fixed pagination story

* Move pagination to address-table

* Update CHANGELOG

* Try fix tests

* Remove log

* Remove unused contentclass

* Remove logs

* Minor edits

* /gemini review

---------

Co-authored-by: Tudor Morar <tudor.morar@multiversx.com>

* Select provider (#285)

* 0.1.7 (#281)

* Refactored sign transactions panel internal components (#267)

* Update styles

* Refactored sign transactions footer

* Refactored copy button

* Refactored button component

* Refactored tooltip component

* Refactored spinner icon component

* Refactored arrow right component

* Updated copy button

* Updated styles

* Refactored sign transactions overview

* Refactored sign-transactions-advanced and sign-transactions-header

* Updated styles

* Fixed test

* Updated changelog

* Updated files

* Fixes after review

* Eslint and prettierrc fixes (#270)

* Eslint fixes

* Prettierrc fixes

* Updated changelog

* Added minimize/maximize toasts (#272)

* Added min/max toasts

* Update changelog

* Replace icon

* Fixed trimmed address not showing in address-table (#273)

* Fixed addresses not showing

* Fix issue with trimWrapperVisible

* Fixed unlockPanelFooter styles

* Updated Trim

* Updated Trim

* Updated changelog

---------

Co-authored-by: Gavrila Andrei <andrei.gavrila@multiversx.com>

* Refactored side panel components (#271)

* Update styles

* Refactored sign transactions footer

* Refactored copy button

* Refactored button component

* Refactored tooltip component

* Refactored spinner icon component

* Refactored arrow right component

* Updated copy button

* Updated styles

* Refactored sign transactions overview

* Refactored sign-transactions-advanced and sign-transactions-header

* Updated styles

* Updated styles

* Fixed test

* Updated changelog

* Updated changelog

* Updated files

* Fixes after review

* Fixes after review

* Updates files location

* Refactored side-panel-header comp

* Refactored side-panel comp

* Refactored side-panel-swipper styles

* Refactored side panel swiper component.

* Updated components

* Updated styles

* Updated changelog

* Fixed test

* Fixes after review

* Refactored transaction list item (#274)

* Refactored styles

* Refactored transaction-list-item component

* Updated changelog

* Fixed tests

* Fixes after review

* Upgraded version

* Fixed copy button (#276)

* Fixed copy button

* Upgraded version

* Sync development with main (#278)

* 0.1.5 (#275)

* Refactored sign transactions panel internal components (#267)

* Update styles

* Refactored sign transactions footer

* Refactored copy button

* Refactored button component

* Refactored tooltip component

* Refactored spinner icon component

* Refactored arrow right component

* Updated copy button

* Updated styles

* Refactored sign transactions overview

* Refactored sign-transactions-advanced and sign-transactions-header

* Updated styles

* Fixed test

* Updated changelog

* Updated files

* Fixes after review

* Eslint and prettierrc fixes (#270)

* Eslint fixes

* Prettierrc fixes

* Updated changelog

* Added minimize/maximize toasts (#272)

* Added min/max toasts

* Update changelog

* Replace icon

* Fixed trimmed address not showing in address-table (#273)

* Fixed addresses not showing

* Fix issue with trimWrapperVisible

* Fixed unlockPanelFooter styles

* Updated Trim

* Updated Trim

* Updated changelog

---------

Co-authored-by: Gavrila Andrei <andrei.gavrila@multiversx.com>

* Refactored side panel components (#271)

* Update styles

* Refactored sign transactions footer

* Refactored copy button

* Refactored button component

* Refactored tooltip component

* Refactored spinner icon component

* Refactored arrow right component

* Updated copy button

* Updated styles

* Refactored sign transactions overview

* Refactored sign-transactions-advanced and sign-transactions-header

* Updated styles

* Updated styles

* Fixed test

* Updated changelog

* Updated changelog

* Updated files

* Fixes after review

* Fixes after review

* Updates files location

* Refactored side-panel-header comp

* Refactored side-panel comp

* Refactored side-panel-swipper styles

* Refactored side panel swiper component.

* Updated components

* Updated styles

* Updated changelog

* Fixed test

* Fixes after review

* Refactored transaction list item (#274)

* Refactored styles

* Refactored transaction-list-item component

* Updated changelog

* Fixed tests

* Fixes after review

* Upgraded version

---------

Co-authored-by: Gavrila Andrei <andrei.gavrila@multiversx.com>

* Updated changelog

---------

Co-authored-by: Gavrila Andrei <andrei.gavrila@multiversx.com>

* Fixed compatibility issue on stencil/core (#279)

* Updated package version

* Updated changelog

* Updated lockfile

* Upgraded version

---------

Co-authored-by: Gavrila Andrei <andrei.gavrila@multiversx.com>
Co-authored-by: Tudor Morar <tudor.morar@multiversx.com>

* v0.1.8 (#283)

- fix SidePanel WalletConnect issues
- (temp) fix sdk-dapp 5.5.1 breaking changes
- update publish script
- pnpm test fix

* Add provider selection handling to unlock panel

- Subscribed to SELECT_PROVIDER event to handle provider selection.
- Implemented handleProviderSelection method to initiate login with the selected provider.
- Updated unsubscribe functions to include the new subscription.

* Update CHANGELOG

* Update CHANGELOG

* Update version

---------

Co-authored-by: Iulia Cimpeanu <72752718+iuliacimpeanu@users.noreply.github.com>
Co-authored-by: Gavrila Andrei <andrei.gavrila@multiversx.com>
Co-authored-by: Radu Mojic <radu.mojic@multiversx.com>

* Remove unused file

---------

Co-authored-by: Iulia Cimpeanu <72752718+iuliacimpeanu@users.noreply.github.com>
Co-authored-by: Gavrila Andrei <andrei.gavrila@multiversx.com>
Co-authored-by: Iulia Cimpeanu <iuliaalexandra.ignat@gmail.com>
Co-authored-by: Radu Mojic <radu.mojic@multiversx.com>
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.

2 participants