Implements event layout coordinator
Introduces a coordinator to manage event layout calculations, separating this logic from rendering. It calculates stack levels and allocates event columns for improved visual organization of calendar events.
This commit is contained in:
parent
6b8c5d4673
commit
06356df2a3
4 changed files with 545 additions and 56 deletions
15
.workbench/scenarie3.html
Normal file
15
.workbench/scenarie3.html
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
<swp-day-column data-date="2025-10-07" style="--before-work-height: 240px; --after-work-top: 880px;"><swp-events-layer><swp-event-group class="cols-2 stack-level-3" data-stack-link="{"stackLevel":3}" style="top: 321px; margin-left: 45px; z-index: 103;"><div style="position: relative;"><swp-event data-event-id="S3B" data-title="Scenario 3: Event B" data-start="2025-10-07T08:00:00.000Z" data-end="2025-10-07T11:00:00.000Z" data-type="work" data-duration="180" style="position: absolute; top: 0px; height: 237px; left: 0px; right: 0px;">
|
||||
<swp-event-time data-duration="180">10:00 - 13:00</swp-event-time>
|
||||
<swp-event-title>Scenario 3: Event B</swp-event-title>
|
||||
</swp-event></div><div style="position: relative;"><swp-event data-event-id="S3D" data-title="Scenario 3: Event D" data-start="2025-10-07T10:30:00.000Z" data-end="2025-10-07T11:30:00.000Z" data-type="work" data-duration="60" style="position: absolute; top: 200px; height: 77px; left: 0px; right: 0px;">
|
||||
<swp-event-time data-duration="60">12:30 - 13:30</swp-event-time>
|
||||
<swp-event-title>Scenario 3: Event D</swp-event-title>
|
||||
</swp-event></div></swp-event-group><swp-event data-event-id="S3A" data-title="Scenario 3: Event A" data-start="2025-10-07T07:00:00.000Z" data-end="2025-10-07T13:00:00.000Z" data-type="work" data-duration="360" data-stack-link="{"stackLevel":0,"next":"S3B"}" style="position: absolute; top: 241px; height: 477px; left: 2px; right: 2px; margin-left: 0px; z-index: 100;">
|
||||
<swp-event-time data-duration="360">09:00 - 15:00</swp-event-time>
|
||||
<swp-event-title>Scenario 3: Event A</swp-event-title>
|
||||
</swp-event><swp-event data-event-id="S3C" data-title="Scenario 3: Event C" data-start="2025-10-07T09:00:00.000Z" data-end="2025-10-07T10:00:00.000Z" data-type="work" data-duration="60" data-stack-link="{"stackLevel":2,"prev":"S3B"}" style="position: absolute; top: 401px; height: 77px; left: 2px; right: 2px; margin-left: 30px; z-index: 102;">
|
||||
<swp-event-time data-duration="60">11:00 - 12:00</swp-event-time>
|
||||
<swp-event-title>Scenario 3: Event C</swp-event-title>
|
||||
</swp-event><swp-event data-event-id="S4A" data-title="Scenario 4: Event A" data-start="2025-10-07T14:00:00.000Z" data-end="2025-10-07T20:00:00.000Z" data-type="meeting" data-duration="360" data-stack-link="{"stackLevel":0,"next":"S4B"}" style="position: absolute; top: 801px; height: 477px; left: 2px; right: 2px; margin-left: 0px; z-index: 100;">
|
||||
<swp-event-time data-duration="360">16:00 - 22:00</swp-event-time>
|
||||
</swp-event></swp-events-layer></swp-day-column>
|
||||
Loading…
Add table
Add a link
Reference in a new issue