chore: shared rundown state cache resolution helpers#1695
Conversation
|
Important Review skippedToo many files! This PR contains 173 files, which is 23 over the limit of 150. ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (173)
You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Codecov Report❌ Patch coverage is 📢 Thoughts on this report? Let us know! |
|
@coderabbitai review |
✅ Actions performedReview triggered.
|
jstarpl
left a comment
There was a problem hiding this comment.
I've got a couple of nitpicks around the growing signatures of the helper functions - they were bad enough already, but now they've grown to 20+ positional arguments.
But my main objection is around exporting getSourceLayerClassName et al. out of webui and creating a tight binding across 2 packages - and I assume possibly more in the future - on CSS classes: can you provide a bit more perspective on why that's desired/necessary?
4545e66 to
44fe05e
Compare
e41af66 to
5b78e0b
Compare
* fix: existing rundown check in postRundown * chore: add code documentation
showstyle fix
…rExtended interface into core
Co-authored-by: Jan Starzak <jan.starzak@gmail.com>
5b78e0b to
0e3ce54
Compare
95acac3 to
f9b827b
Compare
About the Contributor
This pull request is posted on behalf of the BBC and the CBC.
Type of Contribution
This is a: Code improvement
Current Behavior
Rundown/segment state resolution logic used by the web UI (especially quick-loop / loop-related timing and resolved segment simulation helpers) was implemented across multiple layers/modules, requiring wrappers and duplications between core playout logic and the web UI/meteor side.
New Behavior
Shared rundown state resolution helpers are centralized in
packages/corelib/src/playout/stateCacheResolver.ts, and the web UI now imports and uses the shared exported functions from corelib (eg. loop status helpers likeisLoopRunning, quick-loop helpers likededuplicatePartInstancesForQuickLoop, and shared class-name helpers likegetSourceLayerClassName).Additionally, UI-extended/core-used type contracts (eg.
PartExtended,PartInstanceLimited) have been moved intocorelib’sdataModelso both core and UI use the same TypeScript types.This allows the helpers to be used in other packages like the LSG.
Testing
Affected areas
corelibdata model).Time Frame
Status