@nxtedition/types 23.0.60 → 23.0.62
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/common/asset-indexer.d.ts +98 -0
- package/dist/common/asset-indexer.js +1 -0
- package/dist/common/index.d.ts +4 -0
- package/dist/common/index.js +4 -0
- package/dist/common/panel-property.d.ts +29 -0
- package/dist/common/panel-property.js +1 -0
- package/dist/common/schema-property.d.ts +12 -0
- package/dist/common/schema-property.js +1 -0
- package/dist/common/settings.d.ts +16 -0
- package/dist/common/subtitle.d.ts +4 -0
- package/dist/common/subtitle.js +1 -0
- package/dist/nxtpression.d.ts +295 -6
- package/dist/records/domains/asset.d.ts +11 -2
- package/dist/records/domains/device.d.ts +16 -0
- package/dist/records/domains/device.js +1 -0
- package/dist/records/domains/folder.d.ts +6 -0
- package/dist/records/domains/folder.js +1 -0
- package/dist/records/domains/index.d.ts +9 -1
- package/dist/records/domains/index.js +4 -0
- package/dist/records/domains/ingestschedule.d.ts +45 -0
- package/dist/records/domains/ingestschedule.js +1 -0
- package/dist/records/domains/note.d.ts +6 -0
- package/dist/records/domains/note.js +1 -0
- package/dist/records/domains/panel.d.ts +1 -28
- package/dist/records/domains/settings.d.ts +5 -0
- package/dist/records/exact/asset.d.ts +18 -1
- package/dist/records/exact/media.d.ts +40 -1
- package/dist/records/validate/assert-guard.js +3018 -1066
- package/dist/records/validate/assert.js +3030 -1068
- package/dist/records/validate/is.js +89 -8
- package/dist/records/validate/schemas.js +1932 -530
- package/dist/records/validate/stringify.js +252 -13
- package/dist/records/validate/utils.js +2 -2
- package/dist/records/validate/validate-equals.js +4737 -1738
- package/dist/records/validate/validate.js +1968 -230
- package/dist/rpc.d.ts +3 -2
- package/package.json +1 -1
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import type { IsoTimestamp } from './index.ts';
|
|
2
|
+
export interface AssetIndexerCoreFields {
|
|
3
|
+
id: string;
|
|
4
|
+
title?: string;
|
|
5
|
+
description?: string;
|
|
6
|
+
created?: IsoTimestamp;
|
|
7
|
+
createdBy?: string;
|
|
8
|
+
createdByTitle?: string;
|
|
9
|
+
origin?: string;
|
|
10
|
+
modified?: IsoTimestamp;
|
|
11
|
+
modifiedBy?: string;
|
|
12
|
+
modifiedByAll?: string[];
|
|
13
|
+
modifiedByTitle?: string;
|
|
14
|
+
duration?: number;
|
|
15
|
+
tags?: string[];
|
|
16
|
+
deadlines?: IsoTimestamp[];
|
|
17
|
+
deadlinesCount?: number;
|
|
18
|
+
deadlines_date_range?: Array<{
|
|
19
|
+
gte: IsoTimestamp;
|
|
20
|
+
lte: IsoTimestamp;
|
|
21
|
+
}>;
|
|
22
|
+
assignees?: string[];
|
|
23
|
+
assigneesCount?: number;
|
|
24
|
+
locations?: Array<{
|
|
25
|
+
lat: number;
|
|
26
|
+
lon: number;
|
|
27
|
+
}>;
|
|
28
|
+
locationsCount?: number;
|
|
29
|
+
types?: string[];
|
|
30
|
+
primaryType?: string;
|
|
31
|
+
rawTypes?: string[];
|
|
32
|
+
status?: {
|
|
33
|
+
messages?: Array<{
|
|
34
|
+
code?: string;
|
|
35
|
+
level?: number;
|
|
36
|
+
}>;
|
|
37
|
+
};
|
|
38
|
+
published?: IsoTimestamp[];
|
|
39
|
+
publishedCount?: number;
|
|
40
|
+
storage?: {
|
|
41
|
+
files?: string[];
|
|
42
|
+
replicas?: string[];
|
|
43
|
+
locations?: string[];
|
|
44
|
+
zones?: string[];
|
|
45
|
+
uploading?: boolean;
|
|
46
|
+
size?: number;
|
|
47
|
+
filesCount?: number;
|
|
48
|
+
replicasCount?: number;
|
|
49
|
+
locationsCount?: number;
|
|
50
|
+
};
|
|
51
|
+
refs?: number;
|
|
52
|
+
refsByType?: Record<string, number>;
|
|
53
|
+
recurrence_date_range?: {
|
|
54
|
+
gte: IsoTimestamp;
|
|
55
|
+
lte: IsoTimestamp | null;
|
|
56
|
+
};
|
|
57
|
+
media_date_range?: {
|
|
58
|
+
gte: IsoTimestamp;
|
|
59
|
+
lte: IsoTimestamp;
|
|
60
|
+
};
|
|
61
|
+
ingestschedule_date_range?: {
|
|
62
|
+
gte: IsoTimestamp;
|
|
63
|
+
lte: IsoTimestamp | null;
|
|
64
|
+
};
|
|
65
|
+
ingestschedule?: {
|
|
66
|
+
type?: string;
|
|
67
|
+
sources?: string[];
|
|
68
|
+
routes?: string[];
|
|
69
|
+
};
|
|
70
|
+
username?: string;
|
|
71
|
+
user?: string;
|
|
72
|
+
"note.text"?: string;
|
|
73
|
+
subtitles?: string;
|
|
74
|
+
graphics?: string;
|
|
75
|
+
story?: {
|
|
76
|
+
content?: string;
|
|
77
|
+
graphics?: string[];
|
|
78
|
+
};
|
|
79
|
+
storyboard?: {
|
|
80
|
+
content?: unknown[];
|
|
81
|
+
};
|
|
82
|
+
/**
|
|
83
|
+
* These fields are populated from the provided `{id}:asset.media?` record as
|
|
84
|
+
* configured in the `asset.media` record. Due to the dynamic nature of that record,
|
|
85
|
+
* it's hard to type these fields more specifically. For now we only list a few
|
|
86
|
+
* (probably) expected fields.
|
|
87
|
+
*/
|
|
88
|
+
media?: {
|
|
89
|
+
audio?: unknown;
|
|
90
|
+
video?: unknown;
|
|
91
|
+
timecode?: unknown;
|
|
92
|
+
language?: unknown;
|
|
93
|
+
transcribe?: unknown;
|
|
94
|
+
};
|
|
95
|
+
embedding?: Array<{
|
|
96
|
+
vector: number[];
|
|
97
|
+
}>;
|
|
98
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/dist/common/index.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
export * from './asset-indexer.ts';
|
|
1
2
|
export * from './block.ts';
|
|
2
3
|
export * from './clone.ts';
|
|
3
4
|
export * from './date.ts';
|
|
@@ -6,6 +7,7 @@ export * from './location.ts';
|
|
|
6
7
|
export * from './nxtpression.ts';
|
|
7
8
|
export * from './lock.ts';
|
|
8
9
|
export * from './media.ts';
|
|
10
|
+
export * from './panel-property.ts';
|
|
9
11
|
export * from './pipeline.ts';
|
|
10
12
|
export * from './promoted-tag.ts';
|
|
11
13
|
export * from './render-preset.ts';
|
|
@@ -13,9 +15,11 @@ export * from './render-profile.ts';
|
|
|
13
15
|
export * from './render-query.ts';
|
|
14
16
|
export * from './render-scene.ts';
|
|
15
17
|
export * from './rule.ts';
|
|
18
|
+
export * from './schema-property.ts';
|
|
16
19
|
export * from './search.ts';
|
|
17
20
|
export * from './settings.ts';
|
|
18
21
|
export * from './subtitle-style.ts';
|
|
22
|
+
export * from './subtitle.ts';
|
|
19
23
|
export * from './error.ts';
|
|
20
24
|
export * from './user-notification.ts';
|
|
21
25
|
export interface Message {
|
package/dist/common/index.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
export * from "./asset-indexer.js";
|
|
1
2
|
export * from "./block.js";
|
|
2
3
|
export * from "./clone.js";
|
|
3
4
|
export * from "./date.js";
|
|
@@ -6,6 +7,7 @@ export * from "./location.js";
|
|
|
6
7
|
export * from "./nxtpression.js";
|
|
7
8
|
export * from "./lock.js";
|
|
8
9
|
export * from "./media.js";
|
|
10
|
+
export * from "./panel-property.js";
|
|
9
11
|
export * from "./pipeline.js";
|
|
10
12
|
export * from "./promoted-tag.js";
|
|
11
13
|
export * from "./render-preset.js";
|
|
@@ -13,8 +15,10 @@ export * from "./render-profile.js";
|
|
|
13
15
|
export * from "./render-query.js";
|
|
14
16
|
export * from "./render-scene.js";
|
|
15
17
|
export * from "./rule.js";
|
|
18
|
+
export * from "./schema-property.js";
|
|
16
19
|
export * from "./search.js";
|
|
17
20
|
export * from "./settings.js";
|
|
18
21
|
export * from "./subtitle-style.js";
|
|
22
|
+
export * from "./subtitle.js";
|
|
19
23
|
export * from "./error.js";
|
|
20
24
|
export * from "./user-notification.js";
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { Nxtpression } from './nxtpression.ts';
|
|
2
|
+
export interface PanelProperty<Value = unknown> {
|
|
3
|
+
/** Specifying what type of data will be entered into the field. */
|
|
4
|
+
type: "array" | "asset" | "boolean" | "datetime" | "number" | "string" | "object" | "rpc";
|
|
5
|
+
/** User-friendly title of the property. This will be used as the field's label in the UI. */
|
|
6
|
+
title?: string;
|
|
7
|
+
description?: string;
|
|
8
|
+
domain?: string;
|
|
9
|
+
path?: string;
|
|
10
|
+
computed?: Nxtpression<Value>;
|
|
11
|
+
/** An object specifying where to index the data. Adding this will effectively make the data searchable. */
|
|
12
|
+
index?: {
|
|
13
|
+
/** A string specifying the user-friendly title of the search property. This is what users will see when creating search filters and bookmarks. */
|
|
14
|
+
label: string;
|
|
15
|
+
/** A string specifying where to store the data in the search index. Note that this should be a globally unique value in the system. Typically you'd use `{domain}.{path}` and you should prefer English in camel case */
|
|
16
|
+
path: string;
|
|
17
|
+
};
|
|
18
|
+
/** If present, indicates that the user must specify a value for the asset to be treated as valid. */
|
|
19
|
+
required?: boolean;
|
|
20
|
+
oneOf?: Array<{
|
|
21
|
+
const?: Value;
|
|
22
|
+
title?: string;
|
|
23
|
+
}>;
|
|
24
|
+
anyOf?: Array<{
|
|
25
|
+
const?: Value;
|
|
26
|
+
title?: string;
|
|
27
|
+
}>;
|
|
28
|
+
enum?: Value[];
|
|
29
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { PanelProperty, Nxtpression } from '../';
|
|
2
|
+
export interface SchemaProperty extends PanelProperty {
|
|
3
|
+
recordName?: Nxtpression<string, {
|
|
4
|
+
id: string;
|
|
5
|
+
}>;
|
|
6
|
+
setter?: Nxtpression<(value: unknown) => void, {
|
|
7
|
+
id: string;
|
|
8
|
+
value: unknown;
|
|
9
|
+
}>;
|
|
10
|
+
default?: unknown;
|
|
11
|
+
const?: unknown;
|
|
12
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -106,6 +106,7 @@ export interface Settings {
|
|
|
106
106
|
};
|
|
107
107
|
rundown?: {
|
|
108
108
|
eventThumbnails?: boolean;
|
|
109
|
+
scriptEventFolding: "folded" | "unfoldedUntilFolded";
|
|
109
110
|
};
|
|
110
111
|
gallery?: {
|
|
111
112
|
dimOnBlur?: boolean;
|
|
@@ -220,6 +221,15 @@ export interface Settings {
|
|
|
220
221
|
};
|
|
221
222
|
edit?: {
|
|
222
223
|
thumbnailView?: "filmStrip" | "thumbnail" | "none";
|
|
224
|
+
normalize?: {
|
|
225
|
+
presets?: Array<{
|
|
226
|
+
id: string;
|
|
227
|
+
title: string;
|
|
228
|
+
i: number;
|
|
229
|
+
tp: number;
|
|
230
|
+
}>;
|
|
231
|
+
defaultPresetId?: string;
|
|
232
|
+
};
|
|
223
233
|
voiceOver?: {
|
|
224
234
|
inputDevice?: string;
|
|
225
235
|
inputGainDb?: number;
|
|
@@ -329,6 +339,12 @@ export interface Settings {
|
|
|
329
339
|
subscribeSearchHits?: boolean;
|
|
330
340
|
parseRegex?: boolean;
|
|
331
341
|
};
|
|
342
|
+
display?: {
|
|
343
|
+
disableHotArea?: boolean;
|
|
344
|
+
};
|
|
345
|
+
bookmarks?: {
|
|
346
|
+
refreshInterval?: number;
|
|
347
|
+
};
|
|
332
348
|
}
|
|
333
349
|
export type SettingsPaths = Paths<Settings>;
|
|
334
350
|
interface ModuleTabs {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/dist/nxtpression.d.ts
CHANGED
|
@@ -137,6 +137,7 @@ declare interface AssetDomainRecords {
|
|
|
137
137
|
":asset.media?": AssetDomainMediaProvidedRecord;
|
|
138
138
|
":asset.presence?": AssetDomainPresenceProvidedRecord;
|
|
139
139
|
":asset.comments?": AssetCommentsRecord;
|
|
140
|
+
":asset.record?": AssetRecordProvidedRecord;
|
|
140
141
|
}
|
|
141
142
|
|
|
142
143
|
declare interface AssetDomainStatusProvidedRecord {
|
|
@@ -157,6 +158,10 @@ declare interface AssetDurationRecord {
|
|
|
157
158
|
dynamic?: Dynamic;
|
|
158
159
|
}
|
|
159
160
|
|
|
161
|
+
declare interface AssetDynamicPropertiesProvidedRecord {
|
|
162
|
+
value?: DynamicProperty[];
|
|
163
|
+
}
|
|
164
|
+
|
|
160
165
|
declare interface AssetEmbeddingRecord {
|
|
161
166
|
value?: Nxtpression<string, {
|
|
162
167
|
id: string;
|
|
@@ -175,6 +180,104 @@ declare interface AssetIconRecord {
|
|
|
175
180
|
dynamic?: Dynamic;
|
|
176
181
|
}
|
|
177
182
|
|
|
183
|
+
declare interface AssetIndexerCoreFields {
|
|
184
|
+
id: string;
|
|
185
|
+
title?: string;
|
|
186
|
+
description?: string;
|
|
187
|
+
created?: IsoTimestamp;
|
|
188
|
+
createdBy?: string;
|
|
189
|
+
createdByTitle?: string;
|
|
190
|
+
origin?: string;
|
|
191
|
+
modified?: IsoTimestamp;
|
|
192
|
+
modifiedBy?: string;
|
|
193
|
+
modifiedByAll?: string[];
|
|
194
|
+
modifiedByTitle?: string;
|
|
195
|
+
duration?: number;
|
|
196
|
+
tags?: string[];
|
|
197
|
+
deadlines?: IsoTimestamp[];
|
|
198
|
+
deadlinesCount?: number;
|
|
199
|
+
deadlines_date_range?: Array<{
|
|
200
|
+
gte: IsoTimestamp;
|
|
201
|
+
lte: IsoTimestamp;
|
|
202
|
+
}>;
|
|
203
|
+
assignees?: string[];
|
|
204
|
+
assigneesCount?: number;
|
|
205
|
+
locations?: Array<{
|
|
206
|
+
lat: number;
|
|
207
|
+
lon: number;
|
|
208
|
+
}>;
|
|
209
|
+
locationsCount?: number;
|
|
210
|
+
types?: string[];
|
|
211
|
+
primaryType?: string;
|
|
212
|
+
rawTypes?: string[];
|
|
213
|
+
status?: {
|
|
214
|
+
messages?: Array<{
|
|
215
|
+
code?: string;
|
|
216
|
+
level?: number;
|
|
217
|
+
}>;
|
|
218
|
+
};
|
|
219
|
+
published?: IsoTimestamp[];
|
|
220
|
+
publishedCount?: number;
|
|
221
|
+
storage?: {
|
|
222
|
+
files?: string[];
|
|
223
|
+
replicas?: string[];
|
|
224
|
+
locations?: string[];
|
|
225
|
+
zones?: string[];
|
|
226
|
+
uploading?: boolean;
|
|
227
|
+
size?: number;
|
|
228
|
+
filesCount?: number;
|
|
229
|
+
replicasCount?: number;
|
|
230
|
+
locationsCount?: number;
|
|
231
|
+
};
|
|
232
|
+
refs?: number;
|
|
233
|
+
refsByType?: Record<string, number>;
|
|
234
|
+
recurrence_date_range?: {
|
|
235
|
+
gte: IsoTimestamp;
|
|
236
|
+
lte: IsoTimestamp | null;
|
|
237
|
+
};
|
|
238
|
+
media_date_range?: {
|
|
239
|
+
gte: IsoTimestamp;
|
|
240
|
+
lte: IsoTimestamp;
|
|
241
|
+
};
|
|
242
|
+
ingestschedule_date_range?: {
|
|
243
|
+
gte: IsoTimestamp;
|
|
244
|
+
lte: IsoTimestamp | null;
|
|
245
|
+
};
|
|
246
|
+
ingestschedule?: {
|
|
247
|
+
type?: string;
|
|
248
|
+
sources?: string[];
|
|
249
|
+
routes?: string[];
|
|
250
|
+
};
|
|
251
|
+
username?: string;
|
|
252
|
+
user?: string;
|
|
253
|
+
"note.text"?: string;
|
|
254
|
+
subtitles?: string;
|
|
255
|
+
graphics?: string;
|
|
256
|
+
story?: {
|
|
257
|
+
content?: string;
|
|
258
|
+
graphics?: string[];
|
|
259
|
+
};
|
|
260
|
+
storyboard?: {
|
|
261
|
+
content?: unknown[];
|
|
262
|
+
};
|
|
263
|
+
/**
|
|
264
|
+
* These fields are populated from the provided `{id}:asset.media?` record as
|
|
265
|
+
* configured in the `asset.media` record. Due to the dynamic nature of that record,
|
|
266
|
+
* it's hard to type these fields more specifically. For now we only list a few
|
|
267
|
+
* (probably) expected fields.
|
|
268
|
+
*/
|
|
269
|
+
media?: {
|
|
270
|
+
audio?: unknown;
|
|
271
|
+
video?: unknown;
|
|
272
|
+
timecode?: unknown;
|
|
273
|
+
language?: unknown;
|
|
274
|
+
transcribe?: unknown;
|
|
275
|
+
};
|
|
276
|
+
embedding?: Array<{
|
|
277
|
+
vector: number[];
|
|
278
|
+
}>;
|
|
279
|
+
}
|
|
280
|
+
|
|
178
281
|
declare interface AssetLocationsRecord {
|
|
179
282
|
value?: Nxtpression<Array<{
|
|
180
283
|
lat: number;
|
|
@@ -208,11 +311,21 @@ declare interface AssetRawTypesProvidedRecord {
|
|
|
208
311
|
value?: string[];
|
|
209
312
|
}
|
|
210
313
|
|
|
314
|
+
/**
|
|
315
|
+
* Elasticsearch indexed record for an asset.
|
|
316
|
+
* Extends core fields with dynamic properties from panels and schemas.
|
|
317
|
+
*/
|
|
318
|
+
declare interface AssetRecordProvidedRecord extends AssetIndexerCoreFields {
|
|
319
|
+
/** Dynamic properties from panels and schemas (keys defined by property.index.path) */
|
|
320
|
+
[dynamicProperty: string]: unknown;
|
|
321
|
+
}
|
|
322
|
+
|
|
211
323
|
declare interface AssetRecords {
|
|
212
324
|
"asset.assignees": AssetAssigneesRecord;
|
|
213
325
|
"asset.clone": AssetCloneRecord;
|
|
214
326
|
"asset.deadlines": AssetDeadlinesRecord;
|
|
215
327
|
"asset.duration": AssetDurationRecord;
|
|
328
|
+
"asset.dynamicProperties?": AssetDynamicPropertiesProvidedRecord;
|
|
216
329
|
"asset.embedding": AssetEmbeddingRecord;
|
|
217
330
|
"asset.icon": AssetIconRecord;
|
|
218
331
|
"asset.locations": AssetLocationsRecord;
|
|
@@ -244,7 +357,7 @@ declare interface AssetTagsRecord {
|
|
|
244
357
|
}
|
|
245
358
|
|
|
246
359
|
declare interface AssetTitleProvidedRecord {
|
|
247
|
-
value?: string;
|
|
360
|
+
value?: string | null;
|
|
248
361
|
}
|
|
249
362
|
|
|
250
363
|
declare interface AssetTitleRecord {
|
|
@@ -505,11 +618,44 @@ declare interface DesignViewRow<Id = string, Key = string, Value = void> {
|
|
|
505
618
|
value: Value;
|
|
506
619
|
}
|
|
507
620
|
|
|
508
|
-
declare interface
|
|
621
|
+
declare interface DeviceDomainRecord {
|
|
622
|
+
type?: "display";
|
|
623
|
+
display?: {
|
|
624
|
+
activeAsset?: string;
|
|
625
|
+
editor?: string;
|
|
626
|
+
};
|
|
627
|
+
}
|
|
628
|
+
|
|
629
|
+
declare interface DeviceDomainRecords {
|
|
630
|
+
":device": DeviceDomainRecord;
|
|
631
|
+
":device.status?": DeviceDomainStatusRecord;
|
|
632
|
+
}
|
|
633
|
+
|
|
634
|
+
declare interface DeviceDomainStatusRecord {
|
|
635
|
+
since?: string;
|
|
636
|
+
heartbeat?: string;
|
|
637
|
+
version?: string;
|
|
638
|
+
}
|
|
639
|
+
|
|
640
|
+
declare interface DomainRecords extends AssetDomainRecords, AuthDomainRecords, BundleDomainRecords, CalendarEventDomainRecords, CloneDomainRecords, CommentReactionDomainRecords, CommentReadMarkDomainRecords, CommentDomainRecords, ConditionDomainRecords, ConnectionDomainRecords, ContactDomainRecords, DeepstreamDomainRecords, DesignDomainRecords, DeviceDomainRecords, EditDomainRecords, EventDomainRecords, FileDomainRecords, FolderDomainRecords, GeneralDomainRecords, HarvestDomainRecords, IngestclipDomainRecords, IngestScheduleDomainRecords, MediaDomainRecords, MonitorDomainRecords, NoteDomainRecords, PanelDomainRecords, PermissionDomainRecords, PipelinePresetDomainRecords, PipelineDomainRecords, PlanningDomainRecords, PrompterDomainRecords, PublishDomainRecords, PublishedDomainRecords, RenderPresetDomainRecords, RenderDomainRecords, RevsDomainRecords, RoleDomainRecords, ScriptDomainRecords, SearchDomainRecords, SettingsDomainRecords, ShotboxDomainRecords, StoryboardDomainRecords, SubtitleStyleDomainRecords, SubtitleDomainRecords, TemplateDomainRecords, UserNotificationStatusDomainRecords, UserNotificationDomainRecords, UserDomainRecords, UsernameDomainRecords {
|
|
509
641
|
}
|
|
510
642
|
|
|
511
643
|
declare type Dynamic = false | string[];
|
|
512
644
|
|
|
645
|
+
/**
|
|
646
|
+
* Dynamic property definition.
|
|
647
|
+
* Properties come from :panel assets or :schema assets.
|
|
648
|
+
*/
|
|
649
|
+
declare interface DynamicProperty extends Omit<PanelProperty, "path">, Omit<SchemaProperty, "path"> {
|
|
650
|
+
/** ID of the panel asset that defines this property (for panel-sourced properties) */
|
|
651
|
+
panel?: string;
|
|
652
|
+
/** ID of the schema asset that defines this property (for schema-sourced properties) */
|
|
653
|
+
schema?: string;
|
|
654
|
+
/** List of asset types this property supports */
|
|
655
|
+
supports: string[];
|
|
656
|
+
path: string;
|
|
657
|
+
}
|
|
658
|
+
|
|
513
659
|
declare interface EditDomainRecords {
|
|
514
660
|
":edit": EditRecord;
|
|
515
661
|
}
|
|
@@ -948,6 +1094,14 @@ declare interface FileStats extends File_2 {
|
|
|
948
1094
|
complete: boolean;
|
|
949
1095
|
}
|
|
950
1096
|
|
|
1097
|
+
declare interface FolderDomainRecords {
|
|
1098
|
+
":folder.items": FolderItemsDomainRecord;
|
|
1099
|
+
}
|
|
1100
|
+
|
|
1101
|
+
declare interface FolderItemsDomainRecord {
|
|
1102
|
+
value: string[];
|
|
1103
|
+
}
|
|
1104
|
+
|
|
951
1105
|
declare interface FontFace_2 {
|
|
952
1106
|
name: string;
|
|
953
1107
|
family: string;
|
|
@@ -1207,6 +1361,48 @@ declare interface IngestclipDomainRecords {
|
|
|
1207
1361
|
":ingestclip": IngestclipDomainRecord;
|
|
1208
1362
|
}
|
|
1209
1363
|
|
|
1364
|
+
declare interface IngestIo {
|
|
1365
|
+
route?: string;
|
|
1366
|
+
/** List of connection IDs */
|
|
1367
|
+
publish?: string[];
|
|
1368
|
+
}
|
|
1369
|
+
|
|
1370
|
+
declare interface IngestScheduleDomainRecord {
|
|
1371
|
+
io?: {
|
|
1372
|
+
[id: string]: IngestIo;
|
|
1373
|
+
};
|
|
1374
|
+
sourcesHint?: string;
|
|
1375
|
+
enabled?: boolean;
|
|
1376
|
+
clipname?: Nxtpression<string>;
|
|
1377
|
+
autoTags?: string[];
|
|
1378
|
+
storyboard?: string | null;
|
|
1379
|
+
pipeline?: string | null;
|
|
1380
|
+
type?: "instant" | "repeat" | "salami";
|
|
1381
|
+
salami?: {
|
|
1382
|
+
gallery?: string | null;
|
|
1383
|
+
tag?: string;
|
|
1384
|
+
};
|
|
1385
|
+
repeat?: IngestScheduleRepeat;
|
|
1386
|
+
}
|
|
1387
|
+
|
|
1388
|
+
declare interface IngestScheduleDomainRecords {
|
|
1389
|
+
":ingestschedule": IngestScheduleDomainRecord;
|
|
1390
|
+
":ingestschedule.stats?": IngestScheduleDomainStatsRecord;
|
|
1391
|
+
}
|
|
1392
|
+
|
|
1393
|
+
declare interface IngestScheduleDomainStatsRecord {
|
|
1394
|
+
error?: unknown;
|
|
1395
|
+
}
|
|
1396
|
+
|
|
1397
|
+
declare interface IngestScheduleRepeat {
|
|
1398
|
+
freq?: RepeatFreq;
|
|
1399
|
+
until?: string;
|
|
1400
|
+
start?: string;
|
|
1401
|
+
tzid?: string;
|
|
1402
|
+
duration?: number;
|
|
1403
|
+
byweekday?: number[];
|
|
1404
|
+
}
|
|
1405
|
+
|
|
1210
1406
|
/**
|
|
1211
1407
|
The actual implementation of `IsUnion`.
|
|
1212
1408
|
*/
|
|
@@ -1429,6 +1625,7 @@ declare interface MediaProbeRecord {
|
|
|
1429
1625
|
declare interface MediaRecords {
|
|
1430
1626
|
"media.subtitles": MediaSubtitlesRecord;
|
|
1431
1627
|
"media.subtitles?": MediaSubtitlesProvidedRecord;
|
|
1628
|
+
"media.transcribe": MediaTranscribeRecord;
|
|
1432
1629
|
"media.transcribe?": MediaTranscribeProvidedRecord;
|
|
1433
1630
|
"media.fonts?": MediaFonts;
|
|
1434
1631
|
"media.consolidate": MediaConsolidateRecord;
|
|
@@ -1474,6 +1671,16 @@ declare interface MediaTranscribeProvidedRecord {
|
|
|
1474
1671
|
translate?: {
|
|
1475
1672
|
languages: Record<string, string>;
|
|
1476
1673
|
};
|
|
1674
|
+
replacers?: Record<string, TranscribeReplacer | TranscribeReplacer[]>;
|
|
1675
|
+
}
|
|
1676
|
+
|
|
1677
|
+
declare interface MediaTranscribeRecord {
|
|
1678
|
+
engines: Record<string, string>;
|
|
1679
|
+
languages: Record<string, string>;
|
|
1680
|
+
translate?: {
|
|
1681
|
+
languages: Record<string, string>;
|
|
1682
|
+
};
|
|
1683
|
+
replacers?: Record<string, TranscribeReplacer | TranscribeReplacer[]>;
|
|
1477
1684
|
}
|
|
1478
1685
|
|
|
1479
1686
|
declare type MediaTranscriptChangesRecord = {
|
|
@@ -1682,6 +1889,14 @@ declare const NODE_STATE_KEY = "$";
|
|
|
1682
1889
|
|
|
1683
1890
|
declare type NodeContent = EventNodeContent | TextNodeContent | ParagraphNodeContent | CommentNodeContent | ListNodeContent | ListItemNodeContent | HeadingNodeContent | HorizontalRuleContent | QuoteNodeContent;
|
|
1684
1891
|
|
|
1892
|
+
declare interface NoteDomainRecord {
|
|
1893
|
+
value: string;
|
|
1894
|
+
}
|
|
1895
|
+
|
|
1896
|
+
declare interface NoteDomainRecords {
|
|
1897
|
+
":note": NoteDomainRecord;
|
|
1898
|
+
}
|
|
1899
|
+
|
|
1685
1900
|
declare type NotificationReason = "mentioned" | "assigned" | "author" | "participated" | "always";
|
|
1686
1901
|
|
|
1687
1902
|
declare type Numeric<T extends bigint> = `${T}` extends `${infer N extends number}` ? N : never;
|
|
@@ -2005,7 +2220,7 @@ declare interface PanelLayoutItem {
|
|
|
2005
2220
|
widget?: LayoutWidget;
|
|
2006
2221
|
}
|
|
2007
2222
|
|
|
2008
|
-
declare interface PanelProperty {
|
|
2223
|
+
declare interface PanelProperty<Value = unknown> {
|
|
2009
2224
|
/** Specifying what type of data will be entered into the field. */
|
|
2010
2225
|
type: "array" | "asset" | "boolean" | "datetime" | "number" | "string" | "object" | "rpc";
|
|
2011
2226
|
/** User-friendly title of the property. This will be used as the field's label in the UI. */
|
|
@@ -2013,7 +2228,7 @@ declare interface PanelProperty {
|
|
|
2013
2228
|
description?: string;
|
|
2014
2229
|
domain?: string;
|
|
2015
2230
|
path?: string;
|
|
2016
|
-
computed?: Nxtpression<
|
|
2231
|
+
computed?: Nxtpression<Value>;
|
|
2017
2232
|
/** An object specifying where to index the data. Adding this will effectively make the data searchable. */
|
|
2018
2233
|
index?: {
|
|
2019
2234
|
/** A string specifying the user-friendly title of the search property. This is what users will see when creating search filters and bookmarks. */
|
|
@@ -2024,13 +2239,14 @@ declare interface PanelProperty {
|
|
|
2024
2239
|
/** If present, indicates that the user must specify a value for the asset to be treated as valid. */
|
|
2025
2240
|
required?: boolean;
|
|
2026
2241
|
oneOf?: Array<{
|
|
2027
|
-
const?:
|
|
2242
|
+
const?: Value;
|
|
2028
2243
|
title?: string;
|
|
2029
2244
|
}>;
|
|
2030
2245
|
anyOf?: Array<{
|
|
2031
|
-
const?:
|
|
2246
|
+
const?: Value;
|
|
2032
2247
|
title?: string;
|
|
2033
2248
|
}>;
|
|
2249
|
+
enum?: Value[];
|
|
2034
2250
|
}
|
|
2035
2251
|
|
|
2036
2252
|
declare interface ParagraphNodeContent extends ElementNodeContent {
|
|
@@ -2470,6 +2686,13 @@ declare interface RenderSceneObject {
|
|
|
2470
2686
|
};
|
|
2471
2687
|
}
|
|
2472
2688
|
|
|
2689
|
+
/**
|
|
2690
|
+
* 0 = Monthly
|
|
2691
|
+
* 2 = Weekly
|
|
2692
|
+
* 3 = Daily
|
|
2693
|
+
*/
|
|
2694
|
+
declare type RepeatFreq = 0 | 2 | 3;
|
|
2695
|
+
|
|
2473
2696
|
declare interface ReplaceOperation {
|
|
2474
2697
|
op: 'replace';
|
|
2475
2698
|
path: string;
|
|
@@ -2516,6 +2739,18 @@ declare interface RpcPermission {
|
|
|
2516
2739
|
tags?: undefined;
|
|
2517
2740
|
}
|
|
2518
2741
|
|
|
2742
|
+
declare interface SchemaProperty extends PanelProperty {
|
|
2743
|
+
recordName?: Nxtpression<string, {
|
|
2744
|
+
id: string;
|
|
2745
|
+
}>;
|
|
2746
|
+
setter?: Nxtpression<(value: unknown) => void, {
|
|
2747
|
+
id: string;
|
|
2748
|
+
value: unknown;
|
|
2749
|
+
}>;
|
|
2750
|
+
default?: unknown;
|
|
2751
|
+
const?: unknown;
|
|
2752
|
+
}
|
|
2753
|
+
|
|
2519
2754
|
/**
|
|
2520
2755
|
* A record for non-script automation assets that can have child events.
|
|
2521
2756
|
*/
|
|
@@ -2830,6 +3065,7 @@ declare interface Settings {
|
|
|
2830
3065
|
};
|
|
2831
3066
|
rundown?: {
|
|
2832
3067
|
eventThumbnails?: boolean;
|
|
3068
|
+
scriptEventFolding: "folded" | "unfoldedUntilFolded";
|
|
2833
3069
|
};
|
|
2834
3070
|
gallery?: {
|
|
2835
3071
|
dimOnBlur?: boolean;
|
|
@@ -2944,6 +3180,15 @@ declare interface Settings {
|
|
|
2944
3180
|
};
|
|
2945
3181
|
edit?: {
|
|
2946
3182
|
thumbnailView?: "filmStrip" | "thumbnail" | "none";
|
|
3183
|
+
normalize?: {
|
|
3184
|
+
presets?: Array<{
|
|
3185
|
+
id: string;
|
|
3186
|
+
title: string;
|
|
3187
|
+
i: number;
|
|
3188
|
+
tp: number;
|
|
3189
|
+
}>;
|
|
3190
|
+
defaultPresetId?: string;
|
|
3191
|
+
};
|
|
2947
3192
|
voiceOver?: {
|
|
2948
3193
|
inputDevice?: string;
|
|
2949
3194
|
inputGainDb?: number;
|
|
@@ -3053,12 +3298,24 @@ declare interface Settings {
|
|
|
3053
3298
|
subscribeSearchHits?: boolean;
|
|
3054
3299
|
parseRegex?: boolean;
|
|
3055
3300
|
};
|
|
3301
|
+
display?: {
|
|
3302
|
+
disableHotArea?: boolean;
|
|
3303
|
+
};
|
|
3304
|
+
bookmarks?: {
|
|
3305
|
+
refreshInterval?: number;
|
|
3306
|
+
};
|
|
3056
3307
|
}
|
|
3057
3308
|
|
|
3058
3309
|
declare interface SettingsDomainRecords {
|
|
3059
3310
|
":settings": SettingsRecord;
|
|
3311
|
+
":settings.node": SettingsNodeRecord;
|
|
3060
3312
|
}
|
|
3061
3313
|
|
|
3314
|
+
declare type SettingsNodeRecord = Record<string, {
|
|
3315
|
+
collapsed: boolean;
|
|
3316
|
+
hidden: boolean;
|
|
3317
|
+
}>;
|
|
3318
|
+
|
|
3062
3319
|
declare interface SettingsPanelStoreTab extends ModuleTabsSettingsValue {
|
|
3063
3320
|
activeSectionIndex?: number;
|
|
3064
3321
|
}
|
|
@@ -3568,6 +3825,38 @@ declare interface TextNodeContent {
|
|
|
3568
3825
|
format?: number;
|
|
3569
3826
|
}
|
|
3570
3827
|
|
|
3828
|
+
declare interface TranscribeForEachWordReplacer {
|
|
3829
|
+
type: "items";
|
|
3830
|
+
items: string[];
|
|
3831
|
+
_comment?: string;
|
|
3832
|
+
replacers: Array<{
|
|
3833
|
+
/** Expression that should return RegExp or string arg to new RegExp */
|
|
3834
|
+
pattern: Nxtpression<unknown, {
|
|
3835
|
+
item: string;
|
|
3836
|
+
}>;
|
|
3837
|
+
replacement: Nxtpression<string | ((...args: unknown[]) => string), {
|
|
3838
|
+
item: string;
|
|
3839
|
+
}>;
|
|
3840
|
+
flags?: string;
|
|
3841
|
+
_comment?: string;
|
|
3842
|
+
}>;
|
|
3843
|
+
}
|
|
3844
|
+
|
|
3845
|
+
declare type TranscribeReplacer = TranscribeReplaceReplacer | TranscribeForEachWordReplacer;
|
|
3846
|
+
|
|
3847
|
+
declare interface TranscribeReplaceReplacer {
|
|
3848
|
+
type?: "replace";
|
|
3849
|
+
/** Expression that should return RegExp or string arg to new RegExp */
|
|
3850
|
+
pattern: Nxtpression<unknown, {
|
|
3851
|
+
item: string;
|
|
3852
|
+
}>;
|
|
3853
|
+
replacement: Nxtpression<string | ((...args: unknown[]) => string), {
|
|
3854
|
+
item: string;
|
|
3855
|
+
}>;
|
|
3856
|
+
flags?: string;
|
|
3857
|
+
_comment?: string;
|
|
3858
|
+
}
|
|
3859
|
+
|
|
3571
3860
|
/**
|
|
3572
3861
|
* Type tag for specifying numeric bit-width representations.
|
|
3573
3862
|
*
|