Refactor: split runtime state (#1725)

* refactor: runtime types

* refactor: runtimeState functions to use the split type

* refactor: RuntimeService to use the new split data

* refactor: use the split data in the UI

* update comments

* refactor: rename runtime to offset

* fix utils test
This commit is contained in:
Alex Christoffer Rasmussen
2025-08-14 19:29:25 +02:00
committed by Carlos Valente
parent ed93cf313a
commit 048a9c96ea
26 changed files with 400 additions and 518 deletions
@@ -15,7 +15,7 @@ describe('getExpectedStart()', () => {
currentDay: 0,
totalGap: 0,
offset: 0,
offsetMode: OffsetMode.Absolute,
mode: OffsetMode.Absolute,
actualStart: null,
plannedStart: null,
};
@@ -34,7 +34,7 @@ describe('getExpectedStart()', () => {
currentDay: 0,
totalGap: 0,
offset: 20,
offsetMode: OffsetMode.Absolute,
mode: OffsetMode.Absolute,
actualStart: null,
plannedStart: null,
};
@@ -53,7 +53,7 @@ describe('getExpectedStart()', () => {
currentDay: 0,
totalGap: 0,
offset: -10,
offsetMode: OffsetMode.Absolute,
mode: OffsetMode.Absolute,
actualStart: null,
plannedStart: null,
};
@@ -72,7 +72,7 @@ describe('getExpectedStart()', () => {
currentDay: 0,
totalGap: 20,
offset: 20,
offsetMode: OffsetMode.Absolute,
mode: OffsetMode.Absolute,
actualStart: null,
plannedStart: null,
};
@@ -91,7 +91,7 @@ describe('getExpectedStart()', () => {
currentDay: 0,
totalGap: 10,
offset: 20,
offsetMode: OffsetMode.Absolute,
mode: OffsetMode.Absolute,
actualStart: 0,
plannedStart: 0,
};
@@ -109,7 +109,7 @@ describe('getExpectedStart()', () => {
actualStart: 100,
plannedStart: 0,
offset: 0,
offsetMode: OffsetMode.Relative,
mode: OffsetMode.Relative,
};
const timeStartEvent2 = 10;
@@ -189,7 +189,7 @@ describe('getExpectedStart()', () => {
actualStart: 100,
plannedStart: 0,
offset: 0,
offsetMode: OffsetMode.Relative,
mode: OffsetMode.Relative,
};
expect(getExpectedStart(testEvent, { ...testState, isLinkedToLoaded: true })).toBe(120);
@@ -213,7 +213,7 @@ describe('getExpectedStart()', () => {
actualStart: 100,
plannedStart: 0,
offset: 0,
offsetMode: OffsetMode.Relative,
mode: OffsetMode.Relative,
};
expect(getExpectedStart(testEvent, { ...testState, isLinkedToLoaded: true })).toBe(120);
@@ -236,7 +236,7 @@ describe('getExpectedStart()', () => {
actualStart: 100,
plannedStart: 0,
offset: 0,
offsetMode: OffsetMode.Relative,
mode: OffsetMode.Relative,
};
// this event will start the current day
@@ -270,7 +270,7 @@ describe('getExpectedStart()', () => {
actualStart: 100,
plannedStart: 0,
offset: 0,
offsetMode: OffsetMode.Relative,
mode: OffsetMode.Relative,
isLinkedToLoaded: false,
};
@@ -19,13 +19,13 @@ export function getExpectedStart(
totalGap: number;
isLinkedToLoaded: boolean;
offset: number;
offsetMode: OffsetMode;
mode: OffsetMode;
actualStart: MaybeNumber;
plannedStart: MaybeNumber;
},
): number {
const { timeStart, dayOffset, delay } = event;
const { currentDay, totalGap, isLinkedToLoaded, offset, offsetMode, actualStart, plannedStart } = state;
const { currentDay, totalGap, isLinkedToLoaded, offset, mode, actualStart, plannedStart } = state;
//How many days from the currently running event to this one
const relativeDayOffset = dayOffset - currentDay;
@@ -37,7 +37,7 @@ export function getExpectedStart(
let relativeStartOffset = 0;
if (offsetMode === OffsetMode.Relative) {
if (mode === OffsetMode.Relative) {
relativeStartOffset = (actualStart ?? 0) - (plannedStart ?? 0);
}