@@ -51,7 +51,7 @@ export interface ExpectedPackageDB {
5151
5252 created : Time
5353
54- package : ReadonlyDeep < ExpectedPackage . Any >
54+ package : ReadonlyDeep < Omit < ExpectedPackage . Base , 'listenToPackageInfoUpdates' > >
5555
5656 /**
5757 * The ingest sources that generated this package.
@@ -64,22 +64,30 @@ export interface ExpectedPackageDB {
6464 // }
6565}
6666
67- export interface ExpectedPackageIngestSourceBucketPiece {
67+ export interface ExpectedPackageIngestSourceBase {
68+ /** The id of the package as known by the blueprints */
69+ blueprintPackageId : string
70+
71+ /** Whether the blueprints are listening for updates to packageInfos for this package */
72+ listenToPackageInfoUpdates : boolean | undefined
73+ }
74+
75+ export interface ExpectedPackageIngestSourceBucketAdlibPiece extends ExpectedPackageIngestSourceBase {
6876 fromPieceType : ExpectedPackageDBType . BUCKET_ADLIB
6977 /** The Bucket adlib this package belongs to */
7078 pieceId : BucketAdLibId
7179 /** The `externalId` of the Bucket adlib this package belongs to */
7280 pieceExternalId : string
7381}
74- export interface ExpectedPackageIngestSourceBucketAdlibAction {
82+ export interface ExpectedPackageIngestSourceBucketAdlibAction extends ExpectedPackageIngestSourceBase {
7583 fromPieceType : ExpectedPackageDBType . BUCKET_ADLIB_ACTION
7684 /** The Bucket adlib-action this package belongs to */
7785 pieceId : BucketAdLibActionId
7886 /** The `externalId` of the Bucket adlib-action this package belongs to */
7987 pieceExternalId : string
8088}
8189
82- export interface ExpectedPackageIngestSourcePiece {
90+ export interface ExpectedPackageIngestSourcePiece extends ExpectedPackageIngestSourceBase {
8391 fromPieceType : ExpectedPackageDBType . PIECE | ExpectedPackageDBType . ADLIB_PIECE
8492 /** The Piece this package belongs to */
8593 pieceId : PieceId
@@ -88,7 +96,7 @@ export interface ExpectedPackageIngestSourcePiece {
8896 /** The Segment this package belongs to */
8997 segmentId : SegmentId
9098}
91- export interface ExpectedPackageIngestSourceAdlibAction {
99+ export interface ExpectedPackageIngestSourceAdlibAction extends ExpectedPackageIngestSourceBase {
92100 fromPieceType : ExpectedPackageDBType . ADLIB_ACTION
93101 /** The Piece this package belongs to */
94102 pieceId : AdLibActionId
@@ -97,29 +105,29 @@ export interface ExpectedPackageIngestSourceAdlibAction {
97105 /** The Segment this package belongs to */
98106 segmentId : SegmentId
99107}
100- export interface ExpectedPackageIngestSourceBaselineAdlibPiece {
108+ export interface ExpectedPackageIngestSourceBaselineAdlibPiece extends ExpectedPackageIngestSourceBase {
101109 fromPieceType : ExpectedPackageDBType . BASELINE_ADLIB_PIECE
102110 /** The Piece this package belongs to */
103111 pieceId : PieceId
104112}
105- export interface ExpectedPackageIngestSourceBaselineAdlibAction {
113+ export interface ExpectedPackageIngestSourceBaselineAdlibAction extends ExpectedPackageIngestSourceBase {
106114 fromPieceType : ExpectedPackageDBType . BASELINE_ADLIB_ACTION
107115 /** The Piece this package belongs to */
108116 pieceId : RundownBaselineAdLibActionId
109117}
110- export interface ExpectedPackageIngestSourceBaselineObjects {
118+ export interface ExpectedPackageIngestSourceBaselineObjects extends ExpectedPackageIngestSourceBase {
111119 fromPieceType : ExpectedPackageDBType . RUNDOWN_BASELINE_OBJECTS
112120}
113121
114- export interface ExpectedPackageIngestSourceStudioBaseline {
122+ export interface ExpectedPackageIngestSourceStudioBaseline extends ExpectedPackageIngestSourceBase {
115123 // Future: Technically this is a playout source, but for now it needs to be treated as an ingest source
116124 fromPieceType : ExpectedPackageDBType . STUDIO_BASELINE_OBJECTS
117125}
118126
119127export type ExpectedPackageIngestSourcePart = ExpectedPackageIngestSourcePiece | ExpectedPackageIngestSourceAdlibAction
120128
121129export type ExpectedPackageIngestSourceBucket =
122- | ExpectedPackageIngestSourceBucketPiece
130+ | ExpectedPackageIngestSourceBucketAdlibPiece
123131 | ExpectedPackageIngestSourceBucketAdlibAction
124132
125133export type ExpectedPackageIngestSourceRundownBaseline =
@@ -154,13 +162,14 @@ export function getExpectedPackageIdNew(
154162 /** Preferably a RundownId or BucketId, but StudioId is allowed when not owned by a rundown or bucket */
155163 parentId : RundownId | StudioId | BucketId ,
156164 /** The locally unique id of the expectedPackage */
157- expectedPackage : ReadonlyDeep < ExpectedPackage . Any >
165+ expectedPackage : ReadonlyDeep < Omit < ExpectedPackage . Base , 'listenToPackageInfoUpdates' > >
158166) : ExpectedPackageId {
159167 // This may be too agressive, but we don't know how to merge some of the properties
160168 const objHash = hashObj ( {
161169 ...expectedPackage ,
170+ _id : '' , // Ignore the _id, this is not guaranteed to be stable
162171 listenToPackageInfoUpdates : false , // Not relevant for the hash
163- } satisfies ReadonlyDeep < ExpectedPackage . Any > )
172+ } satisfies ReadonlyDeep < ExpectedPackage . Base > )
164173
165174 return protectString ( `${ parentId } _${ getHash ( objHash ) } ` )
166175}
0 commit comments