google-labs-jules[bot]
cd8e014f08
refactor: optimize cuesheet IntersectionObserver
...
Decouples the IntersectionObserver from the React component tree to
prevent
unnecessary re-renders of the entire Cuesheet table when row visibility
changes. Restores rootMargin for better UX and memoizes EventRow.
- Introduced `rowObserver.ts` to manage a global IntersectionObserver.
- Observer callback directly updates `useVisibleRowsStore`.
- Configured with `rootMargin: '400px 0px'` and `threshold: 0.01`
to pre-load and retain rows near the viewport, improving UX.
- `EventRow` components use `observeRow`/`unobserveRow` from
`rowObserver.ts`.
- `EventRow` is now wrapped in `React.memo` to prevent re-renders if
props
haven't changed when its parent re-renders.
- Removed observer creation and prop-drilling from `CuesheetBody.tsx`.
This ensures only individual rows re-render content based on visibility
and optimizes row component rendering, improving performance and UX.
2025-07-03 08:46:21 +02:00
Carlos Valente
24a3823d3b
refactor: entry actions in cuesheet
...
fix: insert entry before
fix: avoid double submit on enter
fix: move events in the rundown
fix: clone groups
2025-07-03 08:46:21 +02:00
Carlos Valente
8ad260d28a
refactor: cuesheet design review
...
fix: parsing of custom fields for blocks
refactor: extract cuesheet settings
refactor: cuesheet actions
refactor: improve cuesheet performance on resizing
2025-07-03 08:46:21 +02:00
Carlos Valente
aefa4cbf44
refactor: simple migrations and tweaks to cuesheet
2025-06-28 08:17:08 +02:00
Shobhit Nagpal
c8c2a05724
refactor: cuesheet time format ( #1634 )
2025-06-28 08:17:08 +02:00
Carlos Valente
473f50b493
feat: edit groups
2025-06-27 20:50:48 +02:00
Alex Christoffer Rasmussen
4872cd0a48
Colorised spreadsheet ( #1643 )
...
* feat: colorise spreadSheet with rundown color
* feat: add colorisation in spreadsheet for block
* feat: border color
* fix: cleanup accessible color
* fix: review before merge (https://github.com/cpvalente/ontime/pull/1608 )
* fix: usgae of map instead foreach (https://github.com/cpvalente/ontime/pull/1608 )
* Update apps/server/src/services/sheet-service/SheetService.ts
Co-authored-by: Carlos Valente <34649812+cpvalente@users.noreply.github.com >
* fix: comment condition
* fix: Remove Color plugin (but don't can get color like 'red' or 'black')
* fix: isLight for more clean code
* fix: remove map on isLight function
* fix: remove debug logger
* refactor colour
* lint
---------
Co-authored-by: Gwenitora <gwenitora.gardu74@gmail.com >
Co-authored-by: Gwenitora <61121870+Gwenitora@users.noreply.github.com >
Co-authored-by: Carlos Valente <34649812+cpvalente@users.noreply.github.com >
2025-06-24 22:38:03 +02:00
Carlos Valente
fc4c1bf22e
refactor: gather group metadata
2025-06-09 14:12:53 +02:00
Carlos Valente
abd9b127db
refactor: restructure model to contain an object of rundowns
2025-06-09 14:12:51 +02:00
Carlos Valente
133b3aa819
refactor: create hash of table state
2025-04-30 20:23:49 +02:00
Carlos Valente
62570899e8
fix: issue when user hides all columns
2025-04-30 20:23:49 +02:00
asharonbaltazar
d81f5fcfe1
chore(ui): update icons package ( #1556 )
...
* chore: add new icons package and remove the old one
* chore: update and consolidate imports
* chore: missed import
2025-03-25 16:36:47 -04:00
arc-alex
4a16378786
refactor: pad block row with extra columns
2025-03-04 22:01:21 +01:00
Shobhit Nagpal
e5b30770ce
feat: add table navigation to cuesheet table ( #1483 )
...
* refactor: cuesheet table body
* feat: add table navigation
2025-03-04 22:01:21 +01:00
Carlos Valente
570ff59cfc
feat: add custom field type of image
2025-02-26 21:42:24 +01:00
Carlos Valente
8c593b3487
refactor: use memoised selector
2025-02-23 21:50:01 +01:00
Carlos Valente
ba74622569
refactor: use native button
2025-02-23 21:50:01 +01:00
Carlos Valente
f76c0d1a6d
refactor: improve composition performance
2025-02-23 21:50:01 +01:00
Carlos Valente
84a5b4fe5b
refactor: use a single menu for table
2025-02-18 14:14:14 +01:00
Carlos Valente
2c8b6180d7
refactor: show menu only if enabled
2025-02-18 14:14:14 +01:00
Carlos Valente
7f39d035fd
refactor: show delayed times
2024-12-22 21:43:37 +01:00
Carlos Valente
bdd2a62cee
feat: allow editing times in cuesheet
2024-12-22 21:43:37 +01:00
Carlos Valente
b38a7e5c92
refactor: allow submitting same value
2024-12-22 21:43:37 +01:00
Carlos Valente
c9ef2465f8
refactor: visibility options
2024-12-20 21:15:26 +01:00
Carlos Valente
430b72c1d0
fix: missing return when data is handled
2024-12-20 21:15:26 +01:00
Carlos Valente
88b114020b
feat: edit duration in cuesheet
2024-12-20 21:15:26 +01:00
Carlos Valente
c445c42f8a
refactor: extract edit element in table
2024-12-20 21:15:26 +01:00
Carlos Valente
4cbe25a845
refactor: simplify update functions
2024-12-20 21:15:26 +01:00
Carlos Valente
ab6765b332
refactor: tweak table element styles
2024-12-20 21:15:26 +01:00
Carlos Valente
3d37f42fe0
refactor: tweak styling
2024-12-20 09:03:02 +01:00
Carlos Valente
1bdea8e436
refactor: edit cue field
2024-12-20 09:03:02 +01:00
Carlos Valente
8f30c0a7df
refactor: restructure element composition
2024-12-20 09:03:02 +01:00