@camstack/addon-model-studio 1.1.252 → 1.1.254
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/{MotionZonesSettings-d7R9fNX4.mjs → MotionZonesSettings-CDQwRCoT.mjs} +2 -2
- package/dist/{PrivacyMaskSettings-DrGSWT67.mjs → PrivacyMaskSettings-Bqjt6j-n.mjs} +4 -4
- package/dist/{SceneMonitorEditor-Dop7jels.mjs → SceneMonitorEditor-CSttF4Hq.mjs} +3 -3
- package/dist/_stub.js +80 -21
- package/dist/{_virtual_mf-localSharedImportMap___mfe_internal__addon_model_studio_page-Dw8uAk5I.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_model_studio_page-DCyvhci7.mjs} +3 -3
- package/dist/{_virtual_mf___mfe_internal__addon_model_studio_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-tfHw-0Bq.mjs → _virtual_mf___mfe_internal__addon_model_studio_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-CW7-7FqB.mjs} +2 -2
- package/dist/addon-model-studio.css +1 -1
- package/dist/{hostInit-D36hHmDz.mjs → hostInit-DnyEep3P.mjs} +2 -2
- package/dist/model-studio.addon.js +174 -3
- package/dist/model-studio.addon.mjs +174 -3
- package/dist/{player-overlays-D5-vmA5J.mjs → player-overlays-D3nGwf3m.mjs} +1 -1
- package/dist/remoteEntry.js +1 -1
- package/dist/{responsive-BzE5vG45.mjs → responsive-DyGAg9qU.mjs} +1 -1
- package/dist/{scene-monitor-copy-BihLE04_.mjs → scene-monitor-copy-CIw9oZTb.mjs} +1 -1
- package/dist/{square-D0cMa1nt.mjs → square-DqVANN3Q.mjs} +1 -1
- package/dist/{trash-2-D0vctyi0.mjs → trash-2-CQbGsv9O.mjs} +1 -1
- package/dist/{virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_model_studio_page__remoteEntry_js-Doe57L1Z.mjs → virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_model_studio_page__remoteEntry_js-B4EACOgY.mjs} +1 -1
- package/package.json +1 -1
|
@@ -36,7 +36,7 @@ async function r() {
|
|
|
36
36
|
}
|
|
37
37
|
},
|
|
38
38
|
"@camstack/types": {
|
|
39
|
-
version: "1.2.
|
|
39
|
+
version: "1.2.359",
|
|
40
40
|
scope: "default",
|
|
41
41
|
shareConfig: {
|
|
42
42
|
singleton: !0,
|
|
@@ -81,7 +81,7 @@ async function r() {
|
|
|
81
81
|
}
|
|
82
82
|
},
|
|
83
83
|
"@camstack/ui-library": {
|
|
84
|
-
version: "1.2.
|
|
84
|
+
version: "1.2.284",
|
|
85
85
|
scope: "default",
|
|
86
86
|
shareConfig: {
|
|
87
87
|
singleton: !0,
|
|
@@ -5782,7 +5782,7 @@ var ZodIssueCode = {
|
|
|
5782
5782
|
var ZodFirstPartyTypeKind;
|
|
5783
5783
|
ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
|
|
5784
5784
|
//#endregion
|
|
5785
|
-
//#region ../types/dist/sleep-
|
|
5785
|
+
//#region ../types/dist/sleep-BBF1iXUi.mjs
|
|
5786
5786
|
/**
|
|
5787
5787
|
* The audio chunk plane's byte format, and the ONE expansion from a coded
|
|
5788
5788
|
* window to float samples (D455).
|
|
@@ -10579,6 +10579,15 @@ discriminatedUnion("type", [
|
|
|
10579
10579
|
message: string()
|
|
10580
10580
|
})
|
|
10581
10581
|
]);
|
|
10582
|
+
/** Every status, in the order a summary lists them. */
|
|
10583
|
+
var RETRAIN_REVIEW_STATUSES = [
|
|
10584
|
+
"unchanged",
|
|
10585
|
+
"adjusted",
|
|
10586
|
+
"reclassified",
|
|
10587
|
+
"added",
|
|
10588
|
+
"removed",
|
|
10589
|
+
"model-error"
|
|
10590
|
+
];
|
|
10582
10591
|
/**
|
|
10583
10592
|
* What the gate decided about a birth, from the CALLER's point of view.
|
|
10584
10593
|
*
|
|
@@ -15844,6 +15853,38 @@ var BulkRecordSchema = object({
|
|
|
15844
15853
|
data: record(string(), unknown())
|
|
15845
15854
|
});
|
|
15846
15855
|
/**
|
|
15856
|
+
* One write inside a {@link settingsStoreCapability.methods.transact} call.
|
|
15857
|
+
* Only the three that a "replace this set, bump that revision" write needs.
|
|
15858
|
+
*/
|
|
15859
|
+
var TransactOpSchema = discriminatedUnion("op", [
|
|
15860
|
+
object({
|
|
15861
|
+
op: literal("deleteWhere"),
|
|
15862
|
+
collection: string(),
|
|
15863
|
+
filter: MutationFilterSchema
|
|
15864
|
+
}),
|
|
15865
|
+
object({
|
|
15866
|
+
op: literal("insertMany"),
|
|
15867
|
+
collection: string(),
|
|
15868
|
+
records: array(BulkRecordSchema).readonly()
|
|
15869
|
+
}),
|
|
15870
|
+
object({
|
|
15871
|
+
op: literal("update"),
|
|
15872
|
+
collection: string(),
|
|
15873
|
+
id: string(),
|
|
15874
|
+
data: record(string(), unknown())
|
|
15875
|
+
})
|
|
15876
|
+
]);
|
|
15877
|
+
/**
|
|
15878
|
+
* The precondition of a transaction: the row `key` of `collection` must hold
|
|
15879
|
+
* `equals` in `column`, read INSIDE the transaction.
|
|
15880
|
+
*/
|
|
15881
|
+
var TransactGuardSchema = object({
|
|
15882
|
+
collection: string(),
|
|
15883
|
+
key: string(),
|
|
15884
|
+
column: string(),
|
|
15885
|
+
equals: unknown()
|
|
15886
|
+
});
|
|
15887
|
+
/**
|
|
15847
15888
|
* Column declaration for a structured (SQL-backed) collection.
|
|
15848
15889
|
*
|
|
15849
15890
|
* Logical types — the backend translates each to the matching SQLite
|
|
@@ -15934,6 +15975,16 @@ id: union([string(), number()]) }), {
|
|
|
15934
15975
|
}), object({ inserted: number().int() }), {
|
|
15935
15976
|
kind: "mutation",
|
|
15936
15977
|
auth: "admin"
|
|
15978
|
+
}), method(object({
|
|
15979
|
+
namespace: string().optional(),
|
|
15980
|
+
guard: TransactGuardSchema.optional(),
|
|
15981
|
+
ops: array(TransactOpSchema).readonly()
|
|
15982
|
+
}), object({
|
|
15983
|
+
applied: boolean(),
|
|
15984
|
+
current: unknown().optional()
|
|
15985
|
+
}), {
|
|
15986
|
+
kind: "mutation",
|
|
15987
|
+
auth: "admin"
|
|
15937
15988
|
}), method(object({
|
|
15938
15989
|
namespace: string().optional(),
|
|
15939
15990
|
collection: string(),
|
|
@@ -16082,6 +16133,16 @@ id: union([string(), number()]) }), {
|
|
|
16082
16133
|
}), object({ inserted: number().int() }), {
|
|
16083
16134
|
kind: "mutation",
|
|
16084
16135
|
auth: "admin"
|
|
16136
|
+
}), method(object({
|
|
16137
|
+
namespace: string().optional(),
|
|
16138
|
+
guard: TransactGuardSchema.optional(),
|
|
16139
|
+
ops: array(TransactOpSchema).readonly()
|
|
16140
|
+
}), object({
|
|
16141
|
+
applied: boolean(),
|
|
16142
|
+
current: unknown().optional()
|
|
16143
|
+
}), {
|
|
16144
|
+
kind: "mutation",
|
|
16145
|
+
auth: "admin"
|
|
16085
16146
|
}), method(object({
|
|
16086
16147
|
namespace: string().optional(),
|
|
16087
16148
|
collection: string(),
|
|
@@ -24500,6 +24561,55 @@ var RetrainBboxSchema = object({
|
|
|
24500
24561
|
h: number()
|
|
24501
24562
|
});
|
|
24502
24563
|
/**
|
|
24564
|
+
* What a box LOOKED LIKE when it was offered, snapshotted at the moment the
|
|
24565
|
+
* operator accepted it. The saved row keeps only the final rectangle; this is
|
|
24566
|
+
* the other half of the pair, and the pair is what says whether the operator
|
|
24567
|
+
* accepted, nudged, relabelled or replaced a proposal (`retrain-review.ts`).
|
|
24568
|
+
*
|
|
24569
|
+
* `ref` names the proposal inside its frame: `pipeline:<trackId>` for a box the
|
|
24570
|
+
* live pipeline drew, `assist:<n>` for the n-th box of a detector or LLM run,
|
|
24571
|
+
* and anything unique for an operator-drawn box (`operator:<n>`). Re-derived
|
|
24572
|
+
* pipeline boxes carry the same ref every time, which is what lets a dismissal
|
|
24573
|
+
* stay dismissed.
|
|
24574
|
+
*/
|
|
24575
|
+
var RetrainOriginSchema = object({
|
|
24576
|
+
source: RetrainAnnotationSourceSchema,
|
|
24577
|
+
ref: string().min(1),
|
|
24578
|
+
bbox: RetrainBboxSchema,
|
|
24579
|
+
macroClass: RetrainMacroClassSchema,
|
|
24580
|
+
label: string().optional(),
|
|
24581
|
+
score: number().optional(),
|
|
24582
|
+
modelId: string().optional()
|
|
24583
|
+
});
|
|
24584
|
+
/**
|
|
24585
|
+
* A proposal the operator deleted. Durable on the frame, so a deleted pipeline
|
|
24586
|
+
* box does not come back as a draft every time the frame is reopened, and so
|
|
24587
|
+
* the deletion itself is a recorded fact rather than an absence.
|
|
24588
|
+
*/
|
|
24589
|
+
var RetrainDismissedSchema = object({
|
|
24590
|
+
ref: string().min(1),
|
|
24591
|
+
snapshot: RetrainOriginSchema
|
|
24592
|
+
});
|
|
24593
|
+
/** What the operator did with a proposal (see `retrain-review.ts`). */
|
|
24594
|
+
var RetrainReviewStatusSchema = _enum(RETRAIN_REVIEW_STATUSES);
|
|
24595
|
+
var RetrainFrameReviewSchema = object({
|
|
24596
|
+
boxes: array(object({
|
|
24597
|
+
ref: string(),
|
|
24598
|
+
savedId: string().optional(),
|
|
24599
|
+
status: RetrainReviewStatusSchema,
|
|
24600
|
+
/** The baseline was re-derived, not snapshotted (a pre-origin row). */
|
|
24601
|
+
approximate: boolean(),
|
|
24602
|
+
origin: RetrainOriginSchema.optional(),
|
|
24603
|
+
iou: number().optional()
|
|
24604
|
+
})).readonly(),
|
|
24605
|
+
summary: object({
|
|
24606
|
+
counts: record(RetrainReviewStatusSchema, number().int()),
|
|
24607
|
+
total: number().int(),
|
|
24608
|
+
changed: number().int(),
|
|
24609
|
+
approximate: boolean()
|
|
24610
|
+
})
|
|
24611
|
+
});
|
|
24612
|
+
/**
|
|
24503
24613
|
* One annotated subject.
|
|
24504
24614
|
*
|
|
24505
24615
|
* `bbox` is normalised against the full frame, ALWAYS. The per-model shapes
|
|
@@ -24523,6 +24633,9 @@ var RetrainAnnotationSchema = object({
|
|
|
24523
24633
|
/** Which model proposed this box — or, on a `model_error`, drew the phantom. */
|
|
24524
24634
|
assistModelId: string().optional(),
|
|
24525
24635
|
assistScore: number().optional(),
|
|
24636
|
+
/** The proposal this box started from, snapshotted at accept time. `null` on
|
|
24637
|
+
* a row saved before origins existed; absent on a draft nobody snapshotted. */
|
|
24638
|
+
origin: RetrainOriginSchema.nullable().optional(),
|
|
24526
24639
|
exportedInBatch: string().optional(),
|
|
24527
24640
|
createdAt: number()
|
|
24528
24641
|
});
|
|
@@ -24615,7 +24728,19 @@ var RetrainFrameSchema = object({
|
|
|
24615
24728
|
* empty when nothing the track store holds can be placed on it. */
|
|
24616
24729
|
pipelineBoxes: array(RetrainPipelineBoxSchema).readonly().optional(),
|
|
24617
24730
|
/** The named collections this frame belongs to. Present on list answers. */
|
|
24618
|
-
collectionIds: array(string()).readonly().optional()
|
|
24731
|
+
collectionIds: array(string()).readonly().optional(),
|
|
24732
|
+
/** Bumped by every annotation save. A save that names a stale
|
|
24733
|
+
* `expectedRevision` is refused, so two surfaces cannot overwrite each other. */
|
|
24734
|
+
revision: number().int().optional(),
|
|
24735
|
+
/** Proposals the operator deleted — never re-seeded as drafts. */
|
|
24736
|
+
dismissed: array(RetrainDismissedSchema).readonly().optional(),
|
|
24737
|
+
/** What the operator did with the proposals, computed by the server. */
|
|
24738
|
+
review: RetrainFrameReviewSchema.optional(),
|
|
24739
|
+
/** The frame's pixels over the admin data plane (full size). Fetch with the
|
|
24740
|
+
* admin bearer token; relative to the hub root. */
|
|
24741
|
+
imageUrl: string().optional(),
|
|
24742
|
+
/** The same, as a ~480 px thumbnail for grids. */
|
|
24743
|
+
thumbnailUrl: string().optional()
|
|
24619
24744
|
});
|
|
24620
24745
|
/** Why a copy-on-select could not be honoured — named, never a silent skip. */
|
|
24621
24746
|
var RetrainCopyRefusalSchema = _enum([
|
|
@@ -25694,10 +25819,33 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
|
|
|
25694
25819
|
/** The frame's track, when it has one — checked against the frame. */
|
|
25695
25820
|
trackId: string().optional(),
|
|
25696
25821
|
frameId: string(),
|
|
25697
|
-
annotations: array(RetrainAnnotationDraftSchema)
|
|
25822
|
+
annotations: array(RetrainAnnotationDraftSchema),
|
|
25823
|
+
/** The frame's `revision` the caller saw. A different current revision
|
|
25824
|
+
* refuses the save with a `retrain-revision-conflict` error
|
|
25825
|
+
* (`parseRetrainRevisionConflict`). Absent ⇒ last write wins. */
|
|
25826
|
+
expectedRevision: number().int().optional(),
|
|
25827
|
+
/** The proposals the operator deleted. Absent ⇒ keep the frame's
|
|
25828
|
+
* current set; present ⇒ replace it (an empty array un-dismisses). */
|
|
25829
|
+
dismissed: array(RetrainDismissedSchema).optional()
|
|
25698
25830
|
}), array(RetrainAnnotationSchema).readonly(), {
|
|
25699
25831
|
kind: "mutation",
|
|
25700
25832
|
auth: "admin"
|
|
25833
|
+
}), method(object({
|
|
25834
|
+
deviceId: number(),
|
|
25835
|
+
trackId: string().optional(),
|
|
25836
|
+
frameId: string(),
|
|
25837
|
+
expectedRevision: number().int().optional(),
|
|
25838
|
+
origins: array(object({
|
|
25839
|
+
annotationId: string(),
|
|
25840
|
+
origin: RetrainOriginSchema
|
|
25841
|
+
})).min(1).max(500)
|
|
25842
|
+
}), object({
|
|
25843
|
+
updated: number().int(),
|
|
25844
|
+
skipped: number().int(),
|
|
25845
|
+
revision: number().int()
|
|
25846
|
+
}), {
|
|
25847
|
+
kind: "mutation",
|
|
25848
|
+
auth: "admin"
|
|
25701
25849
|
}), method(object({
|
|
25702
25850
|
deviceId: number(),
|
|
25703
25851
|
trackId: string()
|
|
@@ -42116,6 +42264,12 @@ Object.freeze({
|
|
|
42116
42264
|
addonId: null,
|
|
42117
42265
|
access: "create"
|
|
42118
42266
|
},
|
|
42267
|
+
"dataStoreProvider.transact": {
|
|
42268
|
+
capName: "data-store-provider",
|
|
42269
|
+
capScope: "system",
|
|
42270
|
+
addonId: null,
|
|
42271
|
+
access: "create"
|
|
42272
|
+
},
|
|
42119
42273
|
"dataStoreProvider.update": {
|
|
42120
42274
|
capName: "data-store-provider",
|
|
42121
42275
|
capScope: "system",
|
|
@@ -44960,6 +45114,12 @@ Object.freeze({
|
|
|
44960
45114
|
addonId: null,
|
|
44961
45115
|
access: "create"
|
|
44962
45116
|
},
|
|
45117
|
+
"pipelineAnalytics.backfillRetrainOrigins": {
|
|
45118
|
+
capName: "pipeline-analytics",
|
|
45119
|
+
capScope: "device",
|
|
45120
|
+
addonId: null,
|
|
45121
|
+
access: "create"
|
|
45122
|
+
},
|
|
44963
45123
|
"pipelineAnalytics.cancelRelocateMedia": {
|
|
44964
45124
|
capName: "pipeline-analytics",
|
|
44965
45125
|
capScope: "device",
|
|
@@ -46952,6 +47112,12 @@ Object.freeze({
|
|
|
46952
47112
|
addonId: null,
|
|
46953
47113
|
access: "create"
|
|
46954
47114
|
},
|
|
47115
|
+
"settingsStore.transact": {
|
|
47116
|
+
capName: "settings-store",
|
|
47117
|
+
capScope: "system",
|
|
47118
|
+
addonId: null,
|
|
47119
|
+
access: "create"
|
|
47120
|
+
},
|
|
46955
47121
|
"settingsStore.update": {
|
|
46956
47122
|
capName: "settings-store",
|
|
46957
47123
|
capScope: "system",
|
|
@@ -51278,6 +51444,11 @@ Object.freeze({
|
|
|
51278
51444
|
form: "single",
|
|
51279
51445
|
optional: false
|
|
51280
51446
|
}],
|
|
51447
|
+
"pipelineAnalytics.backfillRetrainOrigins": [{
|
|
51448
|
+
name: "deviceId",
|
|
51449
|
+
form: "single",
|
|
51450
|
+
optional: false
|
|
51451
|
+
}],
|
|
51281
51452
|
"pipelineAnalytics.clearTrackRelation": [{
|
|
51282
51453
|
name: "deviceId",
|
|
51283
51454
|
form: "single",
|
|
@@ -5756,7 +5756,7 @@ var ZodIssueCode = {
|
|
|
5756
5756
|
var ZodFirstPartyTypeKind;
|
|
5757
5757
|
ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
|
|
5758
5758
|
//#endregion
|
|
5759
|
-
//#region ../types/dist/sleep-
|
|
5759
|
+
//#region ../types/dist/sleep-BBF1iXUi.mjs
|
|
5760
5760
|
/**
|
|
5761
5761
|
* The audio chunk plane's byte format, and the ONE expansion from a coded
|
|
5762
5762
|
* window to float samples (D455).
|
|
@@ -10553,6 +10553,15 @@ discriminatedUnion("type", [
|
|
|
10553
10553
|
message: string()
|
|
10554
10554
|
})
|
|
10555
10555
|
]);
|
|
10556
|
+
/** Every status, in the order a summary lists them. */
|
|
10557
|
+
var RETRAIN_REVIEW_STATUSES = [
|
|
10558
|
+
"unchanged",
|
|
10559
|
+
"adjusted",
|
|
10560
|
+
"reclassified",
|
|
10561
|
+
"added",
|
|
10562
|
+
"removed",
|
|
10563
|
+
"model-error"
|
|
10564
|
+
];
|
|
10556
10565
|
/**
|
|
10557
10566
|
* What the gate decided about a birth, from the CALLER's point of view.
|
|
10558
10567
|
*
|
|
@@ -15818,6 +15827,38 @@ var BulkRecordSchema = object({
|
|
|
15818
15827
|
data: record(string(), unknown())
|
|
15819
15828
|
});
|
|
15820
15829
|
/**
|
|
15830
|
+
* One write inside a {@link settingsStoreCapability.methods.transact} call.
|
|
15831
|
+
* Only the three that a "replace this set, bump that revision" write needs.
|
|
15832
|
+
*/
|
|
15833
|
+
var TransactOpSchema = discriminatedUnion("op", [
|
|
15834
|
+
object({
|
|
15835
|
+
op: literal("deleteWhere"),
|
|
15836
|
+
collection: string(),
|
|
15837
|
+
filter: MutationFilterSchema
|
|
15838
|
+
}),
|
|
15839
|
+
object({
|
|
15840
|
+
op: literal("insertMany"),
|
|
15841
|
+
collection: string(),
|
|
15842
|
+
records: array(BulkRecordSchema).readonly()
|
|
15843
|
+
}),
|
|
15844
|
+
object({
|
|
15845
|
+
op: literal("update"),
|
|
15846
|
+
collection: string(),
|
|
15847
|
+
id: string(),
|
|
15848
|
+
data: record(string(), unknown())
|
|
15849
|
+
})
|
|
15850
|
+
]);
|
|
15851
|
+
/**
|
|
15852
|
+
* The precondition of a transaction: the row `key` of `collection` must hold
|
|
15853
|
+
* `equals` in `column`, read INSIDE the transaction.
|
|
15854
|
+
*/
|
|
15855
|
+
var TransactGuardSchema = object({
|
|
15856
|
+
collection: string(),
|
|
15857
|
+
key: string(),
|
|
15858
|
+
column: string(),
|
|
15859
|
+
equals: unknown()
|
|
15860
|
+
});
|
|
15861
|
+
/**
|
|
15821
15862
|
* Column declaration for a structured (SQL-backed) collection.
|
|
15822
15863
|
*
|
|
15823
15864
|
* Logical types — the backend translates each to the matching SQLite
|
|
@@ -15908,6 +15949,16 @@ id: union([string(), number()]) }), {
|
|
|
15908
15949
|
}), object({ inserted: number().int() }), {
|
|
15909
15950
|
kind: "mutation",
|
|
15910
15951
|
auth: "admin"
|
|
15952
|
+
}), method(object({
|
|
15953
|
+
namespace: string().optional(),
|
|
15954
|
+
guard: TransactGuardSchema.optional(),
|
|
15955
|
+
ops: array(TransactOpSchema).readonly()
|
|
15956
|
+
}), object({
|
|
15957
|
+
applied: boolean(),
|
|
15958
|
+
current: unknown().optional()
|
|
15959
|
+
}), {
|
|
15960
|
+
kind: "mutation",
|
|
15961
|
+
auth: "admin"
|
|
15911
15962
|
}), method(object({
|
|
15912
15963
|
namespace: string().optional(),
|
|
15913
15964
|
collection: string(),
|
|
@@ -16056,6 +16107,16 @@ id: union([string(), number()]) }), {
|
|
|
16056
16107
|
}), object({ inserted: number().int() }), {
|
|
16057
16108
|
kind: "mutation",
|
|
16058
16109
|
auth: "admin"
|
|
16110
|
+
}), method(object({
|
|
16111
|
+
namespace: string().optional(),
|
|
16112
|
+
guard: TransactGuardSchema.optional(),
|
|
16113
|
+
ops: array(TransactOpSchema).readonly()
|
|
16114
|
+
}), object({
|
|
16115
|
+
applied: boolean(),
|
|
16116
|
+
current: unknown().optional()
|
|
16117
|
+
}), {
|
|
16118
|
+
kind: "mutation",
|
|
16119
|
+
auth: "admin"
|
|
16059
16120
|
}), method(object({
|
|
16060
16121
|
namespace: string().optional(),
|
|
16061
16122
|
collection: string(),
|
|
@@ -24474,6 +24535,55 @@ var RetrainBboxSchema = object({
|
|
|
24474
24535
|
h: number()
|
|
24475
24536
|
});
|
|
24476
24537
|
/**
|
|
24538
|
+
* What a box LOOKED LIKE when it was offered, snapshotted at the moment the
|
|
24539
|
+
* operator accepted it. The saved row keeps only the final rectangle; this is
|
|
24540
|
+
* the other half of the pair, and the pair is what says whether the operator
|
|
24541
|
+
* accepted, nudged, relabelled or replaced a proposal (`retrain-review.ts`).
|
|
24542
|
+
*
|
|
24543
|
+
* `ref` names the proposal inside its frame: `pipeline:<trackId>` for a box the
|
|
24544
|
+
* live pipeline drew, `assist:<n>` for the n-th box of a detector or LLM run,
|
|
24545
|
+
* and anything unique for an operator-drawn box (`operator:<n>`). Re-derived
|
|
24546
|
+
* pipeline boxes carry the same ref every time, which is what lets a dismissal
|
|
24547
|
+
* stay dismissed.
|
|
24548
|
+
*/
|
|
24549
|
+
var RetrainOriginSchema = object({
|
|
24550
|
+
source: RetrainAnnotationSourceSchema,
|
|
24551
|
+
ref: string().min(1),
|
|
24552
|
+
bbox: RetrainBboxSchema,
|
|
24553
|
+
macroClass: RetrainMacroClassSchema,
|
|
24554
|
+
label: string().optional(),
|
|
24555
|
+
score: number().optional(),
|
|
24556
|
+
modelId: string().optional()
|
|
24557
|
+
});
|
|
24558
|
+
/**
|
|
24559
|
+
* A proposal the operator deleted. Durable on the frame, so a deleted pipeline
|
|
24560
|
+
* box does not come back as a draft every time the frame is reopened, and so
|
|
24561
|
+
* the deletion itself is a recorded fact rather than an absence.
|
|
24562
|
+
*/
|
|
24563
|
+
var RetrainDismissedSchema = object({
|
|
24564
|
+
ref: string().min(1),
|
|
24565
|
+
snapshot: RetrainOriginSchema
|
|
24566
|
+
});
|
|
24567
|
+
/** What the operator did with a proposal (see `retrain-review.ts`). */
|
|
24568
|
+
var RetrainReviewStatusSchema = _enum(RETRAIN_REVIEW_STATUSES);
|
|
24569
|
+
var RetrainFrameReviewSchema = object({
|
|
24570
|
+
boxes: array(object({
|
|
24571
|
+
ref: string(),
|
|
24572
|
+
savedId: string().optional(),
|
|
24573
|
+
status: RetrainReviewStatusSchema,
|
|
24574
|
+
/** The baseline was re-derived, not snapshotted (a pre-origin row). */
|
|
24575
|
+
approximate: boolean(),
|
|
24576
|
+
origin: RetrainOriginSchema.optional(),
|
|
24577
|
+
iou: number().optional()
|
|
24578
|
+
})).readonly(),
|
|
24579
|
+
summary: object({
|
|
24580
|
+
counts: record(RetrainReviewStatusSchema, number().int()),
|
|
24581
|
+
total: number().int(),
|
|
24582
|
+
changed: number().int(),
|
|
24583
|
+
approximate: boolean()
|
|
24584
|
+
})
|
|
24585
|
+
});
|
|
24586
|
+
/**
|
|
24477
24587
|
* One annotated subject.
|
|
24478
24588
|
*
|
|
24479
24589
|
* `bbox` is normalised against the full frame, ALWAYS. The per-model shapes
|
|
@@ -24497,6 +24607,9 @@ var RetrainAnnotationSchema = object({
|
|
|
24497
24607
|
/** Which model proposed this box — or, on a `model_error`, drew the phantom. */
|
|
24498
24608
|
assistModelId: string().optional(),
|
|
24499
24609
|
assistScore: number().optional(),
|
|
24610
|
+
/** The proposal this box started from, snapshotted at accept time. `null` on
|
|
24611
|
+
* a row saved before origins existed; absent on a draft nobody snapshotted. */
|
|
24612
|
+
origin: RetrainOriginSchema.nullable().optional(),
|
|
24500
24613
|
exportedInBatch: string().optional(),
|
|
24501
24614
|
createdAt: number()
|
|
24502
24615
|
});
|
|
@@ -24589,7 +24702,19 @@ var RetrainFrameSchema = object({
|
|
|
24589
24702
|
* empty when nothing the track store holds can be placed on it. */
|
|
24590
24703
|
pipelineBoxes: array(RetrainPipelineBoxSchema).readonly().optional(),
|
|
24591
24704
|
/** The named collections this frame belongs to. Present on list answers. */
|
|
24592
|
-
collectionIds: array(string()).readonly().optional()
|
|
24705
|
+
collectionIds: array(string()).readonly().optional(),
|
|
24706
|
+
/** Bumped by every annotation save. A save that names a stale
|
|
24707
|
+
* `expectedRevision` is refused, so two surfaces cannot overwrite each other. */
|
|
24708
|
+
revision: number().int().optional(),
|
|
24709
|
+
/** Proposals the operator deleted — never re-seeded as drafts. */
|
|
24710
|
+
dismissed: array(RetrainDismissedSchema).readonly().optional(),
|
|
24711
|
+
/** What the operator did with the proposals, computed by the server. */
|
|
24712
|
+
review: RetrainFrameReviewSchema.optional(),
|
|
24713
|
+
/** The frame's pixels over the admin data plane (full size). Fetch with the
|
|
24714
|
+
* admin bearer token; relative to the hub root. */
|
|
24715
|
+
imageUrl: string().optional(),
|
|
24716
|
+
/** The same, as a ~480 px thumbnail for grids. */
|
|
24717
|
+
thumbnailUrl: string().optional()
|
|
24593
24718
|
});
|
|
24594
24719
|
/** Why a copy-on-select could not be honoured — named, never a silent skip. */
|
|
24595
24720
|
var RetrainCopyRefusalSchema = _enum([
|
|
@@ -25668,10 +25793,33 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
|
|
|
25668
25793
|
/** The frame's track, when it has one — checked against the frame. */
|
|
25669
25794
|
trackId: string().optional(),
|
|
25670
25795
|
frameId: string(),
|
|
25671
|
-
annotations: array(RetrainAnnotationDraftSchema)
|
|
25796
|
+
annotations: array(RetrainAnnotationDraftSchema),
|
|
25797
|
+
/** The frame's `revision` the caller saw. A different current revision
|
|
25798
|
+
* refuses the save with a `retrain-revision-conflict` error
|
|
25799
|
+
* (`parseRetrainRevisionConflict`). Absent ⇒ last write wins. */
|
|
25800
|
+
expectedRevision: number().int().optional(),
|
|
25801
|
+
/** The proposals the operator deleted. Absent ⇒ keep the frame's
|
|
25802
|
+
* current set; present ⇒ replace it (an empty array un-dismisses). */
|
|
25803
|
+
dismissed: array(RetrainDismissedSchema).optional()
|
|
25672
25804
|
}), array(RetrainAnnotationSchema).readonly(), {
|
|
25673
25805
|
kind: "mutation",
|
|
25674
25806
|
auth: "admin"
|
|
25807
|
+
}), method(object({
|
|
25808
|
+
deviceId: number(),
|
|
25809
|
+
trackId: string().optional(),
|
|
25810
|
+
frameId: string(),
|
|
25811
|
+
expectedRevision: number().int().optional(),
|
|
25812
|
+
origins: array(object({
|
|
25813
|
+
annotationId: string(),
|
|
25814
|
+
origin: RetrainOriginSchema
|
|
25815
|
+
})).min(1).max(500)
|
|
25816
|
+
}), object({
|
|
25817
|
+
updated: number().int(),
|
|
25818
|
+
skipped: number().int(),
|
|
25819
|
+
revision: number().int()
|
|
25820
|
+
}), {
|
|
25821
|
+
kind: "mutation",
|
|
25822
|
+
auth: "admin"
|
|
25675
25823
|
}), method(object({
|
|
25676
25824
|
deviceId: number(),
|
|
25677
25825
|
trackId: string()
|
|
@@ -42090,6 +42238,12 @@ Object.freeze({
|
|
|
42090
42238
|
addonId: null,
|
|
42091
42239
|
access: "create"
|
|
42092
42240
|
},
|
|
42241
|
+
"dataStoreProvider.transact": {
|
|
42242
|
+
capName: "data-store-provider",
|
|
42243
|
+
capScope: "system",
|
|
42244
|
+
addonId: null,
|
|
42245
|
+
access: "create"
|
|
42246
|
+
},
|
|
42093
42247
|
"dataStoreProvider.update": {
|
|
42094
42248
|
capName: "data-store-provider",
|
|
42095
42249
|
capScope: "system",
|
|
@@ -44934,6 +45088,12 @@ Object.freeze({
|
|
|
44934
45088
|
addonId: null,
|
|
44935
45089
|
access: "create"
|
|
44936
45090
|
},
|
|
45091
|
+
"pipelineAnalytics.backfillRetrainOrigins": {
|
|
45092
|
+
capName: "pipeline-analytics",
|
|
45093
|
+
capScope: "device",
|
|
45094
|
+
addonId: null,
|
|
45095
|
+
access: "create"
|
|
45096
|
+
},
|
|
44937
45097
|
"pipelineAnalytics.cancelRelocateMedia": {
|
|
44938
45098
|
capName: "pipeline-analytics",
|
|
44939
45099
|
capScope: "device",
|
|
@@ -46926,6 +47086,12 @@ Object.freeze({
|
|
|
46926
47086
|
addonId: null,
|
|
46927
47087
|
access: "create"
|
|
46928
47088
|
},
|
|
47089
|
+
"settingsStore.transact": {
|
|
47090
|
+
capName: "settings-store",
|
|
47091
|
+
capScope: "system",
|
|
47092
|
+
addonId: null,
|
|
47093
|
+
access: "create"
|
|
47094
|
+
},
|
|
46929
47095
|
"settingsStore.update": {
|
|
46930
47096
|
capName: "settings-store",
|
|
46931
47097
|
capScope: "system",
|
|
@@ -51252,6 +51418,11 @@ Object.freeze({
|
|
|
51252
51418
|
form: "single",
|
|
51253
51419
|
optional: false
|
|
51254
51420
|
}],
|
|
51421
|
+
"pipelineAnalytics.backfillRetrainOrigins": [{
|
|
51422
|
+
name: "deviceId",
|
|
51423
|
+
form: "single",
|
|
51424
|
+
optional: false
|
|
51425
|
+
}],
|
|
51255
51426
|
"pipelineAnalytics.clearTrackRelation": [{
|
|
51256
51427
|
name: "deviceId",
|
|
51257
51428
|
form: "single",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { b as e, g as t, l as n, u as r } from "./_virtual_mf___mfe_internal__addon_model_studio_page__loadShare__react__loadShare__.js-CHL8loOl.mjs";
|
|
2
|
-
import { b as i, y as a } from "./responsive-
|
|
2
|
+
import { b as i, y as a } from "./responsive-DyGAg9qU.mjs";
|
|
3
3
|
import { n as o, r as s, t as c } from "./_virtual_mf___mfe_internal__addon_model_studio_page__loadShare__react_mf_1_jsx_mf_2_runtime__loadShare__.js-ds_Ehzaa.mjs";
|
|
4
4
|
var l = i("chevron-down", [["path", {
|
|
5
5
|
d: "m6 9 6 6 6-6",
|
package/dist/remoteEntry.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as e, t } from "./virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_model_studio_page__remoteEntry_js-
|
|
1
|
+
import { n as e, t } from "./virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_model_studio_page__remoteEntry_js-B4EACOgY.mjs";
|
|
2
2
|
export { t as get, e as init };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { _ as e, b as t, c as n, g as r, l as i, m as a, n as o, r as s, t as c, u as l } from "./_virtual_mf___mfe_internal__addon_model_studio_page__loadShare__react__loadShare__.js-CHL8loOl.mjs";
|
|
2
|
-
import { g as u } from "./_virtual_mf___mfe_internal__addon_model_studio_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-
|
|
2
|
+
import { g as u } from "./_virtual_mf___mfe_internal__addon_model_studio_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-CW7-7FqB.mjs";
|
|
3
3
|
import "./_virtual_mf___mfe_internal__addon_model_studio_page__loadShare__react_mf_1_jsx_mf_2_runtime__loadShare__.js-ds_Ehzaa.mjs";
|
|
4
4
|
//#region ../../node_modules/lucide-react/dist/esm/shared/src/utils/mergeClasses.js
|
|
5
5
|
t();
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { b as e, c as t, g as n, m as r } from "./_virtual_mf___mfe_internal__addon_model_studio_page__loadShare__react__loadShare__.js-CHL8loOl.mjs";
|
|
2
|
-
import { b as i } from "./responsive-
|
|
2
|
+
import { b as i } from "./responsive-DyGAg9qU.mjs";
|
|
3
3
|
var a = i("camera", [["path", {
|
|
4
4
|
d: "M13.997 4a2 2 0 0 1 1.76 1.05l.486.9A2 2 0 0 0 18.003 7H20a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h1.997a2 2 0 0 0 1.759-1.048l.489-.904A2 2 0 0 1 10.004 4z",
|
|
5
5
|
key: "18u6gg"
|
|
@@ -2753,7 +2753,7 @@ async function rr(e) {
|
|
|
2753
2753
|
}
|
|
2754
2754
|
}
|
|
2755
2755
|
async function ir() {
|
|
2756
|
-
return tr ||= rr(() => import("./_virtual_mf-localSharedImportMap___mfe_internal__addon_model_studio_page-
|
|
2756
|
+
return tr ||= rr(() => import("./_virtual_mf-localSharedImportMap___mfe_internal__addon_model_studio_page-DCyvhci7.mjs")).catch((e) => {
|
|
2757
2757
|
throw tr = void 0, e;
|
|
2758
2758
|
}), tr;
|
|
2759
2759
|
}
|