@nxtedition/types 23.0.60 → 23.0.61
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 +3 -0
- package/dist/common/index.js +3 -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 +6 -0
- package/dist/nxtpression.d.ts +227 -5
- package/dist/records/domains/asset.d.ts +10 -1
- package/dist/records/domains/device.d.ts +16 -0
- package/dist/records/domains/device.js +1 -0
- package/dist/records/domains/index.d.ts +7 -1
- package/dist/records/domains/index.js +3 -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/exact/asset.d.ts +18 -1
- package/dist/records/validate/assert-guard.js +1275 -15
- package/dist/records/validate/assert.js +1278 -11
- package/dist/records/validate/is.js +41 -3
- package/dist/records/validate/schemas.js +1091 -192
- package/dist/records/validate/stringify.js +72 -5
- package/dist/records/validate/utils.js +2 -2
- package/dist/records/validate/validate-equals.js +2364 -439
- package/dist/records/validate/validate.js +1134 -10
- 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,6 +15,7 @@ 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';
|
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,6 +15,7 @@ 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";
|
|
@@ -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 {};
|
|
@@ -329,6 +329,12 @@ export interface Settings {
|
|
|
329
329
|
subscribeSearchHits?: boolean;
|
|
330
330
|
parseRegex?: boolean;
|
|
331
331
|
};
|
|
332
|
+
display?: {
|
|
333
|
+
disableHotArea?: boolean;
|
|
334
|
+
};
|
|
335
|
+
bookmarks?: {
|
|
336
|
+
refreshInterval?: number;
|
|
337
|
+
};
|
|
332
338
|
}
|
|
333
339
|
export type SettingsPaths = Paths<Settings>;
|
|
334
340
|
interface ModuleTabs {
|
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;
|
|
@@ -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, 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
|
}
|
|
@@ -1207,6 +1353,48 @@ declare interface IngestclipDomainRecords {
|
|
|
1207
1353
|
":ingestclip": IngestclipDomainRecord;
|
|
1208
1354
|
}
|
|
1209
1355
|
|
|
1356
|
+
declare interface IngestIo {
|
|
1357
|
+
route?: string;
|
|
1358
|
+
/** List of connection IDs */
|
|
1359
|
+
publish?: string[];
|
|
1360
|
+
}
|
|
1361
|
+
|
|
1362
|
+
declare interface IngestScheduleDomainRecord {
|
|
1363
|
+
io?: {
|
|
1364
|
+
[id: string]: IngestIo;
|
|
1365
|
+
};
|
|
1366
|
+
sourcesHint?: string;
|
|
1367
|
+
enabled?: boolean;
|
|
1368
|
+
clipname?: Nxtpression<string>;
|
|
1369
|
+
autoTags?: string[];
|
|
1370
|
+
storyboard?: string | null;
|
|
1371
|
+
pipeline?: string | null;
|
|
1372
|
+
type?: "instant" | "repeat" | "salami";
|
|
1373
|
+
salami?: {
|
|
1374
|
+
gallery?: string | null;
|
|
1375
|
+
tag?: string;
|
|
1376
|
+
};
|
|
1377
|
+
repeat?: IngestScheduleRepeat;
|
|
1378
|
+
}
|
|
1379
|
+
|
|
1380
|
+
declare interface IngestScheduleDomainRecords {
|
|
1381
|
+
":ingestschedule": IngestScheduleDomainRecord;
|
|
1382
|
+
":ingestschedule.stats?": IngestScheduleDomainStatsRecord;
|
|
1383
|
+
}
|
|
1384
|
+
|
|
1385
|
+
declare interface IngestScheduleDomainStatsRecord {
|
|
1386
|
+
error?: unknown;
|
|
1387
|
+
}
|
|
1388
|
+
|
|
1389
|
+
declare interface IngestScheduleRepeat {
|
|
1390
|
+
freq?: RepeatFreq;
|
|
1391
|
+
until?: string;
|
|
1392
|
+
start?: string;
|
|
1393
|
+
tzid?: string;
|
|
1394
|
+
duration?: number;
|
|
1395
|
+
byweekday?: number[];
|
|
1396
|
+
}
|
|
1397
|
+
|
|
1210
1398
|
/**
|
|
1211
1399
|
The actual implementation of `IsUnion`.
|
|
1212
1400
|
*/
|
|
@@ -1682,6 +1870,14 @@ declare const NODE_STATE_KEY = "$";
|
|
|
1682
1870
|
|
|
1683
1871
|
declare type NodeContent = EventNodeContent | TextNodeContent | ParagraphNodeContent | CommentNodeContent | ListNodeContent | ListItemNodeContent | HeadingNodeContent | HorizontalRuleContent | QuoteNodeContent;
|
|
1684
1872
|
|
|
1873
|
+
declare interface NoteDomainRecord {
|
|
1874
|
+
value: string;
|
|
1875
|
+
}
|
|
1876
|
+
|
|
1877
|
+
declare interface NoteDomainRecords {
|
|
1878
|
+
":note": NoteDomainRecord;
|
|
1879
|
+
}
|
|
1880
|
+
|
|
1685
1881
|
declare type NotificationReason = "mentioned" | "assigned" | "author" | "participated" | "always";
|
|
1686
1882
|
|
|
1687
1883
|
declare type Numeric<T extends bigint> = `${T}` extends `${infer N extends number}` ? N : never;
|
|
@@ -2005,7 +2201,7 @@ declare interface PanelLayoutItem {
|
|
|
2005
2201
|
widget?: LayoutWidget;
|
|
2006
2202
|
}
|
|
2007
2203
|
|
|
2008
|
-
declare interface PanelProperty {
|
|
2204
|
+
declare interface PanelProperty<Value = unknown> {
|
|
2009
2205
|
/** Specifying what type of data will be entered into the field. */
|
|
2010
2206
|
type: "array" | "asset" | "boolean" | "datetime" | "number" | "string" | "object" | "rpc";
|
|
2011
2207
|
/** User-friendly title of the property. This will be used as the field's label in the UI. */
|
|
@@ -2013,7 +2209,7 @@ declare interface PanelProperty {
|
|
|
2013
2209
|
description?: string;
|
|
2014
2210
|
domain?: string;
|
|
2015
2211
|
path?: string;
|
|
2016
|
-
computed?: Nxtpression<
|
|
2212
|
+
computed?: Nxtpression<Value>;
|
|
2017
2213
|
/** An object specifying where to index the data. Adding this will effectively make the data searchable. */
|
|
2018
2214
|
index?: {
|
|
2019
2215
|
/** 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 +2220,14 @@ declare interface PanelProperty {
|
|
|
2024
2220
|
/** If present, indicates that the user must specify a value for the asset to be treated as valid. */
|
|
2025
2221
|
required?: boolean;
|
|
2026
2222
|
oneOf?: Array<{
|
|
2027
|
-
const?:
|
|
2223
|
+
const?: Value;
|
|
2028
2224
|
title?: string;
|
|
2029
2225
|
}>;
|
|
2030
2226
|
anyOf?: Array<{
|
|
2031
|
-
const?:
|
|
2227
|
+
const?: Value;
|
|
2032
2228
|
title?: string;
|
|
2033
2229
|
}>;
|
|
2230
|
+
enum?: Value[];
|
|
2034
2231
|
}
|
|
2035
2232
|
|
|
2036
2233
|
declare interface ParagraphNodeContent extends ElementNodeContent {
|
|
@@ -2470,6 +2667,13 @@ declare interface RenderSceneObject {
|
|
|
2470
2667
|
};
|
|
2471
2668
|
}
|
|
2472
2669
|
|
|
2670
|
+
/**
|
|
2671
|
+
* 0 = Monthly
|
|
2672
|
+
* 2 = Weekly
|
|
2673
|
+
* 3 = Daily
|
|
2674
|
+
*/
|
|
2675
|
+
declare type RepeatFreq = 0 | 2 | 3;
|
|
2676
|
+
|
|
2473
2677
|
declare interface ReplaceOperation {
|
|
2474
2678
|
op: 'replace';
|
|
2475
2679
|
path: string;
|
|
@@ -2516,6 +2720,18 @@ declare interface RpcPermission {
|
|
|
2516
2720
|
tags?: undefined;
|
|
2517
2721
|
}
|
|
2518
2722
|
|
|
2723
|
+
declare interface SchemaProperty extends PanelProperty {
|
|
2724
|
+
recordName?: Nxtpression<string, {
|
|
2725
|
+
id: string;
|
|
2726
|
+
}>;
|
|
2727
|
+
setter?: Nxtpression<(value: unknown) => void, {
|
|
2728
|
+
id: string;
|
|
2729
|
+
value: unknown;
|
|
2730
|
+
}>;
|
|
2731
|
+
default?: unknown;
|
|
2732
|
+
const?: unknown;
|
|
2733
|
+
}
|
|
2734
|
+
|
|
2519
2735
|
/**
|
|
2520
2736
|
* A record for non-script automation assets that can have child events.
|
|
2521
2737
|
*/
|
|
@@ -3053,6 +3269,12 @@ declare interface Settings {
|
|
|
3053
3269
|
subscribeSearchHits?: boolean;
|
|
3054
3270
|
parseRegex?: boolean;
|
|
3055
3271
|
};
|
|
3272
|
+
display?: {
|
|
3273
|
+
disableHotArea?: boolean;
|
|
3274
|
+
};
|
|
3275
|
+
bookmarks?: {
|
|
3276
|
+
refreshInterval?: number;
|
|
3277
|
+
};
|
|
3056
3278
|
}
|
|
3057
3279
|
|
|
3058
3280
|
declare interface SettingsDomainRecords {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { IsoTimestamp } from '../../common/index.ts';
|
|
1
|
+
import type { IsoTimestamp, AssetIndexerCoreFields } from '../../common/index.ts';
|
|
2
2
|
export interface AssetDomainRecords {
|
|
3
3
|
":asset.title?": AssetTitleProvidedRecord;
|
|
4
4
|
":asset.rawTypes?": AssetRawTypesProvidedRecord;
|
|
@@ -21,6 +21,7 @@ export interface AssetDomainRecords {
|
|
|
21
21
|
":asset.media?": AssetDomainMediaProvidedRecord;
|
|
22
22
|
":asset.presence?": AssetDomainPresenceProvidedRecord;
|
|
23
23
|
":asset.comments?": AssetCommentsRecord;
|
|
24
|
+
":asset.record?": AssetRecordProvidedRecord;
|
|
24
25
|
}
|
|
25
26
|
export interface AssetTitleProvidedRecord {
|
|
26
27
|
value?: string;
|
|
@@ -107,4 +108,12 @@ export interface AssetCommentsRecord {
|
|
|
107
108
|
*/
|
|
108
109
|
value?: string[];
|
|
109
110
|
}
|
|
111
|
+
/**
|
|
112
|
+
* Elasticsearch indexed record for an asset.
|
|
113
|
+
* Extends core fields with dynamic properties from panels and schemas.
|
|
114
|
+
*/
|
|
115
|
+
export interface AssetRecordProvidedRecord extends AssetIndexerCoreFields {
|
|
116
|
+
/** Dynamic properties from panels and schemas (keys defined by property.index.path) */
|
|
117
|
+
[dynamicProperty: string]: unknown;
|
|
118
|
+
}
|
|
110
119
|
export {};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export interface DeviceDomainRecords {
|
|
2
|
+
":device": DeviceDomainRecord;
|
|
3
|
+
":device.status?": DeviceDomainStatusRecord;
|
|
4
|
+
}
|
|
5
|
+
export interface DeviceDomainRecord {
|
|
6
|
+
type?: "display";
|
|
7
|
+
display?: {
|
|
8
|
+
activeAsset?: string;
|
|
9
|
+
editor?: string;
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
export interface DeviceDomainStatusRecord {
|
|
13
|
+
since?: string;
|
|
14
|
+
heartbeat?: string;
|
|
15
|
+
version?: string;
|
|
16
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -11,14 +11,17 @@ import type { ConnectionDomainRecords } from './connection/index.ts';
|
|
|
11
11
|
import type { ContactDomainRecords } from './contact.ts';
|
|
12
12
|
import type { DeepstreamDomainRecords } from './deepstream.ts';
|
|
13
13
|
import type { DesignDomainRecords } from './design.ts';
|
|
14
|
+
import type { DeviceDomainRecords } from './device.ts';
|
|
14
15
|
import type { EditDomainRecords } from './edit.ts';
|
|
15
16
|
import type { EventDomainRecords } from './event.ts';
|
|
16
17
|
import type { FileDomainRecords } from './file.ts';
|
|
17
18
|
import type { GeneralDomainRecords } from './general.ts';
|
|
18
19
|
import type { HarvestDomainRecords } from './harvest.ts';
|
|
19
20
|
import type { IngestclipDomainRecords } from './ingestclip.ts';
|
|
21
|
+
import type { IngestScheduleDomainRecords } from './ingestschedule.ts';
|
|
20
22
|
import type { MediaDomainRecords } from './media.ts';
|
|
21
23
|
import type { MonitorDomainRecords } from './monitor.ts';
|
|
24
|
+
import type { NoteDomainRecords } from './note.ts';
|
|
22
25
|
import type { PanelDomainRecords } from './panel.ts';
|
|
23
26
|
import type { PermissionDomainRecords } from './permission.ts';
|
|
24
27
|
import type { PipelinePresetDomainRecords } from './pipeline-preset.ts';
|
|
@@ -56,14 +59,17 @@ export * from './connection/index.ts';
|
|
|
56
59
|
export * from './contact.ts';
|
|
57
60
|
export * from './deepstream.ts';
|
|
58
61
|
export * from './design.ts';
|
|
62
|
+
export * from './device.ts';
|
|
59
63
|
export * from './edit.ts';
|
|
60
64
|
export * from './event.ts';
|
|
61
65
|
export * from './file.ts';
|
|
62
66
|
export * from './general.ts';
|
|
63
67
|
export * from './harvest.ts';
|
|
64
68
|
export * from './ingestclip.ts';
|
|
69
|
+
export * from './ingestschedule.ts';
|
|
65
70
|
export * from './media.ts';
|
|
66
71
|
export * from './monitor.ts';
|
|
72
|
+
export * from './note.ts';
|
|
67
73
|
export * from './panel.ts';
|
|
68
74
|
export * from './permission.ts';
|
|
69
75
|
export * from './pipeline-preset.ts';
|
|
@@ -88,5 +94,5 @@ export * from './user-notification-status.ts';
|
|
|
88
94
|
export * from './user-notification.ts';
|
|
89
95
|
export * from './user.ts';
|
|
90
96
|
export * from './username.ts';
|
|
91
|
-
export interface DomainRecords extends AssetDomainRecords, AuthDomainRecords, BundleDomainRecords, CalendarEventDomainRecords, CloneDomainRecords, CommentReactionDomainRecords, CommentReadMarkDomainRecords, CommentDomainRecords, ConditionDomainRecords, ConnectionDomainRecords, ContactDomainRecords, DeepstreamDomainRecords, DesignDomainRecords, EditDomainRecords, EventDomainRecords, FileDomainRecords, GeneralDomainRecords, HarvestDomainRecords, IngestclipDomainRecords, MediaDomainRecords, MonitorDomainRecords, PanelDomainRecords, PermissionDomainRecords, PipelinePresetDomainRecords, PipelineDomainRecords, PlanningDomainRecords, PrompterDomainRecords, PublishDomainRecords, PublishedDomainRecords, RenderPresetDomainRecords, RenderDomainRecords, RevsDomainRecords, RoleDomainRecords, ScriptDomainRecords, SearchDomainRecords, SettingsDomainRecords, ShotboxDomainRecords, StoryboardDomainRecords, SubtitleStyleDomainRecords, SubtitleDomainRecords, TemplateDomainRecords, UserNotificationStatusDomainRecords, UserNotificationDomainRecords, UserDomainRecords, UsernameDomainRecords {
|
|
97
|
+
export interface DomainRecords extends AssetDomainRecords, AuthDomainRecords, BundleDomainRecords, CalendarEventDomainRecords, CloneDomainRecords, CommentReactionDomainRecords, CommentReadMarkDomainRecords, CommentDomainRecords, ConditionDomainRecords, ConnectionDomainRecords, ContactDomainRecords, DeepstreamDomainRecords, DesignDomainRecords, DeviceDomainRecords, EditDomainRecords, EventDomainRecords, FileDomainRecords, 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 {
|
|
92
98
|
}
|
|
@@ -11,14 +11,17 @@ export * from "./connection/index.js";
|
|
|
11
11
|
export * from "./contact.js";
|
|
12
12
|
export * from "./deepstream.js";
|
|
13
13
|
export * from "./design.js";
|
|
14
|
+
export * from "./device.js";
|
|
14
15
|
export * from "./edit.js";
|
|
15
16
|
export * from "./event.js";
|
|
16
17
|
export * from "./file.js";
|
|
17
18
|
export * from "./general.js";
|
|
18
19
|
export * from "./harvest.js";
|
|
19
20
|
export * from "./ingestclip.js";
|
|
21
|
+
export * from "./ingestschedule.js";
|
|
20
22
|
export * from "./media.js";
|
|
21
23
|
export * from "./monitor.js";
|
|
24
|
+
export * from "./note.js";
|
|
22
25
|
export * from "./panel.js";
|
|
23
26
|
export * from "./permission.js";
|
|
24
27
|
export * from "./pipeline-preset.js";
|