@camstack/addon-model-studio 1.1.203 → 1.1.205
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-Bf3wXZlv.mjs → MotionZonesSettings-DbxM42-u.mjs} +2 -2
- package/dist/{PrivacyMaskSettings-CxaNRx4y.mjs → PrivacyMaskSettings-B6QbcEYx.mjs} +4 -4
- package/dist/{SceneMonitorEditor-6Njva8QD.mjs → SceneMonitorEditor-C_sWam-G.mjs} +3 -3
- package/dist/_stub.js +3563 -3451
- package/dist/{_virtual_mf-localSharedImportMap___mfe_internal__addon_model_studio_page-BY8XezL8.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_model_studio_page-CNTVW6pB.mjs} +3 -3
- package/dist/_virtual_mf___mfe_internal__addon_model_studio_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-Cl1eNNmq.mjs +26 -0
- package/dist/{hostInit-wXzg-Tk8.mjs → hostInit-Cz9X-HIo.mjs} +2 -2
- package/dist/model-studio.addon.js +346 -426
- package/dist/model-studio.addon.mjs +346 -426
- package/dist/{player-overlays-DXZiCaYb.mjs → player-overlays-p1wcAk-U.mjs} +1 -1
- package/dist/remoteEntry.js +1 -1
- package/dist/{responsive-CTK4xC09.mjs → responsive-a5o_RHI6.mjs} +1 -1
- package/dist/{scene-monitor-copy-FMv2Ek7A.mjs → scene-monitor-copy-DRLPt6W9.mjs} +1 -1
- package/dist/{square-CB2wuPUO.mjs → square-Bfh8RaUF.mjs} +1 -1
- package/dist/{trash-2-JwXG4MxN.mjs → trash-2-D-9uzmfU.mjs} +1 -1
- package/dist/{virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_model_studio_page__remoteEntry_js-C0ebXZ4C.mjs → virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_model_studio_page__remoteEntry_js-CrDmlyYW.mjs} +1 -1
- package/package.json +1 -1
- package/dist/_virtual_mf___mfe_internal__addon_model_studio_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-De0PN1jX.mjs +0 -26
|
@@ -5773,7 +5773,7 @@ var ZodIssueCode = {
|
|
|
5773
5773
|
var ZodFirstPartyTypeKind;
|
|
5774
5774
|
ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
|
|
5775
5775
|
//#endregion
|
|
5776
|
-
//#region ../types/dist/sleep-
|
|
5776
|
+
//#region ../types/dist/sleep-C16NCZR2.mjs
|
|
5777
5777
|
/**
|
|
5778
5778
|
* The audio chunk plane's byte format, and the ONE expansion from a coded
|
|
5779
5779
|
* window to float samples (D455).
|
|
@@ -10926,394 +10926,30 @@ var ClipSearchStrictnessSchema = _enum([
|
|
|
10926
10926
|
"balanced",
|
|
10927
10927
|
"strict"
|
|
10928
10928
|
]);
|
|
10929
|
-
|
|
10930
|
-
|
|
10931
|
-
id: "person",
|
|
10932
|
-
name: "Person"
|
|
10933
|
-
},
|
|
10934
|
-
{
|
|
10935
|
-
id: "bicycle",
|
|
10936
|
-
name: "Bicycle"
|
|
10937
|
-
},
|
|
10938
|
-
{
|
|
10939
|
-
id: "car",
|
|
10940
|
-
name: "Car"
|
|
10941
|
-
},
|
|
10942
|
-
{
|
|
10943
|
-
id: "motorcycle",
|
|
10944
|
-
name: "Motorcycle"
|
|
10945
|
-
},
|
|
10946
|
-
{
|
|
10947
|
-
id: "airplane",
|
|
10948
|
-
name: "Airplane"
|
|
10949
|
-
},
|
|
10950
|
-
{
|
|
10951
|
-
id: "bus",
|
|
10952
|
-
name: "Bus"
|
|
10953
|
-
},
|
|
10954
|
-
{
|
|
10955
|
-
id: "train",
|
|
10956
|
-
name: "Train"
|
|
10957
|
-
},
|
|
10958
|
-
{
|
|
10959
|
-
id: "truck",
|
|
10960
|
-
name: "Truck"
|
|
10961
|
-
},
|
|
10962
|
-
{
|
|
10963
|
-
id: "boat",
|
|
10964
|
-
name: "Boat"
|
|
10965
|
-
},
|
|
10966
|
-
{
|
|
10967
|
-
id: "traffic light",
|
|
10968
|
-
name: "Traffic Light"
|
|
10969
|
-
},
|
|
10970
|
-
{
|
|
10971
|
-
id: "fire hydrant",
|
|
10972
|
-
name: "Fire Hydrant"
|
|
10973
|
-
},
|
|
10974
|
-
{
|
|
10975
|
-
id: "stop sign",
|
|
10976
|
-
name: "Stop Sign"
|
|
10977
|
-
},
|
|
10978
|
-
{
|
|
10979
|
-
id: "parking meter",
|
|
10980
|
-
name: "Parking Meter"
|
|
10981
|
-
},
|
|
10982
|
-
{
|
|
10983
|
-
id: "bench",
|
|
10984
|
-
name: "Bench"
|
|
10985
|
-
},
|
|
10986
|
-
{
|
|
10987
|
-
id: "bird",
|
|
10988
|
-
name: "Bird"
|
|
10989
|
-
},
|
|
10990
|
-
{
|
|
10991
|
-
id: "cat",
|
|
10992
|
-
name: "Cat"
|
|
10993
|
-
},
|
|
10994
|
-
{
|
|
10995
|
-
id: "dog",
|
|
10996
|
-
name: "Dog"
|
|
10997
|
-
},
|
|
10998
|
-
{
|
|
10999
|
-
id: "horse",
|
|
11000
|
-
name: "Horse"
|
|
11001
|
-
},
|
|
11002
|
-
{
|
|
11003
|
-
id: "sheep",
|
|
11004
|
-
name: "Sheep"
|
|
11005
|
-
},
|
|
11006
|
-
{
|
|
11007
|
-
id: "cow",
|
|
11008
|
-
name: "Cow"
|
|
11009
|
-
},
|
|
11010
|
-
{
|
|
11011
|
-
id: "elephant",
|
|
11012
|
-
name: "Elephant"
|
|
11013
|
-
},
|
|
11014
|
-
{
|
|
11015
|
-
id: "bear",
|
|
11016
|
-
name: "Bear"
|
|
11017
|
-
},
|
|
11018
|
-
{
|
|
11019
|
-
id: "zebra",
|
|
11020
|
-
name: "Zebra"
|
|
11021
|
-
},
|
|
11022
|
-
{
|
|
11023
|
-
id: "giraffe",
|
|
11024
|
-
name: "Giraffe"
|
|
11025
|
-
},
|
|
11026
|
-
{
|
|
11027
|
-
id: "backpack",
|
|
11028
|
-
name: "Backpack"
|
|
11029
|
-
},
|
|
11030
|
-
{
|
|
11031
|
-
id: "umbrella",
|
|
11032
|
-
name: "Umbrella"
|
|
11033
|
-
},
|
|
11034
|
-
{
|
|
11035
|
-
id: "handbag",
|
|
11036
|
-
name: "Handbag"
|
|
11037
|
-
},
|
|
11038
|
-
{
|
|
11039
|
-
id: "tie",
|
|
11040
|
-
name: "Tie"
|
|
11041
|
-
},
|
|
11042
|
-
{
|
|
11043
|
-
id: "suitcase",
|
|
11044
|
-
name: "Suitcase"
|
|
11045
|
-
},
|
|
11046
|
-
{
|
|
11047
|
-
id: "frisbee",
|
|
11048
|
-
name: "Frisbee"
|
|
11049
|
-
},
|
|
11050
|
-
{
|
|
11051
|
-
id: "skis",
|
|
11052
|
-
name: "Skis"
|
|
11053
|
-
},
|
|
11054
|
-
{
|
|
11055
|
-
id: "snowboard",
|
|
11056
|
-
name: "Snowboard"
|
|
11057
|
-
},
|
|
11058
|
-
{
|
|
11059
|
-
id: "sports ball",
|
|
11060
|
-
name: "Sports Ball"
|
|
11061
|
-
},
|
|
11062
|
-
{
|
|
11063
|
-
id: "kite",
|
|
11064
|
-
name: "Kite"
|
|
11065
|
-
},
|
|
11066
|
-
{
|
|
11067
|
-
id: "baseball bat",
|
|
11068
|
-
name: "Baseball Bat"
|
|
11069
|
-
},
|
|
11070
|
-
{
|
|
11071
|
-
id: "baseball glove",
|
|
11072
|
-
name: "Baseball Glove"
|
|
11073
|
-
},
|
|
11074
|
-
{
|
|
11075
|
-
id: "skateboard",
|
|
11076
|
-
name: "Skateboard"
|
|
11077
|
-
},
|
|
11078
|
-
{
|
|
11079
|
-
id: "surfboard",
|
|
11080
|
-
name: "Surfboard"
|
|
11081
|
-
},
|
|
11082
|
-
{
|
|
11083
|
-
id: "tennis racket",
|
|
11084
|
-
name: "Tennis Racket"
|
|
11085
|
-
},
|
|
11086
|
-
{
|
|
11087
|
-
id: "bottle",
|
|
11088
|
-
name: "Bottle"
|
|
11089
|
-
},
|
|
11090
|
-
{
|
|
11091
|
-
id: "wine glass",
|
|
11092
|
-
name: "Wine Glass"
|
|
11093
|
-
},
|
|
11094
|
-
{
|
|
11095
|
-
id: "cup",
|
|
11096
|
-
name: "Cup"
|
|
11097
|
-
},
|
|
11098
|
-
{
|
|
11099
|
-
id: "fork",
|
|
11100
|
-
name: "Fork"
|
|
11101
|
-
},
|
|
11102
|
-
{
|
|
11103
|
-
id: "knife",
|
|
11104
|
-
name: "Knife"
|
|
11105
|
-
},
|
|
11106
|
-
{
|
|
11107
|
-
id: "spoon",
|
|
11108
|
-
name: "Spoon"
|
|
11109
|
-
},
|
|
11110
|
-
{
|
|
11111
|
-
id: "bowl",
|
|
11112
|
-
name: "Bowl"
|
|
11113
|
-
},
|
|
11114
|
-
{
|
|
11115
|
-
id: "banana",
|
|
11116
|
-
name: "Banana"
|
|
11117
|
-
},
|
|
11118
|
-
{
|
|
11119
|
-
id: "apple",
|
|
11120
|
-
name: "Apple"
|
|
11121
|
-
},
|
|
11122
|
-
{
|
|
11123
|
-
id: "sandwich",
|
|
11124
|
-
name: "Sandwich"
|
|
11125
|
-
},
|
|
11126
|
-
{
|
|
11127
|
-
id: "orange",
|
|
11128
|
-
name: "Orange"
|
|
11129
|
-
},
|
|
11130
|
-
{
|
|
11131
|
-
id: "broccoli",
|
|
11132
|
-
name: "Broccoli"
|
|
11133
|
-
},
|
|
11134
|
-
{
|
|
11135
|
-
id: "carrot",
|
|
11136
|
-
name: "Carrot"
|
|
11137
|
-
},
|
|
11138
|
-
{
|
|
11139
|
-
id: "hot dog",
|
|
11140
|
-
name: "Hot Dog"
|
|
11141
|
-
},
|
|
11142
|
-
{
|
|
11143
|
-
id: "pizza",
|
|
11144
|
-
name: "Pizza"
|
|
11145
|
-
},
|
|
11146
|
-
{
|
|
11147
|
-
id: "donut",
|
|
11148
|
-
name: "Donut"
|
|
11149
|
-
},
|
|
11150
|
-
{
|
|
11151
|
-
id: "cake",
|
|
11152
|
-
name: "Cake"
|
|
11153
|
-
},
|
|
11154
|
-
{
|
|
11155
|
-
id: "chair",
|
|
11156
|
-
name: "Chair"
|
|
11157
|
-
},
|
|
11158
|
-
{
|
|
11159
|
-
id: "couch",
|
|
11160
|
-
name: "Couch"
|
|
11161
|
-
},
|
|
11162
|
-
{
|
|
11163
|
-
id: "potted plant",
|
|
11164
|
-
name: "Potted Plant"
|
|
11165
|
-
},
|
|
11166
|
-
{
|
|
11167
|
-
id: "bed",
|
|
11168
|
-
name: "Bed"
|
|
11169
|
-
},
|
|
11170
|
-
{
|
|
11171
|
-
id: "dining table",
|
|
11172
|
-
name: "Dining Table"
|
|
11173
|
-
},
|
|
11174
|
-
{
|
|
11175
|
-
id: "toilet",
|
|
11176
|
-
name: "Toilet"
|
|
11177
|
-
},
|
|
11178
|
-
{
|
|
11179
|
-
id: "tv",
|
|
11180
|
-
name: "TV"
|
|
11181
|
-
},
|
|
11182
|
-
{
|
|
11183
|
-
id: "laptop",
|
|
11184
|
-
name: "Laptop"
|
|
11185
|
-
},
|
|
11186
|
-
{
|
|
11187
|
-
id: "mouse",
|
|
11188
|
-
name: "Mouse"
|
|
11189
|
-
},
|
|
11190
|
-
{
|
|
11191
|
-
id: "remote",
|
|
11192
|
-
name: "Remote"
|
|
11193
|
-
},
|
|
11194
|
-
{
|
|
11195
|
-
id: "keyboard",
|
|
11196
|
-
name: "Keyboard"
|
|
11197
|
-
},
|
|
11198
|
-
{
|
|
11199
|
-
id: "cell phone",
|
|
11200
|
-
name: "Cell Phone"
|
|
11201
|
-
},
|
|
11202
|
-
{
|
|
11203
|
-
id: "microwave",
|
|
11204
|
-
name: "Microwave"
|
|
11205
|
-
},
|
|
11206
|
-
{
|
|
11207
|
-
id: "oven",
|
|
11208
|
-
name: "Oven"
|
|
11209
|
-
},
|
|
11210
|
-
{
|
|
11211
|
-
id: "toaster",
|
|
11212
|
-
name: "Toaster"
|
|
11213
|
-
},
|
|
11214
|
-
{
|
|
11215
|
-
id: "sink",
|
|
11216
|
-
name: "Sink"
|
|
11217
|
-
},
|
|
11218
|
-
{
|
|
11219
|
-
id: "refrigerator",
|
|
11220
|
-
name: "Refrigerator"
|
|
11221
|
-
},
|
|
11222
|
-
{
|
|
11223
|
-
id: "book",
|
|
11224
|
-
name: "Book"
|
|
11225
|
-
},
|
|
11226
|
-
{
|
|
11227
|
-
id: "clock",
|
|
11228
|
-
name: "Clock"
|
|
11229
|
-
},
|
|
11230
|
-
{
|
|
11231
|
-
id: "vase",
|
|
11232
|
-
name: "Vase"
|
|
11233
|
-
},
|
|
11234
|
-
{
|
|
11235
|
-
id: "scissors",
|
|
11236
|
-
name: "Scissors"
|
|
11237
|
-
},
|
|
11238
|
-
{
|
|
11239
|
-
id: "teddy bear",
|
|
11240
|
-
name: "Teddy Bear"
|
|
11241
|
-
},
|
|
11242
|
-
{
|
|
11243
|
-
id: "hair drier",
|
|
11244
|
-
name: "Hair Drier"
|
|
11245
|
-
},
|
|
11246
|
-
{
|
|
11247
|
-
id: "toothbrush",
|
|
11248
|
-
name: "Toothbrush"
|
|
11249
|
-
}
|
|
11250
|
-
];
|
|
11251
|
-
new Set([
|
|
11252
|
-
{
|
|
11253
|
-
id: "person",
|
|
11254
|
-
name: "Person"
|
|
11255
|
-
},
|
|
11256
|
-
{
|
|
11257
|
-
id: "vehicle",
|
|
11258
|
-
name: "Vehicle"
|
|
11259
|
-
},
|
|
11260
|
-
{
|
|
11261
|
-
id: "animal",
|
|
11262
|
-
name: "Animal"
|
|
11263
|
-
},
|
|
11264
|
-
{
|
|
11265
|
-
id: "package",
|
|
11266
|
-
name: "Package"
|
|
11267
|
-
}
|
|
11268
|
-
].map((l) => l.id));
|
|
11269
|
-
var COCO_TO_MACRO = {
|
|
11270
|
-
mapping: {
|
|
11271
|
-
person: "person",
|
|
11272
|
-
bicycle: "vehicle",
|
|
11273
|
-
car: "vehicle",
|
|
11274
|
-
motorcycle: "vehicle",
|
|
11275
|
-
airplane: "vehicle",
|
|
11276
|
-
bus: "vehicle",
|
|
11277
|
-
train: "vehicle",
|
|
11278
|
-
truck: "vehicle",
|
|
11279
|
-
boat: "vehicle",
|
|
11280
|
-
bird: "animal",
|
|
11281
|
-
cat: "animal",
|
|
11282
|
-
dog: "animal",
|
|
11283
|
-
horse: "animal",
|
|
11284
|
-
sheep: "animal",
|
|
11285
|
-
cow: "animal",
|
|
11286
|
-
elephant: "animal",
|
|
11287
|
-
bear: "animal",
|
|
11288
|
-
zebra: "animal",
|
|
11289
|
-
giraffe: "animal",
|
|
11290
|
-
suitcase: "package",
|
|
11291
|
-
backpack: "package",
|
|
11292
|
-
handbag: "package"
|
|
11293
|
-
},
|
|
11294
|
-
preserveOriginal: false
|
|
11295
|
-
};
|
|
11296
|
-
/** Steps a root detector may declare it fills. */
|
|
11297
|
-
var FILLABLE_STEP_IDS = [
|
|
10929
|
+
/** Steps whose effect a root label can BE. */
|
|
10930
|
+
var LABEL_SUPPLY_STEP_IDS = [
|
|
11298
10931
|
"animal-classifier",
|
|
11299
10932
|
"vehicle-classifier",
|
|
11300
10933
|
"package-detection"
|
|
11301
10934
|
];
|
|
10935
|
+
/** Steps whose box a root detection can BE. */
|
|
10936
|
+
var CROP_SUPPLY_STEP_IDS = ["plate-detection", "face-detection"];
|
|
10937
|
+
[...LABEL_SUPPLY_STEP_IDS, ...CROP_SUPPLY_STEP_IDS];
|
|
11302
10938
|
/**
|
|
11303
|
-
* The EFFECT vocabulary of each
|
|
10939
|
+
* The EFFECT vocabulary of each label-kind step: exactly the strings the step
|
|
11304
10940
|
* itself emits, in its own spelling. A linked label is one of these and nothing
|
|
11305
10941
|
* else, so a tier-1 value means the same thing whichever writer produced it.
|
|
11306
10942
|
*
|
|
11307
10943
|
* - `animal-classifier`: the PRIMARY model's `-labels.json` (Open Images V7,
|
|
11308
10944
|
* 8 classes) — also the species allow-list the step offers.
|
|
11309
|
-
* - `vehicle-classifier`:
|
|
11310
|
-
*
|
|
10945
|
+
* - `vehicle-classifier`: the classifier's labels, capitalised as it emits them
|
|
10946
|
+
* (it writes `winner.class` verbatim).
|
|
11311
10947
|
* - `package-detection`: its one output class.
|
|
11312
10948
|
*
|
|
11313
|
-
* `scripts/check-label-link-vocabulary.ts` fails the build if a
|
|
10949
|
+
* `scripts/check-label-link-vocabulary.ts` fails the build if a declared
|
|
11314
10950
|
* `labelToEffect` names anything outside this table.
|
|
11315
10951
|
*/
|
|
11316
|
-
var
|
|
10952
|
+
var LABEL_SUPPLY_VOCABULARIES = {
|
|
11317
10953
|
"animal-classifier": [
|
|
11318
10954
|
"bird",
|
|
11319
10955
|
"cat",
|
|
@@ -11336,8 +10972,8 @@ var FILLABLE_STEP_VOCABULARIES = {
|
|
|
11336
10972
|
],
|
|
11337
10973
|
"package-detection": ["package"]
|
|
11338
10974
|
};
|
|
11339
|
-
/** The macro a detection must carry for
|
|
11340
|
-
var
|
|
10975
|
+
/** The macro a detection must carry for a label-kind step to apply to it. */
|
|
10976
|
+
var LABEL_SUPPLY_MACRO = {
|
|
11341
10977
|
"animal-classifier": "animal",
|
|
11342
10978
|
"vehicle-classifier": "vehicle",
|
|
11343
10979
|
"package-detection": "package"
|
|
@@ -11354,49 +10990,75 @@ var EFFECT_ALIASES = {
|
|
|
11354
10990
|
},
|
|
11355
10991
|
"package-detection": {}
|
|
11356
10992
|
};
|
|
11357
|
-
|
|
11358
|
-
|
|
11359
|
-
|
|
11360
|
-
|
|
11361
|
-
|
|
11362
|
-
|
|
11363
|
-
|
|
11364
|
-
|
|
11365
|
-
|
|
11366
|
-
|
|
11367
|
-
|
|
10993
|
+
var CROP_SUPPLY_SOURCES = {
|
|
10994
|
+
"plate-detection": {
|
|
10995
|
+
rootLabels: ["license_plate"],
|
|
10996
|
+
parentMacro: "vehicle",
|
|
10997
|
+
childClass: "plate",
|
|
10998
|
+
servedChildSteps: ["plate-ocr"],
|
|
10999
|
+
use: "as-output"
|
|
11000
|
+
},
|
|
11001
|
+
"face-detection": {
|
|
11002
|
+
rootLabels: ["face"],
|
|
11003
|
+
parentMacro: "person",
|
|
11004
|
+
childClass: "face",
|
|
11005
|
+
servedChildSteps: ["face-embedding"],
|
|
11006
|
+
use: "refine",
|
|
11007
|
+
minRootInputPx: 640
|
|
11008
|
+
}
|
|
11009
|
+
};
|
|
11368
11010
|
function effectFor(stepId, label) {
|
|
11369
11011
|
const alias = EFFECT_ALIASES[stepId][label];
|
|
11370
11012
|
if (alias !== void 0) return alias;
|
|
11371
11013
|
const folded = label.toLowerCase();
|
|
11372
|
-
return
|
|
11014
|
+
return LABEL_SUPPLY_VOCABULARIES[stepId].find((v) => v.toLowerCase() === folded);
|
|
11373
11015
|
}
|
|
11374
11016
|
/**
|
|
11375
|
-
* Which steps a root detector
|
|
11376
|
-
*
|
|
11377
|
-
*
|
|
11378
|
-
*
|
|
11017
|
+
* Which steps a root detector can supply, from its labelmap and classMap.
|
|
11018
|
+
*
|
|
11019
|
+
* - label kind: a label counts for a step only when the classMap sends it to
|
|
11020
|
+
* that step's macro AND it names a vocabulary entry. Every root is judged
|
|
11021
|
+
* the same way — a COCO model supplies the animal classifier with the six
|
|
11022
|
+
* species COCO names, exactly as a Frigate+ model supplies seven.
|
|
11023
|
+
* - crop kind: the labelmap carries one of the step's root labels. Those
|
|
11024
|
+
* labels are deliberately left out of the classMap, so they never make a
|
|
11025
|
+
* track of their own.
|
|
11026
|
+
*
|
|
11027
|
+
* No classMap ⇒ no label supply (nothing says which macro a label lives under).
|
|
11379
11028
|
*/
|
|
11380
|
-
function
|
|
11381
|
-
|
|
11382
|
-
const
|
|
11383
|
-
for (const stepId of FILLABLE_STEP_IDS) {
|
|
11029
|
+
function deriveRootSupplies(labels, classMap) {
|
|
11030
|
+
const supplies = [];
|
|
11031
|
+
if (classMap !== void 0) for (const stepId of LABEL_SUPPLY_STEP_IDS) {
|
|
11384
11032
|
const labelToEffect = {};
|
|
11385
11033
|
for (const label of labels) {
|
|
11386
|
-
if (classMap.mapping[label] !==
|
|
11034
|
+
if (classMap.mapping[label] !== LABEL_SUPPLY_MACRO[stepId]) continue;
|
|
11387
11035
|
const effect = effectFor(stepId, label);
|
|
11388
11036
|
if (effect !== void 0) labelToEffect[label] = effect;
|
|
11389
11037
|
}
|
|
11390
11038
|
const covered = new Set(Object.values(labelToEffect));
|
|
11391
11039
|
if (covered.size === 0) continue;
|
|
11392
|
-
const uncovered =
|
|
11393
|
-
|
|
11040
|
+
const uncovered = LABEL_SUPPLY_VOCABULARIES[stepId].filter((v) => !covered.has(v));
|
|
11041
|
+
supplies.push({
|
|
11042
|
+
kind: "label",
|
|
11394
11043
|
stepId,
|
|
11395
11044
|
labelToEffect,
|
|
11396
11045
|
uncovered
|
|
11397
11046
|
});
|
|
11398
11047
|
}
|
|
11399
|
-
|
|
11048
|
+
const present = new Set(labels);
|
|
11049
|
+
for (const stepId of CROP_SUPPLY_STEP_IDS) {
|
|
11050
|
+
const source = CROP_SUPPLY_SOURCES[stepId];
|
|
11051
|
+
const rootLabels = source.rootLabels.filter((l) => present.has(l));
|
|
11052
|
+
if (rootLabels.length === 0) continue;
|
|
11053
|
+
supplies.push({
|
|
11054
|
+
kind: "crop",
|
|
11055
|
+
stepId,
|
|
11056
|
+
rootLabels,
|
|
11057
|
+
parentMacro: source.parentMacro,
|
|
11058
|
+
childClass: source.childClass
|
|
11059
|
+
});
|
|
11060
|
+
}
|
|
11061
|
+
return supplies;
|
|
11400
11062
|
}
|
|
11401
11063
|
var MODEL_FORMATS = [
|
|
11402
11064
|
"onnx",
|
|
@@ -11530,12 +11192,35 @@ var ModelLicenseSchema = preprocess((value) => typeof value === "string" ? { wei
|
|
|
11530
11192
|
/** True when the weights or their data forbid commercial use. */
|
|
11531
11193
|
nonCommercial: boolean().optional()
|
|
11532
11194
|
}));
|
|
11533
|
-
/**
|
|
11534
|
-
|
|
11535
|
-
|
|
11195
|
+
/**
|
|
11196
|
+
* One step a ROOT detector can supply from its own output (D730) — see
|
|
11197
|
+
* `ModelCatalogEntry.suppliesSteps`.
|
|
11198
|
+
*
|
|
11199
|
+
* - `label`: the root's raw class IS the step's answer. `labelToEffect` maps
|
|
11200
|
+
* the root's label to the step's vocabulary; `uncovered` is the vocabulary
|
|
11201
|
+
* the root cannot produce (shown as unavailable, never a blocker).
|
|
11202
|
+
* - `crop`: the root draws the box the step would have found (`license_plate`
|
|
11203
|
+
* for plate-detection, `face` for face-detection). The box becomes a detail
|
|
11204
|
+
* child of the `parentMacro` detection that contains it — never a track.
|
|
11205
|
+
*/
|
|
11206
|
+
var RootStepSupplySchema = discriminatedUnion("kind", [object({
|
|
11207
|
+
kind: literal("label"),
|
|
11208
|
+
stepId: _enum(LABEL_SUPPLY_STEP_IDS),
|
|
11536
11209
|
labelToEffect: record(string(), string()),
|
|
11537
11210
|
uncovered: array(string()).readonly()
|
|
11538
|
-
})
|
|
11211
|
+
}), object({
|
|
11212
|
+
kind: literal("crop"),
|
|
11213
|
+
stepId: _enum(CROP_SUPPLY_STEP_IDS),
|
|
11214
|
+
rootLabels: array(string()).readonly(),
|
|
11215
|
+
parentMacro: _enum(["vehicle", "person"]),
|
|
11216
|
+
childClass: _enum(["plate", "face"]),
|
|
11217
|
+
/**
|
|
11218
|
+
* The root's smaller input side, stamped on read by `rootSuppliesOf` from
|
|
11219
|
+
* the model entry — what a step's `minRootInputPx` gate judges. Never
|
|
11220
|
+
* stored by an import.
|
|
11221
|
+
*/
|
|
11222
|
+
rootInputPx: number().int().positive().optional()
|
|
11223
|
+
})]);
|
|
11539
11224
|
var ModelCatalogEntrySchema = object({
|
|
11540
11225
|
id: string(),
|
|
11541
11226
|
name: string(),
|
|
@@ -11662,15 +11347,15 @@ var ModelCatalogEntrySchema = object({
|
|
|
11662
11347
|
*/
|
|
11663
11348
|
classMap: DetectionCatalogClassMapSchema.optional(),
|
|
11664
11349
|
/**
|
|
11665
|
-
* The pipeline steps this ROOT detector
|
|
11666
|
-
* its labels name
|
|
11667
|
-
*
|
|
11668
|
-
* labelmap by `
|
|
11669
|
-
*
|
|
11670
|
-
*
|
|
11671
|
-
* `
|
|
11350
|
+
* The pipeline steps this ROOT detector can supply from its own output
|
|
11351
|
+
* (D730): its labels name a step's effect (`deer` for `animal-classifier`)
|
|
11352
|
+
* or draw a step's box (`license_plate` for `plate-detection`). Computed at
|
|
11353
|
+
* import from THIS model's labelmap by `deriveRootSupplies`, never written
|
|
11354
|
+
* by hand and never assumed per family; a row without it is derived on read
|
|
11355
|
+
* (`rootSuppliesOf`). Whether a camera uses it is the step's own
|
|
11356
|
+
* `useRootModel` flag (`resolveRootSupply`).
|
|
11672
11357
|
*/
|
|
11673
|
-
|
|
11358
|
+
suppliesSteps: array(RootStepSupplySchema).readonly().optional(),
|
|
11674
11359
|
/**
|
|
11675
11360
|
* The model's CLIP feature-space contract (text encoder, dimension, vector
|
|
11676
11361
|
* index, token window, search floor) — see `clip-model.ts`. Present ONLY on a
|
|
@@ -18632,6 +18317,51 @@ method(object({}), array(TargetKindSchema)), method(object({}), array(TargetSche
|
|
|
18632
18317
|
kind: "mutation",
|
|
18633
18318
|
auth: "admin"
|
|
18634
18319
|
});
|
|
18320
|
+
new Set([
|
|
18321
|
+
{
|
|
18322
|
+
id: "person",
|
|
18323
|
+
name: "Person"
|
|
18324
|
+
},
|
|
18325
|
+
{
|
|
18326
|
+
id: "vehicle",
|
|
18327
|
+
name: "Vehicle"
|
|
18328
|
+
},
|
|
18329
|
+
{
|
|
18330
|
+
id: "animal",
|
|
18331
|
+
name: "Animal"
|
|
18332
|
+
},
|
|
18333
|
+
{
|
|
18334
|
+
id: "package",
|
|
18335
|
+
name: "Package"
|
|
18336
|
+
}
|
|
18337
|
+
].map((l) => l.id));
|
|
18338
|
+
var COCO_TO_MACRO = {
|
|
18339
|
+
mapping: {
|
|
18340
|
+
person: "person",
|
|
18341
|
+
bicycle: "vehicle",
|
|
18342
|
+
car: "vehicle",
|
|
18343
|
+
motorcycle: "vehicle",
|
|
18344
|
+
airplane: "vehicle",
|
|
18345
|
+
bus: "vehicle",
|
|
18346
|
+
train: "vehicle",
|
|
18347
|
+
truck: "vehicle",
|
|
18348
|
+
boat: "vehicle",
|
|
18349
|
+
bird: "animal",
|
|
18350
|
+
cat: "animal",
|
|
18351
|
+
dog: "animal",
|
|
18352
|
+
horse: "animal",
|
|
18353
|
+
sheep: "animal",
|
|
18354
|
+
cow: "animal",
|
|
18355
|
+
elephant: "animal",
|
|
18356
|
+
bear: "animal",
|
|
18357
|
+
zebra: "animal",
|
|
18358
|
+
giraffe: "animal",
|
|
18359
|
+
suitcase: "package",
|
|
18360
|
+
backpack: "package",
|
|
18361
|
+
handbag: "package"
|
|
18362
|
+
},
|
|
18363
|
+
preserveOriginal: false
|
|
18364
|
+
};
|
|
18635
18365
|
var AUDIO_MACRO_LABELS = [
|
|
18636
18366
|
{
|
|
18637
18367
|
id: "speech",
|
|
@@ -23908,6 +23638,34 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
|
|
|
23908
23638
|
timestamp: number()
|
|
23909
23639
|
});
|
|
23910
23640
|
/**
|
|
23641
|
+
* A root model's boxes standing in for one crop-kind step's own inference
|
|
23642
|
+
* (D730) — see `runPipeline.suppliedRoot`.
|
|
23643
|
+
*/
|
|
23644
|
+
var SuppliedRootOutputSchema = object({
|
|
23645
|
+
stepId: string(),
|
|
23646
|
+
/** The root model that drew the boxes — stamped on the result. */
|
|
23647
|
+
modelId: string(),
|
|
23648
|
+
detections: array(object({
|
|
23649
|
+
/** `[x1, y1, x2, y2]` in the pixels of the call's image. */
|
|
23650
|
+
bbox: tuple([
|
|
23651
|
+
number(),
|
|
23652
|
+
number(),
|
|
23653
|
+
number(),
|
|
23654
|
+
number()
|
|
23655
|
+
]),
|
|
23656
|
+
score: number(),
|
|
23657
|
+
/**
|
|
23658
|
+
* Five facial landmarks in the same pixels — a face the step's own
|
|
23659
|
+
* detector already re-found inside a root face box (D730), so its
|
|
23660
|
+
* embedder child aligns it exactly as it aligns any detected face.
|
|
23661
|
+
*/
|
|
23662
|
+
landmarks: array(object({
|
|
23663
|
+
x: number(),
|
|
23664
|
+
y: number()
|
|
23665
|
+
})).optional()
|
|
23666
|
+
})).min(1)
|
|
23667
|
+
});
|
|
23668
|
+
/**
|
|
23911
23669
|
* Reference to the frame's retained NATIVE surface + the parent crop's placement
|
|
23912
23670
|
* within the frame, so the executor can re-cut a leaf child ROI at native
|
|
23913
23671
|
* resolution on the detail plane. See the `runPipeline` `nativeCropRef` field.
|
|
@@ -24038,7 +23796,7 @@ var PipelineModelOptionSchema = object({
|
|
|
24038
23796
|
legacy: boolean().optional(),
|
|
24039
23797
|
provider: ModelProviderIdSchema.optional(),
|
|
24040
23798
|
defaultConfidence: number().optional(),
|
|
24041
|
-
|
|
23799
|
+
suppliesSteps: array(RootStepSupplySchema).readonly().optional()
|
|
24042
23800
|
});
|
|
24043
23801
|
var ConfigFieldBridge = custom();
|
|
24044
23802
|
var PipelineAddonSchemaSchema = object({
|
|
@@ -24306,7 +24064,16 @@ method(_void(), array(PipelineEngineChoiceSchema)), method(_void(), PipelineEngi
|
|
|
24306
24064
|
* `device-not-servable`), and nothing reaches the camera's live
|
|
24307
24065
|
* trace stream. Absent ⇒ unchanged behaviour.
|
|
24308
24066
|
*/
|
|
24309
|
-
replay: literal(true).optional()
|
|
24067
|
+
replay: literal(true).optional(),
|
|
24068
|
+
/**
|
|
24069
|
+
* Root-supplied detections for the tree's ROOT step (D730). Set by
|
|
24070
|
+
* `runDetailSubtree` when the camera's root model supplies a crop-kind
|
|
24071
|
+
* step (a Frigate+ `license_plate` for `plate-detection`): the step is
|
|
24072
|
+
* NOT inferred, these boxes are its output, and its children (the plate
|
|
24073
|
+
* reader) run on them through their own crop policy. Boxes are in the
|
|
24074
|
+
* PIXELS of the image this call carries. Absent ⇒ the root step runs.
|
|
24075
|
+
*/
|
|
24076
|
+
suppliedRoot: SuppliedRootOutputSchema.optional()
|
|
24310
24077
|
}), PipelineRunResultBridge, { kind: "mutation" }), method(object({
|
|
24311
24078
|
steps: array(PipelineStepInputSchema).min(1),
|
|
24312
24079
|
frames: array(FrameInputSchema).min(1).max(255),
|
|
@@ -25408,7 +25175,22 @@ method(RunnerCameraConfigSchema, object({ success: literal(true) }), { kind: "mu
|
|
|
25408
25175
|
*/
|
|
25409
25176
|
cropJpeg: string().optional(),
|
|
25410
25177
|
parent: DetailParentSchema,
|
|
25411
|
-
steps: array(string()).optional()
|
|
25178
|
+
steps: array(string()).optional(),
|
|
25179
|
+
/**
|
|
25180
|
+
* The camera's root model already drew this step's boxes (D730): a
|
|
25181
|
+
* `license_plate` inside the parent vehicle. The named step is NOT
|
|
25182
|
+
* inferred — these FRAME-space boxes are its output — and its
|
|
25183
|
+
* requested children (the plate reader) run on them. Absent ⇒ every
|
|
25184
|
+
* requested step infers as before.
|
|
25185
|
+
*/
|
|
25186
|
+
supplied: object({
|
|
25187
|
+
stepId: string(),
|
|
25188
|
+
modelId: string(),
|
|
25189
|
+
boxes: array(object({
|
|
25190
|
+
bbox: NativeCropBboxSchema,
|
|
25191
|
+
score: number()
|
|
25192
|
+
})).min(1)
|
|
25193
|
+
}).optional()
|
|
25412
25194
|
}), object({ details: array(DetailResultSchema) }).nullable(), { kind: "mutation" }), method(object({
|
|
25413
25195
|
/** Catalog step id, e.g. `clip-embedding`. */
|
|
25414
25196
|
stepId: string(),
|
|
@@ -28709,6 +28491,14 @@ DeviceType.Camera, method(object({ deviceId: number().int().nonnegative() }), ar
|
|
|
28709
28491
|
*/
|
|
28710
28492
|
alive: boolean()
|
|
28711
28493
|
})), method(object({
|
|
28494
|
+
deviceId: number().int().nonnegative(),
|
|
28495
|
+
sessionId: string(),
|
|
28496
|
+
downlinkMbps: number().nonnegative()
|
|
28497
|
+
}), object({
|
|
28498
|
+
outcome: _enum(["switching", "held"]),
|
|
28499
|
+
tier: CamProfileSchema.nullable(),
|
|
28500
|
+
reason: string()
|
|
28501
|
+
}), { kind: "mutation" }), method(object({
|
|
28712
28502
|
deviceId: number().int().nonnegative(),
|
|
28713
28503
|
sessionId: string()
|
|
28714
28504
|
}), WebrtcSessionDebugSchema, { kind: "query" });
|
|
@@ -31384,7 +31174,8 @@ var ConnectionEndpointSchema = object({
|
|
|
31384
31174
|
"lan-ipv6",
|
|
31385
31175
|
"public",
|
|
31386
31176
|
"loopback",
|
|
31387
|
-
"app-link"
|
|
31177
|
+
"app-link",
|
|
31178
|
+
"custom"
|
|
31388
31179
|
]),
|
|
31389
31180
|
/**
|
|
31390
31181
|
* Originating-interface kind — `lan`/`wifi`/`docker`/`vpn`/`other`/
|
|
@@ -31486,6 +31277,76 @@ var ViewerEndpointsSchema = object({
|
|
|
31486
31277
|
/** What the ranking currently resolves to (may be empty if nothing is up). */
|
|
31487
31278
|
resolved: array(string()).readonly()
|
|
31488
31279
|
});
|
|
31280
|
+
/**
|
|
31281
|
+
* DEPRECATED compatibility shape of `getHubAddresses` (D729 amendment, kept
|
|
31282
|
+
* one release for addons built against it): `cluster` is the `agents` role,
|
|
31283
|
+
* `browser` the `signIn` role; `override` is the flagged address.
|
|
31284
|
+
*/
|
|
31285
|
+
var HubAddressSnapshotSchema = object({
|
|
31286
|
+
override: string().nullable(),
|
|
31287
|
+
resolved: string().nullable(),
|
|
31288
|
+
source: _enum([
|
|
31289
|
+
"override",
|
|
31290
|
+
"auto",
|
|
31291
|
+
"none"
|
|
31292
|
+
])
|
|
31293
|
+
});
|
|
31294
|
+
var HubAddressesSchema = object({
|
|
31295
|
+
cluster: HubAddressSnapshotSchema,
|
|
31296
|
+
browser: HubAddressSnapshotSchema
|
|
31297
|
+
});
|
|
31298
|
+
/**
|
|
31299
|
+
* What an address is used for (`hub-address.ts`). `viewer` is many-valued;
|
|
31300
|
+
* `notifications`, `agents` and `signIn` are carried by at most one address.
|
|
31301
|
+
*/
|
|
31302
|
+
var HubAddressRoleSchema = _enum([
|
|
31303
|
+
"viewer",
|
|
31304
|
+
"notifications",
|
|
31305
|
+
"agents",
|
|
31306
|
+
"signIn"
|
|
31307
|
+
]);
|
|
31308
|
+
var RoleSourceSchema = _enum([
|
|
31309
|
+
"flagged",
|
|
31310
|
+
"auto",
|
|
31311
|
+
"none"
|
|
31312
|
+
]);
|
|
31313
|
+
/** One single-valued role: the flagged address, the one in use, and why. */
|
|
31314
|
+
var HubAddressRoleResolutionSchema = object({
|
|
31315
|
+
/** The address carrying the flag, or null = automatic. */
|
|
31316
|
+
flagged: string().nullable(),
|
|
31317
|
+
/** The address in use, or null when nothing qualifies (never loopback). */
|
|
31318
|
+
resolved: string().nullable(),
|
|
31319
|
+
source: RoleSourceSchema
|
|
31320
|
+
});
|
|
31321
|
+
var HubViewerResolutionSchema = object({
|
|
31322
|
+
/** The addresses flagged `viewer`, or empty = automatic. */
|
|
31323
|
+
flagged: array(string()).readonly(),
|
|
31324
|
+
/** What the apps race right now. */
|
|
31325
|
+
resolved: array(string()).readonly(),
|
|
31326
|
+
source: RoleSourceSchema
|
|
31327
|
+
});
|
|
31328
|
+
var HubAddressBookSchema = object({
|
|
31329
|
+
rows: array(ConnectionEndpointSchema.extend({
|
|
31330
|
+
/** In the hub's detected palette right now. */
|
|
31331
|
+
detected: boolean(),
|
|
31332
|
+
/** Entered by the operator (removable). */
|
|
31333
|
+
custom: boolean(),
|
|
31334
|
+
/** The roles explicitly flagged on this address. */
|
|
31335
|
+
flags: array(HubAddressRoleSchema).readonly(),
|
|
31336
|
+
/** The roles this address serves right now — flagged or automatic. */
|
|
31337
|
+
inUse: array(HubAddressRoleSchema).readonly(),
|
|
31338
|
+
/** The roles this address may be flagged with. */
|
|
31339
|
+
eligible: array(HubAddressRoleSchema).readonly()
|
|
31340
|
+
})).readonly(),
|
|
31341
|
+
roles: object({
|
|
31342
|
+
viewer: HubViewerResolutionSchema,
|
|
31343
|
+
notifications: HubAddressRoleResolutionSchema,
|
|
31344
|
+
agents: HubAddressRoleResolutionSchema,
|
|
31345
|
+
signIn: HubAddressRoleResolutionSchema
|
|
31346
|
+
}),
|
|
31347
|
+
/** The `hub=` an app link carries (D709), or null. */
|
|
31348
|
+
appLinkHub: string().nullable()
|
|
31349
|
+
});
|
|
31489
31350
|
var AllowedAddressesSchema = object({
|
|
31490
31351
|
/**
|
|
31491
31352
|
* Allowlist of interface addresses operators have explicitly opted
|
|
@@ -31532,7 +31393,24 @@ method(_void(), ListResultSchema), method(_void(), PreferredSchema), method(obje
|
|
|
31532
31393
|
* an address notification links can be flagged with, not a hub
|
|
31533
31394
|
* route. Default `false`: racers and rankers never see it. */
|
|
31534
31395
|
includeAppLink: boolean().optional()
|
|
31535
|
-
}), GetConnectionEndpointsResultSchema), method(_void(), NotificationEndpointSchema), method(object({ baseUrl: string().nullable() }), NotificationEndpointSchema, { kind: "mutation" }), method(_void(), ViewerEndpointsSchema), method(object({ baseUrls: array(string()).readonly() }), ViewerEndpointsSchema, { kind: "mutation" }), method(
|
|
31396
|
+
}), GetConnectionEndpointsResultSchema), method(_void(), NotificationEndpointSchema), method(object({ baseUrl: string().nullable() }), NotificationEndpointSchema, { kind: "mutation" }), method(_void(), ViewerEndpointsSchema), method(object({ baseUrls: array(string()).readonly() }), ViewerEndpointsSchema, { kind: "mutation" }), method(object({ scheme: _enum(["http", "https"]).optional() }).optional(), HubAddressBookSchema), method(object({
|
|
31397
|
+
baseUrl: string(),
|
|
31398
|
+
label: string().max(80)
|
|
31399
|
+
}), HubAddressBookSchema, {
|
|
31400
|
+
kind: "mutation",
|
|
31401
|
+
auth: "admin"
|
|
31402
|
+
}), method(object({ baseUrl: string() }), HubAddressBookSchema, {
|
|
31403
|
+
kind: "mutation",
|
|
31404
|
+
auth: "admin"
|
|
31405
|
+
}), method(object({
|
|
31406
|
+
role: HubAddressRoleSchema,
|
|
31407
|
+
baseUrl: string().nullable(),
|
|
31408
|
+
enabled: boolean(),
|
|
31409
|
+
acceptInsecureHttp: boolean().optional()
|
|
31410
|
+
}), HubAddressBookSchema, {
|
|
31411
|
+
kind: "mutation",
|
|
31412
|
+
auth: "admin"
|
|
31413
|
+
}), method(_void(), HubAddressesSchema), method(_void(), AllowedAddressesSchema), method(AllowedAddressesSchema, object({ success: literal(true) }), { kind: "mutation" }), method(_void(), AllowedAddressesSchema, { kind: "mutation" }), method(_void(), TlsStatusSchema), method(object({ reason: string().optional() }), TlsStatusSchema, {
|
|
31536
31414
|
kind: "mutation",
|
|
31537
31415
|
auth: "admin"
|
|
31538
31416
|
}), method(object({
|
|
@@ -37117,17 +36995,18 @@ function buildFrigateClassMap(labels) {
|
|
|
37117
36995
|
};
|
|
37118
36996
|
}
|
|
37119
36997
|
/**
|
|
37120
|
-
* Everything a Frigate / Frigate+ entry derives from
|
|
37121
|
-
* and the steps it
|
|
37122
|
-
*
|
|
37123
|
-
* and no
|
|
36998
|
+
* Everything a Frigate / Frigate+ entry derives from ITS OWN labelmap: the
|
|
36999
|
+
* classMap and the steps it can supply (D730) — label and crop kinds alike.
|
|
37000
|
+
* Every Frigate builder spreads this at import, so the two cannot be derived
|
|
37001
|
+
* from different label lists, and no family is assumed to carry a label it
|
|
37002
|
+
* does not list.
|
|
37124
37003
|
*/
|
|
37125
37004
|
function frigateLabelFields(labels) {
|
|
37126
37005
|
const classMap = buildFrigateClassMap(labels);
|
|
37127
|
-
const
|
|
37128
|
-
return
|
|
37006
|
+
const supplies = deriveRootSupplies(labels, classMap);
|
|
37007
|
+
return supplies.length > 0 ? {
|
|
37129
37008
|
classMap,
|
|
37130
|
-
|
|
37009
|
+
suppliesSteps: supplies
|
|
37131
37010
|
} : { classMap };
|
|
37132
37011
|
}
|
|
37133
37012
|
/**
|
|
@@ -40058,12 +39937,24 @@ Object.freeze({
|
|
|
40058
39937
|
addonId: null,
|
|
40059
39938
|
access: "view"
|
|
40060
39939
|
},
|
|
39940
|
+
"localNetwork.addCustomAddress": {
|
|
39941
|
+
capName: "local-network",
|
|
39942
|
+
capScope: "system",
|
|
39943
|
+
addonId: null,
|
|
39944
|
+
access: "create"
|
|
39945
|
+
},
|
|
40061
39946
|
"localNetwork.downloadCa": {
|
|
40062
39947
|
capName: "local-network",
|
|
40063
39948
|
capScope: "system",
|
|
40064
39949
|
addonId: null,
|
|
40065
39950
|
access: "view"
|
|
40066
39951
|
},
|
|
39952
|
+
"localNetwork.getAddresses": {
|
|
39953
|
+
capName: "local-network",
|
|
39954
|
+
capScope: "system",
|
|
39955
|
+
addonId: null,
|
|
39956
|
+
access: "view"
|
|
39957
|
+
},
|
|
40067
39958
|
"localNetwork.getAllowedAddresses": {
|
|
40068
39959
|
capName: "local-network",
|
|
40069
39960
|
capScope: "system",
|
|
@@ -40076,6 +39967,12 @@ Object.freeze({
|
|
|
40076
39967
|
addonId: null,
|
|
40077
39968
|
access: "view"
|
|
40078
39969
|
},
|
|
39970
|
+
"localNetwork.getHubAddresses": {
|
|
39971
|
+
capName: "local-network",
|
|
39972
|
+
capScope: "system",
|
|
39973
|
+
addonId: null,
|
|
39974
|
+
access: "view"
|
|
39975
|
+
},
|
|
40079
39976
|
"localNetwork.getNotificationEndpoint": {
|
|
40080
39977
|
capName: "local-network",
|
|
40081
39978
|
capScope: "system",
|
|
@@ -40112,6 +40009,12 @@ Object.freeze({
|
|
|
40112
40009
|
addonId: null,
|
|
40113
40010
|
access: "create"
|
|
40114
40011
|
},
|
|
40012
|
+
"localNetwork.removeCustomAddress": {
|
|
40013
|
+
capName: "local-network",
|
|
40014
|
+
capScope: "system",
|
|
40015
|
+
addonId: null,
|
|
40016
|
+
access: "delete"
|
|
40017
|
+
},
|
|
40115
40018
|
"localNetwork.resetAllowlistToBestMatch": {
|
|
40116
40019
|
capName: "local-network",
|
|
40117
40020
|
capScope: "system",
|
|
@@ -40124,6 +40027,12 @@ Object.freeze({
|
|
|
40124
40027
|
addonId: null,
|
|
40125
40028
|
access: "create"
|
|
40126
40029
|
},
|
|
40030
|
+
"localNetwork.setAddressRole": {
|
|
40031
|
+
capName: "local-network",
|
|
40032
|
+
capScope: "system",
|
|
40033
|
+
addonId: null,
|
|
40034
|
+
access: "create"
|
|
40035
|
+
},
|
|
40127
40036
|
"localNetwork.setAllowedAddresses": {
|
|
40128
40037
|
capName: "local-network",
|
|
40129
40038
|
capScope: "system",
|
|
@@ -44378,6 +44287,12 @@ Object.freeze({
|
|
|
44378
44287
|
addonId: null,
|
|
44379
44288
|
access: "create"
|
|
44380
44289
|
},
|
|
44290
|
+
"webrtcSession.applyDownlinkProbe": {
|
|
44291
|
+
capName: "webrtc-session",
|
|
44292
|
+
capScope: "device",
|
|
44293
|
+
addonId: null,
|
|
44294
|
+
access: "create"
|
|
44295
|
+
},
|
|
44381
44296
|
"webrtcSession.closeSession": {
|
|
44382
44297
|
capName: "webrtc-session",
|
|
44383
44298
|
capScope: "device",
|
|
@@ -48300,6 +48215,11 @@ Object.freeze({
|
|
|
48300
48215
|
form: "single",
|
|
48301
48216
|
optional: false
|
|
48302
48217
|
}],
|
|
48218
|
+
"webrtcSession.applyDownlinkProbe": [{
|
|
48219
|
+
name: "deviceId",
|
|
48220
|
+
form: "single",
|
|
48221
|
+
optional: false
|
|
48222
|
+
}],
|
|
48303
48223
|
"webrtcSession.closeSession": [{
|
|
48304
48224
|
name: "deviceId",
|
|
48305
48225
|
form: "single",
|
|
@@ -48833,7 +48753,7 @@ var STATE_SUMMARY_VARS = [
|
|
|
48833
48753
|
{
|
|
48834
48754
|
name: "summarySection",
|
|
48835
48755
|
label: "Summary: this section",
|
|
48836
|
-
description: "The section a per-section summary row is about
|
|
48756
|
+
description: "The section a per-section summary row is about; on a summary sent as one message, every section it reports, comma-separated.",
|
|
48837
48757
|
example: "Batterie scariche",
|
|
48838
48758
|
group: "system",
|
|
48839
48759
|
families: ["rule"],
|