• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

openSUSE / agama / 7288910074 / 1 – web
72%
master: 72%

Build:
DEFAULT BRANCH: master
Ran 21 Dec 2023 01:45PM UTC
Files 293
Run time 7s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

21 Dec 2023 01:42PM UTC coverage: 74.264% (+0.4%) from 73.853%
web – 7288910074.1

push

github

web-flow
[web] Improve core/Page component and change how Agama layout is handled (#925)

## The main change

As the project evolves, some decisions have been taken in regard to the
elements' placement in the UI. Although nothing is set in stone, the
truth is that these changes have been steady for several months already.
However, the UI internals haven't been updated accordingly to them,
keeping a complexity that comes from the early days of Agama when
everything was less defined.

It is the case of the core/Layout component and its slots, managed by
the react-teleporter dependency. They were there because of the need to
_influence_ the layout from its children, which fortunately is no longer
the case. E.g., it was needed to "teleport" a navigation link from the
page or page's section to the sidebar, something that was called
"contextual actions". Later, we realized that it was better to have a
kind of page menu accessible from the header. What is more, the Sidebar
ended up being relegated for holding only Agama stuff, which makes it
kind of _static_.

Thus, core/Layout and its _teleportable_ slots does not make sense
anymore. At this time they just provide a worst DX and a no longer
justifiable use of React Portals. Moreover, since core/Page has become a
cornerstone while it comes to Agama UI, it looks reasonable to build the
layout from there. Doesn't matter if in the future it's needed to manage
different page layouts, they can be extracted and _injected_ via
core/Page props or using another technique. About performance, it turns
out that _rendering everything_ when user navigates from one page to
another does not have a so negative impact. Remember that React (the UI
library Agama is using) [only changes the DOM nodes if there’s a
difference between
renders](https://react.dev/learn/render-and-commit#step-3-react-commits-changes-to-the-dom).
Furthermore, asking for _re-renders_ on user navigation is not as
different from a b... (continued)

1426 of 2171 branches covered (0.0%)

Branch coverage included in aggregate %.

5912 of 7710 relevant lines covered (76.68%)

39.17 hits per line

Source Files on job web - 7288910074.1
  • Tree
  • List 293
  • Changed 149
  • Source Changed 40
  • Coverage Changed 32
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Build 7288910074
  • fb910c41 on github
  • Prev Job for on master (#7288508458.1)
  • Next Job for on master (#7290413673.1)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc