Skip to content

Commit 3818de8

Browse files
authored
Merge pull request Sofie-Automation#1301 from bbc/upstream/feat-list-routesets-in-adlib-actions
2 parents f8a1d75 + c228251 commit 3818de8

File tree

4 files changed

+20
-5
lines changed

4 files changed

+20
-5
lines changed

packages/blueprints-integration/src/context/adlibActionContext.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import type { IShowStyleUserContext } from './showStyleContext'
44
import { IPartAndPieceActionContext } from './partsAndPieceActionContext'
55
import { IExecuteTSRActionsContext } from './executeTsrActionContext'
66
import { IBlueprintPart, IBlueprintPartInstance, IBlueprintPiece } from '..'
7+
import { IRouteSetMethods } from './routeSetContext'
78

89
/** Actions */
910
export interface IDataStoreMethods {
@@ -24,7 +25,8 @@ export interface IActionExecutionContext
2425
IEventContext,
2526
IDataStoreMethods,
2627
IPartAndPieceActionContext,
27-
IExecuteTSRActionsContext {
28+
IExecuteTSRActionsContext,
29+
IRouteSetMethods {
2830
/** Fetch the showstyle config for the specified part */
2931
// getNextShowStyleConfig(): Readonly<{ [key: string]: ConfigItemValue }>
3032

@@ -38,8 +40,6 @@ export interface IActionExecutionContext
3840
/** Insert a queued part to follow the current part */
3941
queuePart(part: IBlueprintPart, pieces: IBlueprintPiece[]): Promise<IBlueprintPartInstance>
4042

41-
/** Switch RouteSet State*/
42-
switchRouteSet(routeSetId: string, state: boolean | 'toggle'): Promise<void>
4343
/** Misc actions */
4444
// updateAction(newManifest: Pick<IBlueprintAdLibActionManifest, 'description' | 'payload'>): void // only updates itself. to allow for the next one to do something different
4545
// executePeripheralDeviceAction(deviceId: string, functionName: string, args: any[]): Promise<any>
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
import { StudioRouteSet } from '@sofie-automation/shared-lib/dist/core/model/StudioRouteSet'
2+
3+
export interface IRouteSetMethods {
4+
/** Returns a list of the Routesets */
5+
listRouteSets(): Promise<Record<string, StudioRouteSet>>
6+
7+
/** Switch RouteSet State */
8+
switchRouteSet(routeSetId: string, state: boolean | 'toggle'): Promise<void>
9+
}

packages/job-worker/src/blueprints/context/adlibActions.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ import {
1313
Time,
1414
TSR,
1515
IBlueprintPlayoutDevice,
16+
StudioRouteSet,
1617
} from '@sofie-automation/blueprints-integration'
1718
import { PartInstanceId, PeripheralDeviceId } from '@sofie-automation/corelib/dist/dataModel/Ids'
1819
import { ReadonlyDeep } from 'type-fest'
@@ -28,6 +29,7 @@ import { DatastorePersistenceMode } from '@sofie-automation/shared-lib/dist/core
2829
import { removeTimelineDatastoreValue, setTimelineDatastoreValue } from '../../playout/datastore'
2930
import { executePeripheralDeviceAction, listPlayoutDevices } from '../../peripheralDevice'
3031
import { ActionPartChange, PartAndPieceInstanceActionService } from './services/PartAndPieceInstanceActionService'
32+
import { applyAndValidateOverrides } from '@sofie-automation/corelib/dist/settings/objectWithOverrides'
3133

3234
export class DatastoreActionExecutionContext
3335
extends ShowStyleUserContext
@@ -191,6 +193,10 @@ export class ActionExecutionContext extends ShowStyleUserContext implements IAct
191193
partInstance.blockTakeUntil(time)
192194
}
193195

196+
async listRouteSets(): Promise<Record<string, StudioRouteSet>> {
197+
return applyAndValidateOverrides(this._context.studio.routeSetsWithOverrides).obj
198+
}
199+
194200
async switchRouteSet(routeSetId: string, state: boolean | 'toggle'): Promise<void> {
195201
const affectsTimeline = this._playoutModel.switchRouteSet(routeSetId, state)
196202
this.forceRegenerateTimeline = this.forceRegenerateTimeline || affectsTimeline

packages/webui/src/client/ui/Status/SystemStatus/SystemStatus.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ export function SystemStatus(): JSX.Element {
2626
const systemStatus = useSystemStatus()
2727
const playoutDebugStates = usePlayoutDebugStates(devices)
2828

29-
const devicesHeirarchy = convertDevicesIntoHeirarchy(devices)
29+
const devicesHierarchy = convertDevicesIntoHeirarchy(devices)
3030

3131
return (
3232
<div className="mhl gutter system-status">
@@ -36,7 +36,7 @@ export function SystemStatus(): JSX.Element {
3636
<div className="mod mvl">
3737
{coreSystem && <CoreItem coreSystem={coreSystem} systemStatus={systemStatus} />}
3838

39-
{devicesHeirarchy.map((d) => (
39+
{devicesHierarchy.map((d) => (
4040
<DeviceItemWithChildren
4141
key={unprotectString(d.device._id)}
4242
playoutDebugStates={playoutDebugStates}

0 commit comments

Comments
 (0)