[PR #2652] [MERGED] refactor(frontend): drop Bulma components/pagination import #8433

Closed
opened 2026-04-20 18:12:57 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/go-vikunja/vikunja/pull/2652
Author: @tink-bot
Created: 4/17/2026
Status: Merged
Merged: 4/20/2026
Merged by: @kolaente

Base: mainHead: refactor-drop-bulma-pagination


📝 Commits (3)

  • 297bb64 refactor(frontend): port pagination rules into BasePagination and drop Bulma import
  • 0072f66 refactor(frontend): extract PaginationItem to own pagination-link styling
  • 060d44b fix(frontend): restore tablet pagination layout (space-between + flex order)

📊 Changes

6 files changed (+262 additions, -40 deletions)

View changed files

📝 frontend/src/components/base/BasePagination.vue (+80 -10)
📝 frontend/src/components/misc/Pagination.vue (+14 -13)
📝 frontend/src/components/misc/PaginationEmit.vue (+11 -11)
frontend/src/components/misc/PaginationItem.vue (+156 -0)
📝 frontend/src/styles/global.scss (+1 -1)
📝 frontend/src/styles/theme/background.scss (+0 -5)

📄 Description

Summary

  • Absorb all pagination rules from bulma-css-variables/sass/components/pagination into BasePagination.vue's scoped <style> block, using :deep() to reach slot content rendered by Pagination.vue / PaginationEmit.vue.
  • Port the .pagination-link:not(.is-current) theme override out of styles/theme/background.scss into an unscoped <style> on the same component so BasePagination now owns all of its styling.
  • Comment out the now-unused @import "bulma-css-variables/sass/components/pagination" in styles/global.scss.

No raw .pagination-* markup exists outside the three wrapper components, so these rules are only needed where BasePagination renders.

Test plan

  • pnpm lint:fix — clean (only pre-existing warnings in unrelated files)
  • pnpm lint:styles:fix — clean
  • pnpm test:unit --run — 1007/1007 passing
  • pnpm typecheck — errors are pre-existing on main; touched files produce no new errors
  • Visual smoke check: production build contains all ported rules under BasePagination's scope hash; live mount of BasePagination against the dev server at / shows correct current-page highlight (blue bg/white text), bordered prev/next buttons, ellipsis, consistent 40px height

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/go-vikunja/vikunja/pull/2652 **Author:** [@tink-bot](https://github.com/tink-bot) **Created:** 4/17/2026 **Status:** ✅ Merged **Merged:** 4/20/2026 **Merged by:** [@kolaente](https://github.com/kolaente) **Base:** `main` ← **Head:** `refactor-drop-bulma-pagination` --- ### 📝 Commits (3) - [`297bb64`](https://github.com/go-vikunja/vikunja/commit/297bb64488edd7dd7cf9e7faecc3369bba7513c6) refactor(frontend): port pagination rules into BasePagination and drop Bulma import - [`0072f66`](https://github.com/go-vikunja/vikunja/commit/0072f66f05e43a054b9eaeff1a731668fc69311d) refactor(frontend): extract PaginationItem to own pagination-link styling - [`060d44b`](https://github.com/go-vikunja/vikunja/commit/060d44bc4704964cd0ffbe648632ee447d4efc52) fix(frontend): restore tablet pagination layout (space-between + flex order) ### 📊 Changes **6 files changed** (+262 additions, -40 deletions) <details> <summary>View changed files</summary> 📝 `frontend/src/components/base/BasePagination.vue` (+80 -10) 📝 `frontend/src/components/misc/Pagination.vue` (+14 -13) 📝 `frontend/src/components/misc/PaginationEmit.vue` (+11 -11) ➕ `frontend/src/components/misc/PaginationItem.vue` (+156 -0) 📝 `frontend/src/styles/global.scss` (+1 -1) 📝 `frontend/src/styles/theme/background.scss` (+0 -5) </details> ### 📄 Description ## Summary - Absorb all pagination rules from `bulma-css-variables/sass/components/pagination` into `BasePagination.vue`'s scoped `<style>` block, using `:deep()` to reach slot content rendered by `Pagination.vue` / `PaginationEmit.vue`. - Port the `.pagination-link:not(.is-current)` theme override out of `styles/theme/background.scss` into an unscoped `<style>` on the same component so BasePagination now owns all of its styling. - Comment out the now-unused `@import "bulma-css-variables/sass/components/pagination"` in `styles/global.scss`. No raw `.pagination-*` markup exists outside the three wrapper components, so these rules are only needed where BasePagination renders. ## Test plan - [x] `pnpm lint:fix` — clean (only pre-existing warnings in unrelated files) - [x] `pnpm lint:styles:fix` — clean - [x] `pnpm test:unit --run` — 1007/1007 passing - [x] `pnpm typecheck` — errors are pre-existing on `main`; touched files produce no new errors - [x] Visual smoke check: production build contains all ported rules under BasePagination's scope hash; live mount of `BasePagination` against the dev server at `/` shows correct current-page highlight (blue bg/white text), bordered prev/next buttons, ellipsis, consistent 40px height --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2026-04-20 18:12:57 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/vikunja#8433