@camstack/addon-model-studio 1.1.31 → 1.1.32
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-BydNTXed.mjs → MotionZonesSettings-sZkppmGH.mjs} +2 -2
- package/dist/{PrivacyMaskSettings-Dq03Q0ea.mjs → PrivacyMaskSettings-C4IQ_tob.mjs} +4 -4
- package/dist/{SceneMonitorEditor-8PcMSAlF.mjs → SceneMonitorEditor-Dv55kWSO.mjs} +3 -3
- package/dist/_stub.js +3211 -2648
- package/dist/{_virtual_mf-localSharedImportMap___mfe_internal__addon_model_studio_page-BxmPMYYE.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_model_studio_page-Cg1VXUiH.mjs} +4 -4
- package/dist/_virtual_mf___mfe_internal__addon_model_studio_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-Do4Kqwhj.mjs +26 -0
- package/dist/{hostInit-CnNmgbGN.mjs → hostInit-DXmPMLUp.mjs} +3 -3
- package/dist/model-studio.addon.js +269 -56
- package/dist/model-studio.addon.mjs +270 -57
- package/dist/{player-overlays-DkYP-ilS.mjs → player-overlays-CS5IM4vB.mjs} +1 -1
- package/dist/remoteEntry.js +1 -1
- package/dist/{responsive-BPPcVvwi.mjs → responsive-CWtuZhDz.mjs} +1 -1
- package/dist/{square-CpMmCZRC.mjs → square-OXaWZ-Np.mjs} +1 -1
- package/dist/{trash-2-BY1LnuAV.mjs → trash-2-BtfCrPnQ.mjs} +1 -1
- package/dist/{use-device-snapshot-DTkJH7xh.mjs → use-device-snapshot-Bx87WhSL.mjs} +1 -1
- package/dist/{virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_model_studio_page__remoteEntry_js-B03fcjt1.mjs → virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_model_studio_page__remoteEntry_js-CnPUM5JZ.mjs} +1 -1
- package/package.json +1 -1
- package/python/convert_lib.py +28 -5
- package/dist/_virtual_mf___mfe_internal__addon_model_studio_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-BMel40Gn.mjs +0 -26
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import "./virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_model_studio_page__remoteEntry_js-
|
|
1
|
+
import "./virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_model_studio_page__remoteEntry_js-CnPUM5JZ.mjs";
|
|
2
2
|
//#region \0virtual:mf-localSharedImportMap:__mfe_internal__addon_model_studio_page
|
|
3
3
|
var e = {
|
|
4
4
|
"@camstack/sdk": {
|
|
5
5
|
name: "@camstack/sdk",
|
|
6
|
-
version: "1.2.
|
|
6
|
+
version: "1.2.26",
|
|
7
7
|
scope: ["default"],
|
|
8
8
|
loaded: !1,
|
|
9
9
|
from: "addon_model_studio_page",
|
|
@@ -18,7 +18,7 @@ var e = {
|
|
|
18
18
|
},
|
|
19
19
|
"@camstack/types": {
|
|
20
20
|
name: "@camstack/types",
|
|
21
|
-
version: "1.2.
|
|
21
|
+
version: "1.2.94",
|
|
22
22
|
scope: ["default"],
|
|
23
23
|
loaded: !1,
|
|
24
24
|
from: "addon_model_studio_page",
|
|
@@ -33,7 +33,7 @@ var e = {
|
|
|
33
33
|
},
|
|
34
34
|
"@camstack/ui-library": {
|
|
35
35
|
name: "@camstack/ui-library",
|
|
36
|
-
version: "1.2.
|
|
36
|
+
version: "1.2.64",
|
|
37
37
|
scope: ["default"],
|
|
38
38
|
loaded: !1,
|
|
39
39
|
from: "addon_model_studio_page",
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
//#region \0virtual:mf:__mfe_internal__addon_model_studio_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js
|
|
2
|
+
var e = "__mf_init__virtual:mf:__mfe_internal__addon_model_studio_page__mf_v__runtimeInit__mf_v__.js__", t = globalThis[e];
|
|
3
|
+
if (!t) {
|
|
4
|
+
let n, r, i = new Promise((e, t) => {
|
|
5
|
+
n = e, r = t;
|
|
6
|
+
});
|
|
7
|
+
t = globalThis[e] = {
|
|
8
|
+
initPromise: i,
|
|
9
|
+
initResolve: n,
|
|
10
|
+
initReject: r
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
var n = t.initPromise, r = "__mf_module_cache__";
|
|
14
|
+
globalThis[r] ||= {
|
|
15
|
+
share: {},
|
|
16
|
+
remote: {}
|
|
17
|
+
}, globalThis[r].share ||= {}, globalThis[r].remote ||= {};
|
|
18
|
+
var i = globalThis[r], a, o, s, c, l, u, d, f, p, m, h, g, _, v, y = (e) => {
|
|
19
|
+
e.ACCESSORY_LABEL, e.ACCESS_ROLES, e.ALEXA_EGRESS_PROFILE, a = e.ALL_CAPABILITY_DEFINITIONS, e.APPLE_SA_TO_MACRO, e.AUDIO_ANALYSIS_CAP_NAME, e.AUDIO_BACKEND_CHOICES, e.AUDIO_MACRO_LABELS, e.AUDIO_PRESETS, e.AccessoriesStatusSchema, e.AccessoryKind, e.AddBrokerInputSchema, e.AddonAutoUpdateSchema, e.AddonListItemSchema, e.AddonPageDeclarationSchema, e.AddonPageInfoSchema, e.AdoptionAdoptInputSchema, e.AdoptionAdoptResultSchema, e.AdoptionCandidateResultSchema, e.AdoptionFilterSchema, e.AdoptionGetCandidateInputSchema, e.AdoptionJobSchema, e.AdoptionJobStateSchema, e.AdoptionListCandidatesInputSchema, e.AdoptionListCandidatesOutputSchema, e.AdoptionOutcomeSchema, e.AdoptionReleaseInputSchema, e.AdoptionStatusSchema, e.AgentLoadSummarySchema, e.AirQualitySensorStatusSchema, e.AlarmArmModeSchema, e.AlarmPanelStatusSchema, e.AlarmStateSchema, e.AlertSchema, e.AlertSeveritySchema, e.AlertSourceSchema, e.AlertStatusSchema, e.AmbientLightSensorStatusSchema, e.ApiKeyRecordSchema, e.ApiKeySummarySchema, e.ArchiveEntrySchema, e.ArchiveManifestSchema, e.AttachmentMediaTypeSchema, e.AttachmentSchema, e.AudioAnalysisResultSchema, e.AudioAnalysisSettingsSchema, e.AudioChunkInputSchema, e.AudioClassSummarySchema, e.AudioClassificationLabelSchema, e.AudioClassificationResultSchema, e.AudioCodecInfoSchema, e.AudioDecodeSessionConfigSchema, e.AudioEncodeSchema, e.AudioEncodeSessionConfigSchema, e.AudioEncodedChunkSchema, e.AudioEventSchema, e.AudioLevelSchema, e.AudioMetricsHistoryPointSchema, e.AudioMetricsHistorySchema, e.AudioMetricsSnapshotSchema, e.AudioPcmChunkSchema, e.AuthResultSchema, e.AutoUpdateSettingsSchema, e.AutomationActionSchema, e.AutomationConditionOperatorSchema, e.AutomationConditionSchema, e.AutomationControlStatusSchema, e.AutomationRecipeSchema, e.AutomationTriggerSchema, e.AvailableIntegrationTypeSchema, e.BACKEND_TO_FORMAT, e.BASE_LIVE_EGRESS_PROFILE, e.BATTERY_DEVICE_PROFILE, e.BATTERY_UNREACHABLE_AFTER_MS, e.BOOT_RECOVERY_BACKOFF_MS, e.BacklightModeSchema, e.BackupDestinationInfoSchema, e.BackupEntrySchema, e.BaseAddon, e.BaseDevice, e.BaseDeviceProvider, e.BatteryStatusSchema, e.BinaryStatusSchema, e.BoundingBoxSchema, e.BrightnessStatusSchema, e.BrokerAddInputSchema, e.BrokerAudioClientSchema, e.BrokerClientsSchema, e.BrokerConnectionDetailsSchema, e.BrokerConsumerAttributionSchema, e.BrokerConsumerKindSchema, e.BrokerDecodedClientSchema, e.BrokerEncodedClientSchema, e.BrokerGetStateInputSchema, e.BrokerInfoSchema, e.BrokerProviderInfoSchema, e.BrokerPublishInputSchema, e.BrokerRegistryStatusSchema, e.BrokerRtspClientSchema, e.BrokerStatsSchema, e.BrokerStatusEnum, e.BrokerStatusSchema, e.BrokerSubscribeInputSchema, e.BrokerSubscribeResultSchema, e.BrokerTestConnectionResultSchema, e.BrokerUnsubscribeInputSchema, e.CAMERA_SWITCH_CATALOG, e.CAMERA_SWITCH_ORDER, e.CAM_PROFILE_ORDER, e.CAPABILITY_NAMES, e.CAPABILITY_ROUTER_KEYS, e.CAP_NAMES_WITH_STATUS, e.CAP_NODE_PIN_CONTEXT_KEY, e.CAP_PROVIDER_KIND_MAP, e.CLUSTER_MODEL_SCOPED_STEPS, e.CLUSTER_MODEL_SECTION_ID, e.COCO_80_LABELS, e.COCO_TO_MACRO, e.CONNECTION_TEST_TIMEOUT_MS, e.CORE_BLOCKS_ADDON_ID, e.CORE_BLOCK_ADDON_PREFIX, e.CamProfileSchema, e.CamStreamDescriptorSchema, e.CamStreamKindSchema, e.CamStreamResolutionSchema, e.CameraAssignmentStatusSchema, e.CameraAudioStatusSchema, e.CameraBrokerProfileSchema, e.CameraBrokerStatusSchema, e.CameraCredentialsSchema, e.CameraCredentialsStatusSchema, e.CameraDecoderShmSchema, e.CameraDecoderStatusSchema, e.CameraDetectionPhaseSchema, e.CameraDetectionProvisioningSchema, e.CameraDetectionProvisioningStateSchema, e.CameraDetectionStatusSchema, e.CameraMetricsSchema, e.CameraMetricsWithDeviceIdSchema, e.CameraMotionStatusSchema, e.CameraRecordingModeSchema, e.CameraRecordingStatusSchema, e.CameraSourceStatusSchema, e.CameraSourceStreamSchema, e.CameraStatusDegradationReasonSchema, e.CameraStatusDegradationSchema, e.CameraStatusSchema, e.CameraStatusStageSchema, e.CameraStreamSchema, e.CameraSwitchAuthoritySchema, e.CameraSwitchGroupSchema, e.CameraSwitchIdSchema, e.CameraSwitchSchema, e.CameraSwitchUnavailableReasonSchema, e.CandidateQueryFilterSchema, e.CapScopeSchema, e.CapabilityBindingsSchema, e.CarbonMonoxideStatusSchema, e.ChargingStatus, e.ClientNetworkStatsSchema, e.ClimateControlStatusSchema, e.ClipPlaybackSchema, e.ClipSchema, e.ClusterAddonNodeDeploymentSchema, e.ClusterAddonStatusEntrySchema, e.CollectionColumnSchema, e.CollectionIndexSchema, e.ColorStatusSchema, e.ConfigEntrySchema, e.ConfigSectionWithValuesSchema, e.ConfigTabDeclarationSchema, e.ConnectionTestDescriptorSchema, e.ConnectionTestInputSchema, e.ConnectionTestOutcomeSchema, e.ConnectivityStatusSchema, e.ConsumableItemSchema, e.ConsumablesStatusSchema, e.ContactStatusSchema, e.ControlKindSchema, e.ControlStatusSchema, e.ConvertArtifactSchema, e.ConvertResultSchema, e.ConvertTargetSchema, e.CoreBlockCompileResultSchema, e.CoreBlockInputSchema, e.CoreBlockPlacementSchema, e.CoreBlockSchema, e.CoreBlockStatusSchema, e.CoverStateSchema, e.CoverStatusSchema, e.CreateApiKeyInputSchema, e.CreateApiKeyResultSchema, e.CreateIntegrationInputSchema, e.CreateScopedTokenInputSchema, e.CreateScopedTokenResultSchema, e.CreateUserInputSchema, e.CustomActionInputSchema, e.CustomModelDescriptorSchema, e.DATAPLANE_SECRET_HEADER, e.DECLARED_DEVICE_SWEEP_LIMIT, e.DECLARED_INTEGRATION_FIXED_KEY, e.DEFAULT_ADDON_PLACEMENT, e.DEFAULT_AUDIO_ANALYZER_CONFIG, e.DEFAULT_CLUSTER_STEP_MODELS, e.DEFAULT_DECODER_HWACCEL_CONFIG, e.DEFAULT_DETAIL_CROP_CONVENTION, e.DEFAULT_EVENTS_BAND_BUFFER_SEC, e.DEFAULT_EVENT_COLOR, e.DEFAULT_FEATURES, e.DEFAULT_NATIVE_LEASE_SETTINGS, e.DEFAULT_POOL_MEMORY_POLICY, e.DEFAULT_RECORDING_PROFILES, e.DEFAULT_RETENTION, e.DEFAULT_RUNTIME_STATE_DURABILITY, e.DEFAULT_SCRUB_THUMBNAIL_PRESET, e.DEFAULT_TIMELAPSE_PREVIEW_TEXT, e.DETAIL_CROP_PADDING_FIELD, e.DETAIL_CROP_PADDING_KEY, e.DETAIL_CROP_SECTION_ID, e.DETAIL_CROP_SQUARE_KEY, e.DETECTION_MACRO_CLASSES, e.DETECTION_PIPELINE_CAP_NAME, e.DEVICE_BACKEND_TO_FORMAT, e.DEVICE_CAP_NAMES, e.DEVICE_PROFILES, e.DEVICE_SCOPED_CAPS, e.DEVICE_SETTINGS_CONTRIBUTION_METHODS, e.DEVICE_STATE_READERS, e.DEVICE_STATUS_METHOD, o = e.DEVICE_TYPE_CONTROL_KIND, e.DEVICE_TYPE_INFO, e.DataStoreEngineInfoSchema, e.DayNightModeSchema, e.DayNightOptionsSchema, e.DayNightSettingsPatchSchema, e.DayNightStatusSchema, e.DeclaredDevices, e.DecodedAudioChunkSchema, e.DecodedFrameSchema, e.DecoderSessionConfigSchema, e.DecoderStatsSchema, e.DeleteIntegrationResultSchema, e.DetailCropConventionSchema, e.DetectionSourceSchema, e.DeviceCodeSeveritySchema, e.DeviceConfig, e.DeviceDiscoveryStatusSchema, e.DeviceExportExposeInputSchema, e.DeviceExportStatusSchema, e.DeviceExportUnexposeInputSchema, s = e.DeviceFeature, e.DeviceInfoSchema, e.DeviceNetworkStatsSchema, c = e.DeviceRole, e.DeviceRuntimeState, e.DeviceSelectorSchema, e.DeviceStatusSchema, l = e.DeviceType, e.DiscoveredChildDeviceSchema, e.DiscoveredChildStatusSchema, e.DiscoveredDeviceSchema, e.DiscoveredTargetSchema, e.DiskReconcileJobSchema, e.DisposerChain, e.DoorbellPressEventSchema, e.DoorbellStatusSchema, e.EVENTFUL_CAP_NAMES, e.EVENT_KIND_BY_CAP, e.EVENT_PAD_MS, u = e.EVENT_TAXONOMY, e.EXPORT_DENSE_MAX_RANGES, e.EXPRESSION_BUILTINS, e.EXPRESSION_BUILTIN_NAMES, e.EXPRESSION_COMPILE_CACHE_CAPACITY, e.EXPRESSION_IDENTIFIER_RE, e.EXPRESSION_INJECTED_NOW, e.EgressEncodeSchema, e.EgressRateControlSchema, e.EgressTranscodeRequestSchema, e.EgressTranscodeSchema, e.ElementConfigStore, e.EmbeddingInfoSchema, e.EmbeddingResultSchema, e.EncodeProfileSchema, e.EncodedPacketSchema, e.EnrichedWidgetMetadataSchema, e.EnumSensorDateTimeFormatSchema, e.EnumSensorStatusSchema, d = e.EventCategory, e.EventEmitterStatusSchema, e.EventFireSchema, e.EventItemSchema, e.EventKindCategorySchema, e.EventKindDescriptorSchema, e.EventKindIconSchema, e.EventKindSchema, e.EventKindsForDeviceSchema, e.EventMediaArtifactSchema, e.EventMediaCoverageSchema, e.EventMediaKindSchema, e.EventMediaProductionSchema, e.EventSourceType, e.ExportBytesSchema, e.ExportDenseRangeSchema, e.ExportDenseSchema, e.ExportDownloadSchema, e.ExportOptionsSchema, e.ExportRecordSchema, e.ExportSetupFieldSchema, e.ExportSetupSchema, e.ExportSpeedSchema, e.ExportStateSchema, e.ExportTimelapseSchema, f = e.ExposedDeviceSchema, e.ExposureModeSchema, e.ExpressionBindingSourceSchema, e.ExpressionEvalError, e.ExpressionFieldBindingSchema, e.ExpressionGlobalBindingSchema, e.ExpressionLiteralBindingSchema, e.ExpressionParseError, e.ExpressionSourceSchema, e.FULL_IMAGE_BBOX, e.FanControlStatusSchema, e.FanDirectionSchema, e.FeatureManifestSchema, e.FeatureProbeStatusSchema, e.FloodStatusSchema, e.Fmp4BoxSplitter, e.FrameHandleFormatSchema, e.FrameHandleSchema, e.FrameInputSchema, e.GasStatusSchema, e.GetStreamWithCodecInputSchema, e.GlobalMetricsSchema, e.HAP_AUDIO_BASE, e.HAP_AUDIO_BITRATE_KBPS, e.HAP_AUDIO_VBV_KBITS, e.HAP_KEYFRAME_INTERVAL_SEC, e.HF_BASE_URL, e.HF_REPO, e.HWACCEL_OPTIONS, e.HealthStatusSchema, e.HfModelResolutionSchema, e.HistoryPointSchema, e.HistoryResolutionEnum, e.HumidifierStatusSchema, e.HumiditySensorStatusSchema, e.HvacModeSchema, e.ImageContractSchema, e.ImageContractStateSchema, e.ImageRotateSchema, e.ImageSettingsOptionsSchema, e.ImageSettingsPatchSchema, e.ImageSettingsStatusSchema, e.ImageStatusSchema, e.IngestOwnerSchema, e.InstalledPackageSchema, e.IntegrationLiteSchema, e.IntegrationWithStateSchema, e.IntercomAbilitySchema, e.IntercomStatusSchema, e.KNOWN_CAP_NAMES, e.KeyEventSchema, e.LOG_LEVEL_RANK, e.LabelAttributionSchema, e.LabelDefinitionSchema, e.LabelTierSchema, e.LawnMowerActivitySchema, e.LawnMowerControlStatusSchema, e.LinkedDeviceSchema, e.LinkedDevicesModeSchema, e.LlmDefaultSchema, e.LlmDefaultSelectorSchema, e.LlmDownloadProgressSchema, e.LlmErrorCodeSchema, e.LlmGenerateBaseInputSchema, e.LlmGenerateErrSchema, e.LlmGenerateOkSchema, e.LlmGenerateResultSchema, e.LlmImageSchema, e.LlmNodeModelSchema, e.LlmProfileKindDescriptorSchema, e.LlmProfileKindSchema, e.LlmProfileSchema, e.LlmRetryPolicySchema, e.LlmRuntimeCompleteInputSchema, e.LlmRuntimeDiskUsageSchema, e.LlmRuntimeNodeSchema, e.LlmRuntimeStatusSchema, e.LlmTimeoutDefaults, e.LlmUsageRollupSchema, e.LlmUsageSchema, e.LocateSegmentResultSchema, e.LocationStatSchema, e.LockControlStatusSchema, e.LockStateSchema, e.LogEntrySchema, e.LogLevelSchema, e.LogStreamEntrySchema, e.LoginMethodContributionSchema, e.LoginStageEnum, e.MACRO_LABELS, e.MAX_CLIP_EVENT_IDS, e.MAX_CLIP_LABELS, e.MAX_CONDITION_DEPTH, e.MAX_CONDITION_LEAVES, e.MAX_EXPRESSION_AST_NODES, e.MAX_EXPRESSION_BINDINGS, e.MAX_EXPRESSION_CALL_ARGS, e.MAX_EXPRESSION_EVAL_STEPS, e.MAX_EXPRESSION_SOURCE_LENGTH, e.METHOD_ACCESS_MAP, e.METHOD_DEVICE_SELECTORS, e.MODEL_FORMATS, e.MOTION_TRIGGER_FEATURE, e.ManagedModelCatalogEntrySchema, e.ManagedModelExtraFileSchema, e.ManagedModelRefSchema, e.ManagedRuntimeConfigSchema, e.MaskGridDimsSchema, e.MaskGridShapeSchema, e.MaskLineShapeSchema, e.MaskPointSchema, e.MaskPolygonShapeSchema, e.MaskPolygonVerticesSchema, e.MaskRectShapeSchema, e.MaskShapeKindSchema, e.MaskShapeSchema, e.MediaFileInfoSchema, e.MediaFileSchema, e.MediaPlayerRepeatSchema, e.MediaPlayerStateSchema, e.MediaPlayerStatusSchema, e.MeshPeerSchema, e.MeshStatusSchema, e.MethodAccessSchema, e.ModelCatalogEntrySchema, e.ModelConvertInputSchema, e.ModelConvertMetadataSchema, e.ModelDistributeInputSchema, e.ModelDistributeResultSchema, e.ModelExtraFileSchema, e.ModelFormatEntrySchema, e.ModelFormatsSchema, e.ModelSubstitutionSchema, e.ModelVariantGroupSchema, e.MotionAnalysisResultSchema, e.MotionEventSchema, e.MotionOnMotionChangedDataSchema, e.MotionRegionSchema, e.MotionSourceEnum, e.MotionSourcesSchema, e.MotionStatusSchema, e.MotionTriggerRuntimeStateSchema, e.MotionTriggerStatusSchema, e.MotionZoneOptionsSchema, e.MotionZonePatchSchema, e.MotionZoneRegionSchema, e.MotionZoneStatusSchema, e.MqttBrokerStatusSchema, e.MutationFilterSchema, e.NATIVE_LEASE_ACTIVITY_FIELD, e.NATIVE_LEASE_ACTIVITY_KEY, e.NATIVE_LEASE_ADMISSION_FIELD, e.NATIVE_LEASE_ADMISSION_KEY, e.NATIVE_LEASE_BUDGET_FIELD, e.NATIVE_LEASE_BUDGET_KEY, e.NATIVE_LEASE_HOLD_FIELD, e.NATIVE_LEASE_HOLD_KEY, e.NATIVE_LEASE_SECTION_ID, e.NATIVE_LEASE_TILE_BUDGET_FIELD, e.NATIVE_LEASE_TILE_BUDGET_KEY, e.NC_ALARM_SYSTEM_EVENT_KINDS, e.NC_AUDIO_DBFS_FLOOR, e.NC_AUDIO_DB_MAX, e.NC_AUDIO_DB_MIN, e.NC_AUDIO_DB_OFFERED, e.NC_AUDIO_DB_STEP, e.NC_AUDIO_DEFAULTS, e.NC_AUDIO_HIT_PERCENT_MAX, e.NC_AUDIO_HIT_PERCENT_MIN, e.NC_AUDIO_SAMPLING_MAX_SEC, e.NC_AUDIO_SAMPLING_MIN_SEC, e.NC_AUDIO_SEED, e.NC_AUTHORABLE_SYSTEM_EVENT_KINDS, e.NC_BASE_CONDITION_KEYS, e.NC_CONDITION_CATALOG, e.NC_CONFIRM_DEFAULT_MAX_IMAGE_PX, e.NC_CONFIRM_DEFAULT_TIMEOUT_MS, e.NC_CONFIRM_MAX_TIMEOUT_MS, e.NC_CONFIRM_MIN_TIMEOUT_MS, e.NC_DEFAULT_SNOOZE_MINUTES, e.NC_HISTORY_LIMIT_DEFAULT, e.NC_HISTORY_LIMIT_MAX, e.NC_MAX_PER_TRACK_IMMEDIATE, e.NC_OCCUPANCY_DEFAULTS, e.NC_RULE_EDITOR_SECTION_ORDER, e.NC_RULE_KIND_SPECS, e.NC_RULE_SECTIONS, e.NC_SNOOZE_MAX_MINUTES, e.NC_SYSTEM_DELIVERY, e.NC_SYSTEM_EVENT_FILTER_KEYS, e.NC_TAXONOMY, e.NativeCropBboxSchema, e.NativeCropRefSchema, e.NativeCropResultSchema, e.NativeDetectionSchema, e.NativeLeaseAdmissionSchema, e.NativeLeaseSettingsSchema, e.NativeObjectClassEnum, e.NativeObjectDetectionRuntimeStateSchema, e.NativeObjectDetectionStatusSchema, e.NcAlarmConfigSchema, e.NcAlarmModeCoverageSchema, e.NcAlarmSettingsPatchSchema, e.NcAlarmSettingsSchema, e.NcAlarmSkipReasonSchema, e.NcAlarmSkippedDeviceSchema, e.NcAudioConditionSchema, e.NcConditionDescriptorSchema, e.NcConditionsSchema, e.NcConfirmExpectSchema, e.NcConfirmSchema, e.NcCrossingSchema, e.NcDeliverySchema, e.NcDeviceStateConditionSchema, e.NcHistoryEntrySchema, e.NcHistoryFilterSchema, e.NcHistoryRecordKindSchema, e.NcHistoryStatusSchema, e.NcHistorySubjectSchema, e.NcMediaFrameSchema, e.NcMediaPolicySchema, e.NcOccupancyConditionSchema, e.NcPlateMatcherSchema, e.NcRuleActionSchema, e.NcRuleActionSequenceSchema, e.NcRuleActionsSchema, e.NcRuleInputSchema, e.NcRuleNotificationButtonSchema, e.NcRulePatchSchema, e.NcRuleSchema, e.NcRuleTargetSchema, e.NcSceneConditionSchema, e.NcScheduleSchema, e.NcScheduleWindowSchema, e.NcSnoozeInputSchema, e.NcSnoozeSchema, e.NcSnoozeScopeSchema, e.NcSnoozeSuppressedSchema, e.NcSystemEventConditionSchema, e.NcSystemEventKindSchema, e.NcTaxonomyEntrySchema, e.NcTaxonomySchema, e.NcTestResultSchema, e.NcThrottleGranularitySchema, e.NcThrottleSchema, e.NcZoneConditionSchema, e.NetworkAccessStatusSchema, e.NetworkAddressSchema, e.NetworkEndpointSchema, e.NotificationActionIconSchema, e.NotificationActionSchema, e.NotificationFormatSchema, e.NotificationSchema, e.NotifierStatusSchema, e.NumericSensorStatusSchema, e.OPS_LOG_DEFAULT_LIMIT, e.OPS_LOG_RING_DEFAULT_MAX, e.OauthIntegrationDescriptorSchema, e.ObjectEventSchema, e.OpsLogDomainSchema, e.OpsLogEntrySchema, e.OpsLogOpSchema, e.OpsLogQueryInputSchema, e.OpsLogReasonSchema, e.OrchestratorMetricsSchema, e.OsdOverlayKindEnum, e.OsdOverlayPatchSchema, e.OsdOverlaySchema, e.OsdPositionEnum, e.OsdRenderOutcomeEnum, e.OsdRenderResultSchema, e.OsdSlotBindingSchema, e.OsdSlotViewSchema, e.OsdSourceOptionSchema, e.OsdSourceSchema, e.OsdSourceValueTypeEnum, e.OsdStatusSchema, p = e.PET_FEEDER_MANUAL_FEED_MAX, m = e.PET_FEEDER_MANUAL_FEED_MIN, e.PIPELINE_FLOW_CAPABILITY_NAMES, e.PIPELINE_OWNER_CAPABILITY_NAMES, e.PRIVACY_MASK_CAP_NAME, e.PROVIDER_KIND_CAP_NAMES, e.PYTHON_SCRIPT, e.PackageUpdateSchema, e.PackageVersionInfoSchema, e.PasskeyLoginMethodSchema, e.PasskeySummarySchema, e.PcmSampleFormatSchema, e.PerScopeBreakdownSchema, e.PetFeederStatusSchema, e.PickStreamPreferencesSchema, e.PickStreamRequirementsSchema, e.PickedCamStreamSchema, e.PipelineAssignmentSchema, e.PipelineDefaultStepSchema, e.PipelineEngineChoiceSchema, e.PipelineRunResultBridge, e.PipelineStepInputSchema, e.PipelineValidationIssueSchema, e.PipelineValidationResultSchema, e.PlaceholderReasonSchema, e.PolygonPointSchema, e.PoolMemoryWatchdog, e.PowerMeterStatusSchema, e.PresenceStatusSchema, e.PressureSensorStatusSchema, e.PrivacyMaskOptionsSchema, e.PrivacyMaskPatchSchema, e.PrivacyMaskRegionSchema, e.PrivacyMaskShapeSchema, e.PrivacyMaskStatusSchema, e.ProfileRtspEntrySchema, e.ProfileSlotSchema, e.ProfileSlotStatusSchema, e.ProviderStatusSchema, e.PtzAutotrackRuntimeStateSchema, e.PtzAutotrackSettingsSchema, e.PtzAutotrackStatusSchema, e.PtzAutotrackTargetOptionSchema, e.PtzMoveCommandSchema, e.PtzOptionsSchema, e.PtzPositionSchema, e.PtzPresetSchema, e.PtzStatusSchema, e.QueryFilterSchema, e.RATE_CONTROL_RELAXED, e.RATE_CONTROL_TIGHT, e.REACHABILITY_FAILURES_TO_OFFLINE, e.REACHABILITY_POLL_INTERVAL_MS, e.REACHABILITY_PROBE_TIMEOUT_MS, e.RECOGNITION_TYPES, e.RECORDING_EXPORT_MAX_READ_BYTES, e.RESERVED_BINDING_NAMES, e.RESTORED_CAP_NAMES, e.RUNTIME_DEFAULTS, e.RUNTIME_STATE_POLICY, e.RUNTIME_TO_FORMAT, e.RawStateResultSchema, e.ReadGopBytesResultSchema, e.ReadSegmentBytesResultSchema, e.ReadinessRegistry, e.ReadinessTimeoutError, e.RecentTracksPageSchema, e.RecentTracksQueryInput, e.RecordingAvailabilitySchema, e.RecordingBandModeSchema, e.RecordingBandSchema, e.RecordingBandTriggersSchema, e.RecordingConfigSchema, e.RecordingDaysSchema, e.RecordingDeviceUsageSchema, e.RecordingLocationUsageSchema, e.RecordingManifestSchema, e.RecordingRangeSchema, e.RecordingRebalanceInputSchema, e.RecordingRebalanceMoveSchema, e.RecordingRebalancePlanSchema, e.RecordingRebalanceSkipReasonSchema, e.RecordingRebalanceSkipSchema, e.RecordingRetentionSchema, e.RecordingStatusSchema, e.RecordingStorageModeSchema, e.RecordingStorageUsageSchema, e.RecordingTriggersSchema, e.RecordingWeekdaySchema, e.RedirectLoginMethodSchema, e.RelocateFootageClassSchema, e.RelocateFootageInputSchema, e.RelocateJobSchema, e.RelocateJobStateSchema, e.RelocateMediaInputSchema, e.RenderedAsSchema, e.ReportMotionInputSchema, e.RetrainAnnotationDraftSchema, e.RetrainAnnotationKindSchema, e.RetrainAnnotationSchema, e.RetrainAnnotationSourceSchema, e.RetrainAssistResultSchema, e.RetrainAssistSubjectSchema, e.RetrainCopyRefusalSchema, e.RetrainFrameCandidateSchema, e.RetrainFrameListSchema, e.RetrainFrameSchema, e.RetrainFrameSelectionSchema, e.RetrainMacroClassSchema, e.RetrainStatusSchema, e.RetrainTrackSchema, e.RetrainTransitionResultSchema, e.RingBuffer, e.RtpSourceSchema, e.RtspRestreamEntrySchema, e.RunnerCameraConfigSchema, e.RunnerCameraDeviceUIFields, e.RunnerFrameSourceSchema, e.RunnerInferenceDeviceSchema, e.RunnerLocalLoadSchema, e.RunnerLocalMetricsSchema, e.SCENE_CONDITIONS, e.SCENE_CONFIRM_DEFAULT_MAX_IMAGE_PX, e.SCENE_CONFIRM_DEFAULT_TIMEOUT_MS, e.SCENE_DEFAULT_ANCHOR_THRESHOLD, e.SCENE_DEFAULT_CHECK_INTERVAL_SEC, e.SCENE_DEFAULT_OBSERVATION_SPACING_SEC, e.SCENE_DEFAULT_QUIET_SECONDS, e.SCENE_DEFAULT_UNCOVERED_POLICY, e.SCENE_DIVERGED, e.SCENE_RESET_RECAPTURES, e.SCOPE_PRESETS, e.SCRUB_THUMBNAIL_PRESETS, e.SCRUB_THUMBNAIL_PRESET_LABELS, e.SCRUB_THUMBNAIL_PRESET_ORDER, e.SENSOR_FEATURES, e.SENSOR_MAP, e.SOURCE_INFO_METADATA_KEY, e.STREAM_PROFILE_META, e.STREAM_QUALITY_LABELS, e.SUB_DETECTION_TYPES, e.SYSTEM_CAP_NAMES, e.SYSTEM_SCOPE_DEVICE_METHODS, e.SceneCheckSchema, e.SceneConditionSchema, e.SceneConfirmSchema, e.SceneMonitorSchema, e.SceneMonitorStateSchema, e.SceneMonitorStatusSchema, e.SceneReferenceSchema, e.SceneUnavailableSchema, e.SceneUncoveredPolicySchema, e.SceneVerdictSchema, e.ScopedTokenSchema, e.ScopedTokenSummarySchema, e.ScoredObjectEventSchema, e.ScriptRunnerStatusSchema, e.ScrubThumbnailPresetSchema, e.SearchResultSchema, e.SendEmailInputSchema, e.SendEmailResultSchema, e.SendResultSchema, e.SensorEventSchema, e.ServerBootModeSchema, e.ServerPackageStatusSchema, e.ServerRollbackInfoSchema, e.ServerUpdateActionResultSchema, e.ServerUpdateCheckResultSchema, e.ServerUpdateStateSchema, e.SetSiteLocationInputSchema, e.SettingsPatchSchema, e.SettingsRecordSchema, e.SettingsSchemaWithValuesSchema, e.SettingsUpdateResultSchema, e.ShmRingStatsSchema, e.SiteLocationSchema, e.SiteLocationSourceSchema, e.SiteLocationStatusSchema, e.SmokeStatusSchema, e.SmtpStatusSchema, e.SnapshotImageSchema, h = e.SourceInfoSchema, e.SpatialDetectionSchema, e.SsoBridgeClaimsSchema, e.StartEmbeddedInputSchema, e.StationaryObjectSchema, e.StorageAbortUploadInputSchema, e.StorageBeginDownloadInputSchema, e.StorageBeginDownloadResultSchema, e.StorageBeginUploadInputSchema, e.StorageBeginUploadResultSchema, e.StorageEndDownloadInputSchema, e.StorageFinalizeUploadInputSchema, e.StorageLocationDeclarationSchema, e.StorageLocationRefSchema, e.StorageLocationSchema, e.StorageLocationTypeSchema, e.StorageMigrationClassSchema, e.StorageMigrationDestinationsSchema, e.StorageMigrationFootageMoveInputSchema, e.StorageMigrationInputSchema, e.StorageMigrationJobSchema, e.StorageMigrationLeaseInputSchema, e.StorageMigrationMediaMoveInputSchema, e.StorageMigrationMoveSchema, e.StorageMigrationParticipantSchema, e.StorageMigrationPhaseSchema, e.StorageMigrationPlanSchema, e.StorageProviderInfoSchema, e.StorageReadChunkInputSchema, e.StorageTestLocationResultSchema, e.StorageWriteChunkInputSchema, e.StreamCodecSchema, e.StreamFormatSchema, e.StreamNetworkStatsSchema, e.StreamParamsOptionsSchema, e.StreamParamsStatusSchema, e.StreamProfileConfigSchema, e.StreamProfileOptionsSchema, e.StreamProfilePatchSchema, e.StreamProfileSchema, e.StreamSourceEntrySchema, e.StreamSourceSchema, e.SubscribeAudioChunksInputSchema, e.SubscribeAudioChunksResultSchema, e.SubscribeFramesInputSchema, e.SubscribeFramesResultSchema, e.SwitchStatusSchema, e.SystemMetricsSchema, e.SystemMirror, e.TAXONOMY_COLORS, e.TIMELAPSE_DENSE_FLOOR_SEC, e.TIMEZONES, e.TRANSCODE_DOWN_MAX_BITRATE_KBPS, e.TRANSCODE_DOWN_MAX_HEIGHT, e.TamperStatusSchema, e.TankStatusSchema, e.TargetKindCapsSchema, e.TargetKindLevelSchema, e.TargetKindSchema, e.TargetSchema, e.TemperatureSensorStatusSchema, e.TerminalInstanceInfoSchema, e.TerminalLegacyCameraSchema, e.TerminalOutputBatchSchema, e.TerminalOutputEventSchema, e.TerminalProfileInfoSchema, e.TerminalSessionInfoSchema, e.TestConnectionResultSchema, e.TestConnectionStatusEnum, e.TestResultSchema, e.TimelapseRuleInputSchema, e.TimelapseRulePatchSchema, e.TimelapseRuleSchema, e.TimelapseTemplateSchema, e.ToastSchema, e.TokenScopeSchema, e.TopologyNodeSchema, e.TopologyProcessSchema, e.TopologyServiceSchema, e.TrackCascadeCountsSchema, e.TrackEnvelopeSchema, e.TrackFlagsPatchSchema, e.TrackFlagsSchema, e.TrackProjectionSchema, e.TrackSchema, e.TrackSourceSchema, e.TrackStateSchema, e.TrackZoneFilterSchema, e.TrackedDetectionSchema, e.TrainingExportDeviceTotalsSchema, e.TrainingExportSummarySchema, e.TurnServerSchema, e.UNIT_TABLE, e.UnifiedBrokerInfoSchema, e.UnitConversionError, e.UpdateIntegrationInputSchema, e.UpdateStatusSchema, e.UpdateUserInputSchema, e.UserRecordSchema, e.UserSummarySchema, e.VISIT_MERGE_GAP_MS, e.VacuumControlStatusSchema, e.VacuumStateSchema, e.ValveStateSchema, e.ValveStatusSchema, e.VectorDeclareIndexInputSchema, e.VectorDeleteByFilterInputSchema, e.VectorDeleteInputSchema, e.VectorDeleteResultSchema, e.VectorFilterSchema, e.VectorGetInputSchema, e.VectorGetResultSchema, e.VectorItemSchema, e.VectorMatchSchema, e.VectorMetadataSchema, e.VectorMetricSchema, e.VectorQueryInputSchema, e.VectorQueryResultSchema, e.VectorStatsInputSchema, e.VectorStatsResultSchema, e.VectorUpsertInputSchema, e.VectorUpsertResultSchema, e.VibrationStatusSchema, e.VideoEncodeSchema, e.WEBRTC_EGRESS_PROFILE, e.WELL_KNOWN_TABS, e.WELL_KNOWN_TAB_MAP, e.WaterHeaterStatusSchema, e.WeatherStatusSchema, e.WebrtcStreamChoiceSchema, e.WebrtcStreamTargetSchema, e.WhiteBalanceModeSchema, e.WidgetHostEnum, e.WidgetLoginMethodSchema, e.WidgetMetadataSchema, e.WidgetRemoteSchema, e.WidgetSizeEnum, e.YAMNET_TO_MACRO, e.ZoneCrossingDirectionSchema, e.ZoneCrossingSchema, e.ZoneKindEnum, e.ZoneRuleModeEnum, e.ZoneRuleSchema, e.ZoneRuleStageEnum, e.ZoneRulesArraySchema, e.ZoneSchema, e.ZoneScopeBreakdownSchema, e.accessoriesCapability, e.accessoryStableId, e.addonPagesCapability, e.addonPagesSourceCapability, e.addonRoutesCapability, e.addonSettingsCapability, e.addonWidgetsCapability, e.addonWidgetsSourceCapability, e.addonsCapability, e.adminUiCapability, e.airQualitySensorCapability, e.alarmPanelCapability, e.alertsCapability, e.ambientLightSensorCapability, e.asBoolean, e.asJsonArray, e.asJsonObject, e.asNumber, e.asString, e.assertTimelapseCadences, e.audioAnalysisCapability, e.audioAnalyzerCapability, e.audioCodecCapability, e.audioIsFailClosed, e.audioKindId, e.audioLabelChoices, e.audioMetricsCapability, e.audioModeOf, e.audioOrDefaults, e.audioPlanFromEncodeProfile, e.authProviderCapability, e.autoAssignProfiles, e.automationControlCapability, e.backupCapability, e.bareAddonId, e.batteryCapability, e.bestLocationMatch, e.binaryCapability, e.bindAddonActions, e.brightnessCapability, e.brokerCapability, e.buildAddonRouteProvider, e.buildAudioArgs, e.buildEventKindDescriptor, e.buildFfmpegArgs, e.buildInputArgs, e.buildModelVariantGroups, e.buildNcTaxonomy, e.buildRoleScopes, e.buildStreamParamsConfigSchema, e.buildVideoArgs, e.buttonCapability, e.cameraCredentialsCapability, e.cameraPipelineConfigCapability, e.cameraStreamsCapability, g = e.canConvertUnit, e.canonicalEgressPlan, e.carbonMonoxideCapability, e.cellsToRects, e.classifyBearerPrincipal, e.classifyStream, e.classifyStreams, e.climateControlCapability, e.clusterModelSettingKey, e.collectHydratedFieldEntries, e.collectHydratedFieldValues, e.colorCapability, e.colorForKind, e.commitWatchdogRestart, e.compileExpression, e.compileExpressionSafe, e.composeSwitchedOff, e.conditionDepth, e.conditionExclusionReason, e.conditionVisibleForKind, e.connectionTestCapability, e.connectivityCapability, e.consumablesCapability, e.contactCapability, e.controlCapability, e.convertUnit, e.coreBlockAddonId, e.coreBlockIdFromAddonId, e.coreBlocksCapability, e.cosineSimilarity, e.countConditionLeaves, e.coverCapability, _ = e.createDeviceProxy, e.createDurableState, e.createEvent, e.createExpressionScope, e.createHwAccelCache, e.createLazyTrpcSource, e.createMirrorSource, e.createRuntimeStateBridge, e.createSliceHandle, e.createSystemProxy, e.customAction, e.customModelRegistryCapability, e.dataStoreProviderCapability, e.dayNightCapability, e.declarationOwnerNodeId, e.decodeVectorBase64, e.decoderCapability, e.defaultDeliveryForSection, e.defaultDeviceFor, e.defineCustomActions, e.deriveBatteryPresence, e.deriveCameraSwitches, e.deriveDetailCropRect, e.deriveRecordingMode, e.describeModelVariant, e.detectAccessRole, e.detectionPipelineCapability, e.deviceAdoptionCapability, e.deviceBackendToFormat, e.deviceCustomAction, e.deviceDiscoveryCapability, e.deviceExportCapability, e.deviceManagerCapability, e.deviceMatchesProfile, e.deviceOpsCapability, e.deviceProviderCapability, e.deviceSelectorMatches, e.deviceStateCapability, e.deviceStatusCapability, e.doorbellCapability, e.droppedConditionsForKind, e.egressTranscodeSharingKey, e.egressTransportFromRequest, e.embeddingEncoderCapability, e.emitDownForOwnedCaps, e.emitReadiness, e.encodeProfileFromStreamShape, e.encodeVectorBase64, e.enumSensorCapability, e.enumerateInferenceDevices, e.enumerateItemArrayFields, e.enumerateSchemaFields, e.errMsg, e.evaluateAst, e.evaluateExpressionSource, e.evaluatePoolMemory, e.evaluateZoneRules, e.event, e.eventEmitterCapability, e.eventsCapability, e.expandCapMethods, e.extractNestedAddonId, e.extractSourceInfoFromMetadata, e.faceGalleryCapability, e.fanControlCapability, e.featureProbeCapability, e.filesystemBrowseCapability, e.findTimezone, e.floodCapability, e.formatForBackend, e.formatForRuntime, e.gasCapability, e.generateAutomationBlock, e.getAudioMacroClassIds, e.getByPath, e.getCapsByProviderKind, e.getTaxonomyEntry, e.hasMotionTrigger, e.hfModelUrl, e.htmlToText, e.humidifierCapability, e.humiditySensorCapability, e.hydrateSchema, e.imageCapability, e.imageSettingsCapability, e.initialPoolMemoryState, e.integrationsCapability, e.intercomCapability, e.invocationFromEncodeProfile, e.isAgentOnlyPlacement, e.isArrayOutputSchema, e.isAudioLabelSelected, e.isAudioRule, e.isBaseConditionKey, e.isBatteryPresenceFault, e.isClusterScopedStep, e.isCollectionArrayMethod, e.isDeployableToAgent, e.isDetectionMacroClass, e.isDeviceConfigCap, e.isDeviceScopedCap, e.isEvent, e.isIsolatedBuiltin, e.isNode, e.isObjectInput, e.isOccupancyRule, e.isRestoredCap, e.isSameAddonId, e.isScheduleActive, e.isSoftwareDecode, e.isSystemDelivery, e.isVoidInput, e.jobKindSchema, e.kebabToCamel, e.knownValues, e.lawnMowerControlCapability, e.lifecycleJobSchema, e.lifecycleJobScopeSchema, e.lifecycleJobStateSchema, e.lifecycleTaskSchema, e.llmCapability, e.llmRuntimeCapability, e.localNetworkCapability, e.locationSimilarity, e.lockControlCapability, e.logBannerArgs, e.logDestinationCapability, e.logLevelAtMost, e.loginMethodCapability, e.looseSchema, e.makeProfileBrokerId, e.makeSourceBrokerId, e.mapAudioLabelToMacro, e.markdownToHtmlLite, e.markdownToText, e.maskUrlCredentials, e.mediaPlayerCapability, e.mergeSourceInfo, e.meshNetworkCapability, e.method, e.methodAccessForHttpMethod, e.metricsProviderCapability, e.modelConvertCapability, e.modelDistributorCapability, e.modelFormatForRuntime, e.motionCapability, e.motionDetectionCapability, e.motionTriggerCapability, e.motionZonesCapability, e.mqttBrokerCapability, e.nativeObjectDetectionCapability, e.networkAccessCapability, e.networkQualityCapability, e.nodePin, e.nodesCapability, e.normalizeAddonInitResult, e.normalizeAudioLabel, e.normalizeTokenScopes, e.normalizeUnit, e.notificationOutputCapability, e.notificationRulesCapability, e.notifierCapability, e.numericSensorCapability, e.oauthIntegrationCapability, e.objectInputDeclaresAddonId, e.osdCapability, e.osdManagerCapability, e.parseCameraStreamConfig, e.parseExpression, e.parseJsonArray, e.parseJsonObject, e.parseJsonUnknown, e.parseProcStatus, e.parseProfileBrokerId, e.parseRuleSection, e.parseStreamParamsFormPatch, e.patchAudio, e.petFeederCapability, e.pickAccessoryControl, e.pickClusterStepModels, e.pickDetailCropConvention, e.pickNativeLeaseOverride, e.pickPreferredRtspEntry, e.pickRestartCandidate, e.pickVideoEncoder, e.pickerForCondition, e.pipelineAnalyticsCapability, e.pipelineExecutorCapability, e.pipelineOrchestratorCapability, e.pipelineRunnerCapability, e.plateGalleryCapability, e.platformProbeCapability, e.poolMemoryThreshold, e.powerMeterCapability, e.prepareNotification, e.presenceCapability, e.pressureSensorCapability, e.principalMayReachAddon, e.privacyMaskCapability, e.procedureAuthKey, e.ptzAutotrackCapability, e.ptzCapability, e.pythonScriptForBackend, e.readClusterStepModels, e.readDetailCropConvention, e.readDeviceStateFrom, e.readNativeLeaseOverride, e.readNodePin, e.readTimelapseGeneratedAt, e.readinessKey, e.rebootCapability, e.recordingCapability, e.recordingExportCapability, e.rectsToCells, e.requiresPython, e.resetPoolBaseline, e.resolveAddonExecution, e.resolveAddonGroup, e.resolveAddonPlacement, e.resolveAddonRuntime, e.resolveCapMount, e.resolveClusterStepModelId, e.resolveDetectionRuntime, e.resolveDeviceControlKind, e.resolveDeviceProfile, e.resolveEgressDecodeHwAccel, e.resolveFormat, e.resolveHydratedFieldValue, e.resolveModelFormat, e.resolveMutate, e.resolvePoolMemoryPolicy, e.resolveRecordingProfiles, e.resolveRunnerId, e.resolveScrubThumbnailGeometry, e.resolveVariantModelId, e.resolveViewableDeviceIds, e.roleSpec, e.ruleEditorSectionsForKind, e.ruleKindOf, e.ruleKindSpec, e.ruleMatchesSection, e.ruleSection, e.ruleSectionOf, e.ruleSeedForSection, e.runInferenceStep, e.runtimeDevices, e.runtimeStatePolicyFor, e.sceneMonitorCapability, e.scopeInherits, e.scopeKey, e.scopesAllowAddon, e.scopesAllowDeviceCap, e.scoreRuntimes, e.scriptRunnerCapability, e.selectAssignedProfileSlots, e.serverManagementCapability, e.setByPath, e.settingsStoreCapability, e.sleep, e.sleepCancellable, e.smokeCapability, e.smtpProviderCapability, e.snapshotCapability, e.ssoBridgeCapability, e.startReachabilityPoll, e.stateVocabularyFor, e.storageCapability, e.storageEvictableCapability, e.storageMigrationCapability, e.storageProviderCapability, e.streamBrokerCapability, e.streamCatalogCapability, e.streamParamsCapability, e.streamPixels, e.streamQualityLabel, e.subKindsOf, e.summarisePrivacyAudio, e.summarizeEffectiveScope, e.supportedRuntimes, e.switchCapability, e.switchedOffIds, e.synthesizeSourceInfo, e.systemCapability, e.systemEventFilterApplies, e.systemEventFilterAppliesToAnyKind, e.tamperCapability, e.taskLogEntrySchema, e.taskPhaseSchema, e.taskTargetSchema, e.temperatureSensorCapability, e.terminalSessionCapability, e.textToHtml, e.toDeviceSummary, e.toExpressionValue, e.toNodeId, e.toStreamSourceEntry, e.toastCapability, e.toggleAudioLabel, e.tokenize, e.transcodeBody, v = e.tryConvertUnit, e.turnProviderCapability, e.unitDimension, e.unitsForDimension, e.updateCapability, e.userManagementCapability, e.userPasskeysCapability, e.vacuumControlCapability, e.validateExpressionSource, e.validateRecipeBounds, e.valveCapability, e.vectorDimFromBase64, e.vectorStoreCapability, e.vibrationCapability, e.videoclipsCapability, e.viewerUiCapability, e.waterHeaterCapability, e.weatherCapability, e.webrtcClientHintsSchema, e.webrtcSessionCapability, e.wiringAddonHealthSchema, e.wiringHealthSnapshotSchema, e.wiringNodeHealthSchema, e.wiringProbeKindSchema, e.wiringProbeResultSchema, e.zodEntriesToConfigUI, e.zoneAnalyticsCapability, e.zoneRulesCapability, e.zonesCapability, e.default;
|
|
20
|
+
}, b = i.share["default:@camstack/types"];
|
|
21
|
+
b === void 0 ? n.then(() => {
|
|
22
|
+
if (b = i.share["default:@camstack/types"], b === void 0) throw Error("[Module Federation] Shared module @camstack/types was imported before federation bootstrap finished.");
|
|
23
|
+
y(b);
|
|
24
|
+
}) : y(b);
|
|
25
|
+
//#endregion
|
|
26
|
+
export { c as a, d as c, p as d, m as f, s as i, a as l, g as m, v as n, l as o, h as p, o as r, u as s, _ as t, f as u };
|
|
@@ -36,7 +36,7 @@ async function r() {
|
|
|
36
36
|
}
|
|
37
37
|
},
|
|
38
38
|
"@camstack/types": {
|
|
39
|
-
version: "1.2.
|
|
39
|
+
version: "1.2.94",
|
|
40
40
|
scope: "default",
|
|
41
41
|
shareConfig: {
|
|
42
42
|
singleton: !0,
|
|
@@ -45,7 +45,7 @@ async function r() {
|
|
|
45
45
|
}
|
|
46
46
|
},
|
|
47
47
|
"@camstack/sdk": {
|
|
48
|
-
version: "1.2.
|
|
48
|
+
version: "1.2.26",
|
|
49
49
|
scope: "default",
|
|
50
50
|
shareConfig: {
|
|
51
51
|
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.64",
|
|
85
85
|
scope: "default",
|
|
86
86
|
shareConfig: {
|
|
87
87
|
singleton: !0,
|
|
@@ -7700,7 +7700,7 @@ var RecordingBandSchema = object({
|
|
|
7700
7700
|
postBufferSec: number().min(0).optional()
|
|
7701
7701
|
});
|
|
7702
7702
|
({
|
|
7703
|
-
preBufferSec:
|
|
7703
|
+
preBufferSec: 15,
|
|
7704
7704
|
postBufferSec: 30
|
|
7705
7705
|
}).postBufferSec * 1e3;
|
|
7706
7706
|
/**
|
|
@@ -13680,128 +13680,103 @@ var COCO_TO_MACRO = {
|
|
|
13680
13680
|
var AUDIO_MACRO_LABELS = [
|
|
13681
13681
|
{
|
|
13682
13682
|
id: "speech",
|
|
13683
|
-
name: "Speech"
|
|
13684
|
-
icon: "🗣️"
|
|
13683
|
+
name: "Speech"
|
|
13685
13684
|
},
|
|
13686
13685
|
{
|
|
13687
13686
|
id: "scream",
|
|
13688
|
-
name: "Scream / Shout"
|
|
13689
|
-
icon: "😱"
|
|
13687
|
+
name: "Scream / Shout"
|
|
13690
13688
|
},
|
|
13691
13689
|
{
|
|
13692
13690
|
id: "crying",
|
|
13693
|
-
name: "Crying / Baby"
|
|
13694
|
-
icon: "😢"
|
|
13691
|
+
name: "Crying / Baby"
|
|
13695
13692
|
},
|
|
13696
13693
|
{
|
|
13697
13694
|
id: "laughter",
|
|
13698
|
-
name: "Laughter"
|
|
13699
|
-
icon: "😂"
|
|
13695
|
+
name: "Laughter"
|
|
13700
13696
|
},
|
|
13701
13697
|
{
|
|
13702
13698
|
id: "music",
|
|
13703
|
-
name: "Music"
|
|
13704
|
-
icon: "🎵"
|
|
13699
|
+
name: "Music"
|
|
13705
13700
|
},
|
|
13706
13701
|
{
|
|
13707
13702
|
id: "dog",
|
|
13708
|
-
name: "Dog"
|
|
13709
|
-
icon: "🐕"
|
|
13703
|
+
name: "Dog"
|
|
13710
13704
|
},
|
|
13711
13705
|
{
|
|
13712
13706
|
id: "cat",
|
|
13713
|
-
name: "Cat"
|
|
13714
|
-
icon: "🐈"
|
|
13707
|
+
name: "Cat"
|
|
13715
13708
|
},
|
|
13716
13709
|
{
|
|
13717
13710
|
id: "bird",
|
|
13718
|
-
name: "Bird"
|
|
13719
|
-
icon: "🐦"
|
|
13711
|
+
name: "Bird"
|
|
13720
13712
|
},
|
|
13721
13713
|
{
|
|
13722
13714
|
id: "animal",
|
|
13723
|
-
name: "Animal (other)"
|
|
13724
|
-
icon: "🐾"
|
|
13715
|
+
name: "Animal (other)"
|
|
13725
13716
|
},
|
|
13726
13717
|
{
|
|
13727
13718
|
id: "alarm",
|
|
13728
|
-
name: "Alarm / Siren"
|
|
13729
|
-
icon: "🚨"
|
|
13719
|
+
name: "Alarm / Siren"
|
|
13730
13720
|
},
|
|
13731
13721
|
{
|
|
13732
13722
|
id: "doorbell",
|
|
13733
|
-
name: "Doorbell / Knock"
|
|
13734
|
-
icon: "🔔"
|
|
13723
|
+
name: "Doorbell / Knock"
|
|
13735
13724
|
},
|
|
13736
13725
|
{
|
|
13737
13726
|
id: "glass_breaking",
|
|
13738
|
-
name: "Glass Breaking"
|
|
13739
|
-
icon: "💥"
|
|
13727
|
+
name: "Glass Breaking"
|
|
13740
13728
|
},
|
|
13741
13729
|
{
|
|
13742
13730
|
id: "gunshot",
|
|
13743
|
-
name: "Gunshot / Explosion"
|
|
13744
|
-
icon: "💣"
|
|
13731
|
+
name: "Gunshot / Explosion"
|
|
13745
13732
|
},
|
|
13746
13733
|
{
|
|
13747
13734
|
id: "vehicle",
|
|
13748
|
-
name: "Vehicle"
|
|
13749
|
-
icon: "🚗"
|
|
13735
|
+
name: "Vehicle"
|
|
13750
13736
|
},
|
|
13751
13737
|
{
|
|
13752
13738
|
id: "siren",
|
|
13753
|
-
name: "Emergency Siren"
|
|
13754
|
-
icon: "🚑"
|
|
13739
|
+
name: "Emergency Siren"
|
|
13755
13740
|
},
|
|
13756
13741
|
{
|
|
13757
13742
|
id: "fire",
|
|
13758
|
-
name: "Fire / Smoke"
|
|
13759
|
-
icon: "🔥"
|
|
13743
|
+
name: "Fire / Smoke"
|
|
13760
13744
|
},
|
|
13761
13745
|
{
|
|
13762
13746
|
id: "water",
|
|
13763
|
-
name: "Water"
|
|
13764
|
-
icon: "💧"
|
|
13747
|
+
name: "Water"
|
|
13765
13748
|
},
|
|
13766
13749
|
{
|
|
13767
13750
|
id: "wind",
|
|
13768
|
-
name: "Wind / Weather"
|
|
13769
|
-
icon: "🌬️"
|
|
13751
|
+
name: "Wind / Weather"
|
|
13770
13752
|
},
|
|
13771
13753
|
{
|
|
13772
13754
|
id: "door",
|
|
13773
|
-
name: "Door"
|
|
13774
|
-
icon: "🚪"
|
|
13755
|
+
name: "Door"
|
|
13775
13756
|
},
|
|
13776
13757
|
{
|
|
13777
13758
|
id: "footsteps",
|
|
13778
|
-
name: "Footsteps"
|
|
13779
|
-
icon: "👣"
|
|
13759
|
+
name: "Footsteps"
|
|
13780
13760
|
},
|
|
13781
13761
|
{
|
|
13782
13762
|
id: "crowd",
|
|
13783
|
-
name: "Crowd / Chatter"
|
|
13784
|
-
icon: "👥"
|
|
13763
|
+
name: "Crowd / Chatter"
|
|
13785
13764
|
},
|
|
13786
13765
|
{
|
|
13787
13766
|
id: "telephone",
|
|
13788
|
-
name: "Telephone"
|
|
13789
|
-
icon: "📞"
|
|
13767
|
+
name: "Telephone"
|
|
13790
13768
|
},
|
|
13791
13769
|
{
|
|
13792
13770
|
id: "engine",
|
|
13793
|
-
name: "Engine / Motor"
|
|
13794
|
-
icon: "⚙️"
|
|
13771
|
+
name: "Engine / Motor"
|
|
13795
13772
|
},
|
|
13796
13773
|
{
|
|
13797
13774
|
id: "tools",
|
|
13798
|
-
name: "Tools / Construction"
|
|
13799
|
-
icon: "🔨"
|
|
13775
|
+
name: "Tools / Construction"
|
|
13800
13776
|
},
|
|
13801
13777
|
{
|
|
13802
13778
|
id: "silence",
|
|
13803
|
-
name: "Silence"
|
|
13804
|
-
icon: "🤫"
|
|
13779
|
+
name: "Silence"
|
|
13805
13780
|
}
|
|
13806
13781
|
];
|
|
13807
13782
|
var YAMNET_TO_MACRO = {
|
|
@@ -16265,7 +16240,7 @@ var TrackEnvelopeSchema = object({
|
|
|
16265
16240
|
* `snapshots[]` references — megabytes across a page of tracks. `slim`
|
|
16266
16241
|
* keeps every scalar the list surfaces actually render (ids, class(es),
|
|
16267
16242
|
* label / audioLabels / importance enrichment, firstSeen/lastSeen, state,
|
|
16268
|
-
* zonesVisited, bestEventId, envelope, hasFace, hasRider) and returns `positions` /
|
|
16243
|
+
* zonesVisited, bestEventId, envelope, hasFace, hasEmbeddedFace, hasRider) and returns `positions` /
|
|
16269
16244
|
* `snapshots` as EMPTY arrays — detail views re-fetch the full row via
|
|
16270
16245
|
* `getTrack`. Mirrors the event-store `projection` convention
|
|
16271
16246
|
* (`getObjectEvents` et al.).
|
|
@@ -16560,6 +16535,35 @@ var TrackSchema = object({
|
|
|
16560
16535
|
*/
|
|
16561
16536
|
hasFace: boolean().optional(),
|
|
16562
16537
|
/**
|
|
16538
|
+
* This track has a face row IN THE GALLERY: a crop **and** an embedding — a
|
|
16539
|
+
* face an operator could ASSIGN to an identity.
|
|
16540
|
+
*
|
|
16541
|
+
* The STRICT twin of {@link hasFace}, and the pair only earns its keep
|
|
16542
|
+
* because the two disagree. `hasFace` is stamped at the TOP of the face
|
|
16543
|
+
* branch, before every gate, and means no more than "a face detector produced
|
|
16544
|
+
* a face detail". This one is stamped at the single moment the gallery row
|
|
16545
|
+
* LANDS — after `FaceRecognizer.onTrackEnd` successfully persists it, i.e.
|
|
16546
|
+
* past the embedding-magnitude verdict, the `minFacePx` detection gate, the
|
|
16547
|
+
* candidate gate, the imageless-track drop (no crop was ever captured) and
|
|
16548
|
+
* the crop-store drop. Everything between the detector and that insert can
|
|
16549
|
+
* legitimately refuse the face, so a flag written any earlier promises the
|
|
16550
|
+
* operator something to assign and delivers nothing.
|
|
16551
|
+
*
|
|
16552
|
+
* **Independent of recognition.** A face collected but never auto-matched is
|
|
16553
|
+
* still assignable — it is in fact the face an operator most wants to reach —
|
|
16554
|
+
* so this is NOT gated on `recognizedIdentityId`. Recognition lands in
|
|
16555
|
+
* `subLabel`; this says only that the raw material exists.
|
|
16556
|
+
*
|
|
16557
|
+
* **Set once, never cleared.** A track that produced a gallery row produced
|
|
16558
|
+
* one; deleting the row later is the gallery's business, not this flag's.
|
|
16559
|
+
*
|
|
16560
|
+
* **Absent ≠ false**, the same rule as {@link hasFace}: every row written
|
|
16561
|
+
* before the column omits it, and so does every server that predates the
|
|
16562
|
+
* field. A consumer must test `=== true` and render nothing otherwise —
|
|
16563
|
+
* never infer "no assignable face".
|
|
16564
|
+
*/
|
|
16565
|
+
hasEmbeddedFace: boolean().optional(),
|
|
16566
|
+
/**
|
|
16563
16567
|
* This subject CONTAINS a folded rider — a person the rider-pairing step
|
|
16564
16568
|
* ([D34](../decisions/adr-0034.md)) removed from the frame BEFORE the tracker,
|
|
16565
16569
|
* so the passage is tracked once and as a VEHICLE.
|
|
@@ -17909,6 +17913,32 @@ var DetailResultSchema = object({
|
|
|
17909
17913
|
/** FRAME-space bbox (already mapped back from crop space). */
|
|
17910
17914
|
bbox: NativeCropBboxSchema.optional(),
|
|
17911
17915
|
embedding: string().optional(),
|
|
17916
|
+
/**
|
|
17917
|
+
* L2 magnitude of the RAW pre-normalization embedding. Additive and optional
|
|
17918
|
+
* so an older runner that does not send it degrades to "unmeasurable", which
|
|
17919
|
+
* the consuming gate treats as accept — never as reject.
|
|
17920
|
+
*/
|
|
17921
|
+
embeddingMagnitude: number().optional(),
|
|
17922
|
+
/**
|
|
17923
|
+
* Model that produced `embedding` — the SAME contract `labelModelId` has for
|
|
17924
|
+
* `label`, and for the same reason: the producing node is the only side that
|
|
17925
|
+
* knows which model actually ran, and re-deriving it downstream is exactly
|
|
17926
|
+
* the inference this model exists to forbid.
|
|
17927
|
+
*
|
|
17928
|
+
* Additive and optional, so a runner that predates it degrades to
|
|
17929
|
+
* "unmeasurable" rather than to a wrong answer — the consumer falls back to
|
|
17930
|
+
* its previous assumption instead of refusing.
|
|
17931
|
+
*
|
|
17932
|
+
* Its absence was not cosmetic. `FaceRecognizer` needs the probe's model id
|
|
17933
|
+
* to use `face-matcher`'s same-model gate (`sample.modelId !== probe.modelId`);
|
|
17934
|
+
* with nothing on the wire it took the id from the GALLERY, so the gate
|
|
17935
|
+
* compared the gallery against itself and could never fire. That turned the
|
|
17936
|
+
* one guard protecting the face feature space into a tautology, and it is
|
|
17937
|
+
* why swapping `face-embedding`'s model would NOT have stranded the enrolled
|
|
17938
|
+
* gallery as the catalog comment predicts — it would have scored the new
|
|
17939
|
+
* model's vectors against the old model's samples in one cosine space.
|
|
17940
|
+
*/
|
|
17941
|
+
embeddingModelId: string().optional(),
|
|
17912
17942
|
label: string().optional(),
|
|
17913
17943
|
/**
|
|
17914
17944
|
* The tier `label` occupies, copied VERBATIM from the producing step's
|
|
@@ -19319,6 +19349,7 @@ DeviceType.Camera, method(object({
|
|
|
19319
19349
|
isBattery: boolean(),
|
|
19320
19350
|
reason: _enum([
|
|
19321
19351
|
"disabled",
|
|
19352
|
+
"offline",
|
|
19322
19353
|
"sleeping",
|
|
19323
19354
|
"unreachable",
|
|
19324
19355
|
"waking"
|
|
@@ -19364,9 +19395,17 @@ targets: array(object({
|
|
|
19364
19395
|
sleeping: boolean(),
|
|
19365
19396
|
/** Current device state rendered over the cached frame. State images
|
|
19366
19397
|
* remain authoritative even when their photographic background is
|
|
19367
|
-
* old; null means the link must carry a current camera frame.
|
|
19398
|
+
* old; null means the link must carry a current camera frame.
|
|
19399
|
+
*
|
|
19400
|
+
* **This is the ONLY source a surface may derive an inactive tile
|
|
19401
|
+
* from.** A client that reads a device's `online`/`disabled` flags and
|
|
19402
|
+
* draws its own verdict will disagree with the pixels it is painting
|
|
19403
|
+
* — the frame comes from here, and so must the sentence over it
|
|
19404
|
+
* (D190). Pair with `ageMs` for the age of the photograph behind the
|
|
19405
|
+
* state. */
|
|
19368
19406
|
stateReason: _enum([
|
|
19369
19407
|
"disabled",
|
|
19408
|
+
"offline",
|
|
19370
19409
|
"sleeping",
|
|
19371
19410
|
"unreachable",
|
|
19372
19411
|
"waking"
|
|
@@ -33552,7 +33591,6 @@ var NC_AUDIO_DEFAULTS = {
|
|
|
33552
33591
|
hitPercent: 60,
|
|
33553
33592
|
samplingSeconds: 10
|
|
33554
33593
|
};
|
|
33555
|
-
new Map(AUDIO_MACRO_LABELS.flatMap((macro) => macro.icon === void 0 ? [] : [[macro.id, macro.icon]]));
|
|
33556
33594
|
new Set(["devices", "classes"]);
|
|
33557
33595
|
NC_AUDIO_DEFAULTS.hitPercent, NC_AUDIO_DEFAULTS.samplingSeconds;
|
|
33558
33596
|
/**
|
|
@@ -33786,6 +33824,39 @@ TimelapseRuleInputSchema.extend({
|
|
|
33786
33824
|
createdAt: number(),
|
|
33787
33825
|
updatedAt: number()
|
|
33788
33826
|
});
|
|
33827
|
+
Object.freeze(Object.fromEntries([{
|
|
33828
|
+
stepId: "face-embedding",
|
|
33829
|
+
label: "Face recognition model",
|
|
33830
|
+
defaultModelId: "arcface-r100",
|
|
33831
|
+
indexName: "the enrolled face gallery",
|
|
33832
|
+
options: [
|
|
33833
|
+
{
|
|
33834
|
+
id: "arcface-r100",
|
|
33835
|
+
label: "ArcFace (ResNet34)"
|
|
33836
|
+
},
|
|
33837
|
+
{
|
|
33838
|
+
id: "auraface-r100",
|
|
33839
|
+
label: "AuraFace R100"
|
|
33840
|
+
},
|
|
33841
|
+
{
|
|
33842
|
+
id: "inception-resnet-v1",
|
|
33843
|
+
label: "Inception ResNet V1"
|
|
33844
|
+
}
|
|
33845
|
+
]
|
|
33846
|
+
}, {
|
|
33847
|
+
stepId: "clip-embedding",
|
|
33848
|
+
label: "Semantic search model",
|
|
33849
|
+
defaultModelId: "mobileclip-s1",
|
|
33850
|
+
indexName: "the object semantic-search index",
|
|
33851
|
+
options: [{
|
|
33852
|
+
id: "mobileclip-s1",
|
|
33853
|
+
label: "MobileCLIP S1"
|
|
33854
|
+
}, {
|
|
33855
|
+
id: "mobileclip-s2",
|
|
33856
|
+
label: "MobileCLIP S2"
|
|
33857
|
+
}]
|
|
33858
|
+
}].map((s) => [s.stepId, s.defaultModelId])));
|
|
33859
|
+
string().min(1);
|
|
33789
33860
|
object({
|
|
33790
33861
|
/**
|
|
33791
33862
|
* Fraction of the box's own size added on EACH side before cutting.
|
|
@@ -33806,10 +33877,21 @@ object({
|
|
|
33806
33877
|
*/
|
|
33807
33878
|
square: boolean()
|
|
33808
33879
|
});
|
|
33809
|
-
|
|
33880
|
+
/**
|
|
33881
|
+
* The convention in force when nobody has configured one — byte-for-byte the
|
|
33882
|
+
* behaviour of the pre-unification LIVE path (`DETAIL_CROP_PADDING_RATIO`).
|
|
33883
|
+
*/
|
|
33884
|
+
var DEFAULT_DETAIL_CROP_CONVENTION = {
|
|
33810
33885
|
paddingRatio: .15,
|
|
33811
33886
|
square: false
|
|
33812
|
-
}
|
|
33887
|
+
};
|
|
33888
|
+
Object.freeze({
|
|
33889
|
+
x: 0,
|
|
33890
|
+
y: 0,
|
|
33891
|
+
w: 1,
|
|
33892
|
+
h: 1
|
|
33893
|
+
});
|
|
33894
|
+
DEFAULT_DETAIL_CROP_CONVENTION.paddingRatio;
|
|
33813
33895
|
/**
|
|
33814
33896
|
* WHICH delivered frames the decode worker retains a native copy of.
|
|
33815
33897
|
*
|
|
@@ -34085,6 +34167,85 @@ function removeCustomModel(list, modelId) {
|
|
|
34085
34167
|
removed: next.length !== list.length
|
|
34086
34168
|
};
|
|
34087
34169
|
}
|
|
34170
|
+
var MODEL_UPLOAD_ALLOWED_EXTENSIONS = [".onnx", ".tflite"];
|
|
34171
|
+
var FILENAME_RE = /^[a-zA-Z0-9._-]+$/;
|
|
34172
|
+
/**
|
|
34173
|
+
* Validate an upload filename: plain basename (no separators, no traversal),
|
|
34174
|
+
* conservative charset, allowlisted model extension. Returns it unchanged so
|
|
34175
|
+
* call sites read as an assertion. Throws with an actionable message.
|
|
34176
|
+
*/
|
|
34177
|
+
function sanitizeModelFilename(filename) {
|
|
34178
|
+
if (filename.includes("/") || filename.includes("\\") || filename.includes("..") || !FILENAME_RE.test(filename)) throw new Error(`Invalid model filename "${filename}" — plain basename with letters, digits, dot, underscore, hyphen only`);
|
|
34179
|
+
if (!MODEL_UPLOAD_ALLOWED_EXTENSIONS.some((ext) => filename.endsWith(ext))) throw new Error(`Unsupported model file extension on "${filename}" — expected one of ${MODEL_UPLOAD_ALLOWED_EXTENSIONS.join(", ")}`);
|
|
34180
|
+
return filename;
|
|
34181
|
+
}
|
|
34182
|
+
var ModelUploadStore = class {
|
|
34183
|
+
uploads = /* @__PURE__ */ new Map();
|
|
34184
|
+
opts;
|
|
34185
|
+
maxBytes;
|
|
34186
|
+
constructor(opts) {
|
|
34187
|
+
this.opts = opts;
|
|
34188
|
+
this.maxBytes = opts.maxBytes ?? 536870912;
|
|
34189
|
+
}
|
|
34190
|
+
begin(input) {
|
|
34191
|
+
const filename = sanitizeModelFilename(input.filename);
|
|
34192
|
+
if (!Number.isFinite(input.totalBytes) || input.totalBytes <= 0) throw new Error("totalBytes must be a positive number");
|
|
34193
|
+
if (input.totalBytes > this.maxBytes) throw new Error(`Upload too large: ${input.totalBytes} bytes exceeds the ${this.maxBytes}-byte cap`);
|
|
34194
|
+
node_fs.mkdirSync(this.opts.stagingDir, { recursive: true });
|
|
34195
|
+
const uploadId = (0, node_crypto.randomUUID)();
|
|
34196
|
+
const stagingPath = node_path.join(this.opts.stagingDir, `${uploadId}-${filename}`);
|
|
34197
|
+
node_fs.writeFileSync(stagingPath, Buffer.alloc(0));
|
|
34198
|
+
this.uploads.set(uploadId, {
|
|
34199
|
+
filename,
|
|
34200
|
+
totalBytes: input.totalBytes,
|
|
34201
|
+
stagingPath,
|
|
34202
|
+
hash: (0, node_crypto.createHash)("sha256"),
|
|
34203
|
+
received: 0
|
|
34204
|
+
});
|
|
34205
|
+
return { uploadId };
|
|
34206
|
+
}
|
|
34207
|
+
append(input) {
|
|
34208
|
+
const upload = this.mustGet(input.uploadId);
|
|
34209
|
+
const chunk = Buffer.from(input.chunkBase64, "base64");
|
|
34210
|
+
if (chunk.length === 0) throw new Error("Empty chunk");
|
|
34211
|
+
if (upload.received + chunk.length > upload.totalBytes) {
|
|
34212
|
+
this.abort({ uploadId: input.uploadId });
|
|
34213
|
+
throw new Error(`Chunk exceeds the declared totalBytes (${upload.totalBytes}) — upload aborted`);
|
|
34214
|
+
}
|
|
34215
|
+
node_fs.appendFileSync(upload.stagingPath, chunk);
|
|
34216
|
+
upload.hash.update(chunk);
|
|
34217
|
+
upload.received += chunk.length;
|
|
34218
|
+
return { received: upload.received };
|
|
34219
|
+
}
|
|
34220
|
+
commit(input) {
|
|
34221
|
+
const upload = this.mustGet(input.uploadId);
|
|
34222
|
+
if (upload.received !== upload.totalBytes) throw new Error(`Upload incomplete: received ${upload.received} of ${upload.totalBytes} bytes`);
|
|
34223
|
+
node_fs.mkdirSync(this.opts.modelsDir, { recursive: true });
|
|
34224
|
+
const destPath = node_path.join(this.opts.modelsDir, upload.filename);
|
|
34225
|
+
node_fs.renameSync(upload.stagingPath, destPath);
|
|
34226
|
+
this.uploads.delete(input.uploadId);
|
|
34227
|
+
return {
|
|
34228
|
+
filename: upload.filename,
|
|
34229
|
+
bytes: upload.received,
|
|
34230
|
+
sha256: upload.hash.digest("hex")
|
|
34231
|
+
};
|
|
34232
|
+
}
|
|
34233
|
+
abort(input) {
|
|
34234
|
+
const upload = this.uploads.get(input.uploadId);
|
|
34235
|
+
if (upload) {
|
|
34236
|
+
try {
|
|
34237
|
+
node_fs.rmSync(upload.stagingPath, { force: true });
|
|
34238
|
+
} catch {}
|
|
34239
|
+
this.uploads.delete(input.uploadId);
|
|
34240
|
+
}
|
|
34241
|
+
return { ok: true };
|
|
34242
|
+
}
|
|
34243
|
+
mustGet(uploadId) {
|
|
34244
|
+
const upload = this.uploads.get(uploadId);
|
|
34245
|
+
if (!upload) throw new Error(`Unknown uploadId "${uploadId}" — begin a new upload`);
|
|
34246
|
+
return upload;
|
|
34247
|
+
}
|
|
34248
|
+
};
|
|
34088
34249
|
//#endregion
|
|
34089
34250
|
//#region src/model-studio-actions.ts
|
|
34090
34251
|
/**
|
|
@@ -34125,6 +34286,28 @@ var modelStudioActions = defineCustomActions({
|
|
|
34125
34286
|
}), { kind: "mutation" }),
|
|
34126
34287
|
listAvailability: customAction(_void(), ModelAvailabilityMapSchema),
|
|
34127
34288
|
/**
|
|
34289
|
+
* Chunked model-file upload (Frigate import). One tRPC mutation cannot
|
|
34290
|
+
* carry a model file (hub HTTP body limit ~1 MB), so the page streams
|
|
34291
|
+
* base64 chunks: begin → append× → commit. Commit lands the artifact in the
|
|
34292
|
+
* hub's shared modelsDir, where the `camstack-local://` catalog-URL
|
|
34293
|
+
* convention resolves it by basename and `model-distributor` can ship it to
|
|
34294
|
+
* agents. Abort (or an oversize chunk) discards the staging file.
|
|
34295
|
+
*/
|
|
34296
|
+
beginModelUpload: customAction(object({
|
|
34297
|
+
filename: string(),
|
|
34298
|
+
totalBytes: number().int().positive()
|
|
34299
|
+
}), object({ uploadId: string() }), { kind: "mutation" }),
|
|
34300
|
+
appendModelUpload: customAction(object({
|
|
34301
|
+
uploadId: string(),
|
|
34302
|
+
chunkBase64: string()
|
|
34303
|
+
}), object({ received: number() }), { kind: "mutation" }),
|
|
34304
|
+
commitModelUpload: customAction(object({ uploadId: string() }), object({
|
|
34305
|
+
filename: string(),
|
|
34306
|
+
bytes: number(),
|
|
34307
|
+
sha256: string()
|
|
34308
|
+
}), { kind: "mutation" }),
|
|
34309
|
+
abortModelUpload: customAction(object({ uploadId: string() }), object({ ok: literal(true) }), { kind: "mutation" }),
|
|
34310
|
+
/**
|
|
34128
34311
|
* Rank nodes for model conversion based on hardware capabilities.
|
|
34129
34312
|
* CoreML targets require darwin; OpenVINO targets require an OpenVINO-capable node.
|
|
34130
34313
|
*/
|
|
@@ -34222,6 +34405,8 @@ var ModelStudioAddon = class extends BaseAddon {
|
|
|
34222
34405
|
id = "model-studio";
|
|
34223
34406
|
modelsState = null;
|
|
34224
34407
|
availabilityState = null;
|
|
34408
|
+
/** Lazily-built chunked-upload store (hub only) — see `upload/model-upload-store.ts`. */
|
|
34409
|
+
uploadStore = null;
|
|
34225
34410
|
/**
|
|
34226
34411
|
* Module-Federation page declaration surfaced via the `addon-pages-source`
|
|
34227
34412
|
* collection cap. Mirrors the manifest `pages[]` entry — admin-ui's
|
|
@@ -34308,6 +34493,18 @@ var ModelStudioAddon = class extends BaseAddon {
|
|
|
34308
34493
|
providers,
|
|
34309
34494
|
customActions: isHub ? modelStudioActions : void 0,
|
|
34310
34495
|
actionHandlers: isHub ? {
|
|
34496
|
+
beginModelUpload: async (input) => (await this.getUploadStore()).begin(input),
|
|
34497
|
+
appendModelUpload: async (input) => (await this.getUploadStore()).append(input),
|
|
34498
|
+
commitModelUpload: async (input) => {
|
|
34499
|
+
const result = (await this.getUploadStore()).commit(input);
|
|
34500
|
+
this.ctx.logger.info("Model upload landed in modelsDir", { meta: {
|
|
34501
|
+
filename: result.filename,
|
|
34502
|
+
bytes: result.bytes,
|
|
34503
|
+
sha256: result.sha256
|
|
34504
|
+
} });
|
|
34505
|
+
return result;
|
|
34506
|
+
},
|
|
34507
|
+
abortModelUpload: async (input) => (await this.getUploadStore()).abort(input),
|
|
34311
34508
|
registerCustomModel: async (input) => this.registerCustomModel(input),
|
|
34312
34509
|
removeCustomModel: async (input) => this.removeCustomModel(input),
|
|
34313
34510
|
listCustomModels: async () => this.listCustomModels(),
|
|
@@ -34389,6 +34586,22 @@ var ModelStudioAddon = class extends BaseAddon {
|
|
|
34389
34586
|
} : void 0
|
|
34390
34587
|
};
|
|
34391
34588
|
}
|
|
34589
|
+
/**
|
|
34590
|
+
* Build (once) the upload store, anchored at this node's writable data root:
|
|
34591
|
+
* staging under `<dataDir>/model-uploads`, commits into the SHARED
|
|
34592
|
+
* `<nodeDataDir>/models` — the same directory every inference addon loads
|
|
34593
|
+
* from, which is what makes the `camstack-local://` URL convention resolve.
|
|
34594
|
+
*/
|
|
34595
|
+
async getUploadStore() {
|
|
34596
|
+
if (this.uploadStore) return this.uploadStore;
|
|
34597
|
+
const modelsDir = await this.resolveModelsDir();
|
|
34598
|
+
const stagingDir = node_path.default.join(this.ctx.dataDir ?? node_os.default.tmpdir(), "model-uploads");
|
|
34599
|
+
this.uploadStore = new ModelUploadStore({
|
|
34600
|
+
stagingDir,
|
|
34601
|
+
modelsDir
|
|
34602
|
+
});
|
|
34603
|
+
return this.uploadStore;
|
|
34604
|
+
}
|
|
34392
34605
|
get state_() {
|
|
34393
34606
|
if (!this.modelsState) throw new Error("ModelStudioAddon: durable state not initialized");
|
|
34394
34607
|
return this.modelsState;
|