@camstack/addon-osd-manager 0.1.234 → 0.1.236

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.
Files changed (18) hide show
  1. package/dist/{MotionZonesSettings-CpC0VrRF.mjs → MotionZonesSettings--WB2aUGD.mjs} +2 -2
  2. package/dist/{PrivacyMaskSettings-DsRVLMGw.mjs → PrivacyMaskSettings-TGecGZ1J.mjs} +4 -4
  3. package/dist/{SceneMonitorEditor-Bd_y21mf.mjs → SceneMonitorEditor-Cq3bsqmJ.mjs} +3 -3
  4. package/dist/_stub.js +179 -169
  5. package/dist/{_virtual_mf-localSharedImportMap___mfe_internal__addon_osd_manager_page-CJ5YyyFD.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_osd_manager_page-BPgZSZ-3.mjs} +3 -3
  6. package/dist/_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-DVHQfCvU.mjs +26 -0
  7. package/dist/{hostInit-BgZ8bjH8.mjs → hostInit-iQV7js-A.mjs} +2 -2
  8. package/dist/index.js +373 -11
  9. package/dist/index.mjs +373 -11
  10. package/dist/{player-overlays-Bfw9gqQd.mjs → player-overlays-D0twFHMl.mjs} +1 -1
  11. package/dist/remoteEntry.js +1 -1
  12. package/dist/{responsive-CvsGDf2k.mjs → responsive-BP2NYfOi.mjs} +1 -1
  13. package/dist/{scene-monitor-copy-Cp3j72cs.mjs → scene-monitor-copy-DYchveQT.mjs} +1 -1
  14. package/dist/{square-DRfiAJqL.mjs → square-BHCEqr7g.mjs} +1 -1
  15. package/dist/{trash-2-KaQPwGe5.mjs → trash-2-BGZFyowm.mjs} +1 -1
  16. package/dist/{virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_osd_manager_page__remoteEntry_js-BlUDCAK-.mjs → virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_osd_manager_page__remoteEntry_js-Ch_9U0JF.mjs} +1 -1
  17. package/package.json +1 -1
  18. package/dist/_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-cCq5NyzR.mjs +0 -26
package/dist/index.js CHANGED
@@ -5390,7 +5390,7 @@ var ZodIssueCode = {
5390
5390
  var ZodFirstPartyTypeKind;
5391
5391
  ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
5392
5392
  //#endregion
5393
- //#region ../types/dist/sleep-BBF1iXUi.mjs
5393
+ //#region ../types/dist/sleep-DAX0-2v9.mjs
5394
5394
  /**
5395
5395
  * The audio chunk plane's byte format, and the ONE expansion from a coded
5396
5396
  * window to float samples (D455).
@@ -12155,6 +12155,12 @@ var ConvertResultSchema = object({
12155
12155
  files: array(string()).readonly()
12156
12156
  })).readonly()
12157
12157
  });
12158
+ _enum(["new-session", "step-up"]);
12159
+ /** How a native app starts one login method (D858), as `auth.listLoginMethods` reports it. */
12160
+ var AppLoginPathSchema = discriminatedUnion("kind", [object({ kind: literal("native") }), object({
12161
+ kind: literal("browser"),
12162
+ startPath: string().startsWith("/")
12163
+ })]);
12158
12164
  /**
12159
12165
  * Device certificates (D855) — the wire contract shared by the hub, the admin
12160
12166
  * UI and the native viewer.
@@ -12314,7 +12320,9 @@ object({
12314
12320
  signature: literal(DEVICE_CERT_SIGNATURE),
12315
12321
  messageVersion: literal(DEVICE_SIGNATURE_MESSAGE_VERSION),
12316
12322
  /** Which clients can execute it: a native app silently, a browser with a non-extractable WebCrypto key. */
12317
- clients: array(_enum(["native", "web"]))
12323
+ clients: array(_enum(["native", "web"])),
12324
+ /** The app executes it itself, silently (D858). */
12325
+ app: AppLoginPathSchema.nullable()
12318
12326
  });
12319
12327
  var ExpressionBindingSourceSchema = union([
12320
12328
  object({
@@ -15888,6 +15896,208 @@ method(object({
15888
15896
  kind: "mutation",
15889
15897
  auth: "admin"
15890
15898
  }), method(object({}), array(KeychainSecretMetaSchema).readonly(), { auth: "admin" }), method(object({}), KeychainStateSchema, { auth: "admin" });
15899
+ /**
15900
+ * device-history — the ONE mechanism for numeric history (D850).
15901
+ *
15902
+ * A device value is recorded because its capability says so (the `history`
15903
+ * block of a `*.cap.ts`, captured hub-side from `DeviceStateChanged`); any
15904
+ * other series is DECLARED by the addon that produces it and fed with points
15905
+ * (`record`) or closed five-minute buckets (`recordBuckets`). Rollups 5m / 1h /
15906
+ * 1d are computed here and nowhere else. Storage is `history.db` (D851).
15907
+ *
15908
+ * Who the PRODUCER is: `declareSeries`, `record` and `recordBuckets` are owner
15909
+ * checked against the `callerAddonId` the transport stamps into a call that
15910
+ * crossed a process (never in an input schema, so a session cannot supply it).
15911
+ * A call with no stamp is refused `not-owner`. The methods are `admin` so a
15912
+ * non-admin session never reaches them; an addon's `ctx.api` call bypasses the
15913
+ * tier by design.
15914
+ */
15915
+ /** Whose history: a real device, or a cluster node (load, memory). */
15916
+ var DeviceHistorySubjectSchema = discriminatedUnion("kind", [object({
15917
+ kind: literal("device"),
15918
+ deviceId: number().int()
15919
+ }), object({
15920
+ kind: literal("node"),
15921
+ nodeId: string().min(1)
15922
+ })]);
15923
+ var DeviceHistoryKindSchema = _enum([
15924
+ "gauge",
15925
+ "counter",
15926
+ "boolean"
15927
+ ]);
15928
+ var DeviceHistoryResolutionSchema = _enum([
15929
+ "raw",
15930
+ "5m",
15931
+ "1h",
15932
+ "1d"
15933
+ ]);
15934
+ /** Why a producer's point or bucket was not stored. Counted, never silent (D391). */
15935
+ var DeviceHistoryRefusalReasonSchema = _enum([
15936
+ "undeclared",
15937
+ "not-owner",
15938
+ "opted-out",
15939
+ "not-a-real-device",
15940
+ "rate",
15941
+ "ingest-mismatch",
15942
+ "out-of-range"
15943
+ ]);
15944
+ var RefusalSchema = object({
15945
+ key: string(),
15946
+ reason: DeviceHistoryRefusalReasonSchema,
15947
+ count: number().int()
15948
+ });
15949
+ var IngestResultSchema = object({
15950
+ accepted: number().int(),
15951
+ refused: array(RefusalSchema).readonly()
15952
+ });
15953
+ var SeriesInfoSchema = object({
15954
+ key: string(),
15955
+ scope: string(),
15956
+ kind: DeviceHistoryKindSchema,
15957
+ /** `null` is unknown (a `unitFrom` series whose device does not state a unit right now), never a guess. */
15958
+ unit: string().nullable(),
15959
+ displayName: string(),
15960
+ source: _enum(["cap", "addon"]),
15961
+ firstTs: number(),
15962
+ lastTs: number()
15963
+ });
15964
+ var QueryPointSchema = object({
15965
+ /** Raw: the point's time. Rollup: the bucket start. */
15966
+ t: number(),
15967
+ samples: number().int(),
15968
+ /** `sum / samples`. */
15969
+ mean: number().nullable(),
15970
+ /** Time-weighted mean (`tw_sum / tw_ms`); `null` for bucket-ingested series. For a boolean: the fraction of time true. */
15971
+ twMean: number().nullable(),
15972
+ min: number(),
15973
+ max: number(),
15974
+ /** `null` is unknown, never zero (D393). */
15975
+ last: number().nullable()
15976
+ });
15977
+ var QuerySeriesSchema = object({
15978
+ scope: string(),
15979
+ /** The last point STRICTLY BEFORE `from` in the chosen tier, so a step chart can start at the held value. */
15980
+ before: object({
15981
+ t: number(),
15982
+ value: number().nullable()
15983
+ }).nullable(),
15984
+ points: array(QueryPointSchema).readonly()
15985
+ });
15986
+ /** The window part of a query, shared by the device and node forms. */
15987
+ var QueryWindowShape = {
15988
+ key: string(),
15989
+ scope: string().optional(),
15990
+ from: number(),
15991
+ to: number(),
15992
+ resolution: union([DeviceHistoryResolutionSchema, literal("auto")]).default("auto"),
15993
+ maxPoints: number().int().positive().max(5e3).default(1e3)
15994
+ };
15995
+ var QueryResultSchema = object({
15996
+ resolution: DeviceHistoryResolutionSchema,
15997
+ series: array(QuerySeriesSchema).readonly(),
15998
+ truncated: boolean()
15999
+ });
16000
+ var TierStatusSchema = object({
16001
+ tier: DeviceHistoryResolutionSchema,
16002
+ /** `null` until the first background count answered. */
16003
+ rows: number().int().nullable(),
16004
+ /** `rows` times a fixed per-row estimate — approximate, labelled so. */
16005
+ approxBytes: number().nullable(),
16006
+ countedAt: number().nullable()
16007
+ });
16008
+ /** Operator/diagnostic view: rows per tier, last runs, refusals and drops since boot. */
16009
+ var DeviceHistoryStatusSchema = object({
16010
+ startedAt: number(),
16011
+ /** The store is declared, series loaded and the first reconcile has answered. */
16012
+ ready: boolean(),
16013
+ series: number().int(),
16014
+ metrics: number().int(),
16015
+ optedOutDevices: number().int(),
16016
+ tiers: array(TierStatusSchema).readonly(),
16017
+ capture: object({
16018
+ eventsSeen: number().int(),
16019
+ pointsEmitted: number().int(),
16020
+ pointsWritten: number().int(),
16021
+ pointsDropped: number().int(),
16022
+ bufferDepth: number().int(),
16023
+ trailingEmitted: number().int(),
16024
+ reconciledPoints: number().int(),
16025
+ reconcileRuns: number().int(),
16026
+ reconcileFailures: number().int(),
16027
+ lastReconcileAt: number().nullable(),
16028
+ lastFlushAt: number().nullable(),
16029
+ flushFailures: number().int(),
16030
+ skipped: record(string(), number().int())
16031
+ }),
16032
+ ingest: object({
16033
+ accepted: number().int(),
16034
+ refused: record(string(), number().int())
16035
+ }),
16036
+ rollup: object({
16037
+ last5mAt: number().nullable(),
16038
+ last1hAt: number().nullable(),
16039
+ last1dAt: number().nullable(),
16040
+ errors: number().int(),
16041
+ dirty5m: number().int(),
16042
+ dirty1h: number().int(),
16043
+ dirty1d: number().int()
16044
+ }),
16045
+ retention: object({
16046
+ lastRunAt: number().nullable(),
16047
+ deleted: record(string(), number().int()),
16048
+ purgedSeries: number().int()
16049
+ }),
16050
+ directory: object({
16051
+ devices: number().int(),
16052
+ lastRefreshAt: number().nullable()
16053
+ })
16054
+ });
16055
+ method(object({ deviceId: number().int() }), array(SeriesInfoSchema).readonly()), method(object({ nodeId: string().min(1) }), array(SeriesInfoSchema).readonly(), { auth: "admin" }), method(object({
16056
+ deviceId: number().int(),
16057
+ ...QueryWindowShape
16058
+ }), QueryResultSchema), method(object({
16059
+ nodeId: string().min(1),
16060
+ ...QueryWindowShape
16061
+ }), QueryResultSchema, { auth: "admin" }), method(object({
16062
+ name: string().regex(/^[a-z0-9-]+$/),
16063
+ subjectKind: _enum(["device", "node"]),
16064
+ kind: DeviceHistoryKindSchema,
16065
+ unit: string().optional(),
16066
+ displayName: string().min(1),
16067
+ ingest: _enum(["points", "buckets"])
16068
+ }), object({ key: string() }), {
16069
+ kind: "mutation",
16070
+ auth: "admin"
16071
+ }), method(object({ points: array(object({
16072
+ key: string(),
16073
+ subject: DeviceHistorySubjectSchema,
16074
+ scope: string().default(""),
16075
+ ts: number(),
16076
+ value: number()
16077
+ })).max(5e3) }), IngestResultSchema, {
16078
+ kind: "mutation",
16079
+ auth: "admin"
16080
+ }), method(object({ buckets: array(object({
16081
+ key: string(),
16082
+ subject: DeviceHistorySubjectSchema,
16083
+ scope: string().default(""),
16084
+ bucketStart: number(),
16085
+ samples: number().int().positive(),
16086
+ sum: number(),
16087
+ min: number(),
16088
+ max: number(),
16089
+ last: number().nullable(),
16090
+ lastTs: number().nullable()
16091
+ })).max(5e3) }), IngestResultSchema, {
16092
+ kind: "mutation",
16093
+ auth: "admin"
16094
+ }), method(object({ deviceId: number().int() }), object({ enabled: boolean() })), method(object({
16095
+ deviceId: number().int(),
16096
+ enabled: boolean()
16097
+ }), object({ enabled: boolean() }), {
16098
+ kind: "mutation",
16099
+ auth: "admin"
16100
+ }), method(object({}), DeviceHistoryStatusSchema, { auth: "admin" });
15891
16101
  var DeviceCaStatusSchema = discriminatedUnion("state", [
15892
16102
  object({ state: literal("absent") }),
15893
16103
  object({
@@ -16005,6 +16215,9 @@ method(object({}), object({
16005
16215
  }), {
16006
16216
  kind: "mutation",
16007
16217
  auth: "admin"
16218
+ }), method(object({}), object({ ok: literal(true) }), {
16219
+ kind: "mutation",
16220
+ auth: "admin"
16008
16221
  }), method(object({
16009
16222
  certPem: string().min(1),
16010
16223
  caCertPem: string().min(1),
@@ -38797,7 +39010,13 @@ var LoginMethodContributionSchema = discriminatedUnion("kind", [
38797
39010
  * `beginExternalLink` offer exactly the redirect methods that set this,
38798
39011
  * whatever their id. Absent / false — a login button only.
38799
39012
  */
38800
- linkable: boolean().optional()
39013
+ linkable: boolean().optional(),
39014
+ /**
39015
+ * How a NATIVE app starts this method (D858): `{ kind: 'browser', startPath }`
39016
+ * when the route understands the app flow query (`app=1&code_challenge=…`),
39017
+ * `null`/absent when there is no app path - the app hides the method.
39018
+ */
39019
+ app: AppLoginPathSchema.nullable().optional()
38801
39020
  }),
38802
39021
  object({
38803
39022
  kind: literal("widget"),
@@ -38809,7 +39028,9 @@ var LoginMethodContributionSchema = discriminatedUnion("kind", [
38809
39028
  bundle: string(),
38810
39029
  /** MF remote descriptor — `{ remoteName, exposedModule, componentKey }`. */
38811
39030
  remote: WidgetRemoteSchema,
38812
- stage: LoginStageEnum
39031
+ stage: LoginStageEnum,
39032
+ /** Widgets are web ceremonies: no native app path (D858). Absent reads as `null`. */
39033
+ app: AppLoginPathSchema.nullable().optional()
38813
39034
  }),
38814
39035
  object({
38815
39036
  kind: literal("passkey"),
@@ -38821,7 +39042,9 @@ var LoginMethodContributionSchema = discriminatedUnion("kind", [
38821
39042
  /** Effective WebAuthn RP ID (`resolveRpID()`) — the shell gates visibility on it. */
38822
39043
  rpId: string(),
38823
39044
  /** Effective expected origin (`resolveOrigin()`), null when unconfigured. */
38824
- origin: string().nullable()
39045
+ origin: string().nullable(),
39046
+ /** Set by the hub for the primary arm; a second-factor passkey has no app path (D858). */
39047
+ app: AppLoginPathSchema.nullable().optional()
38825
39048
  })
38826
39049
  ]);
38827
39050
  method(_void(), array(LoginMethodContributionSchema).readonly());
@@ -39331,7 +39554,21 @@ var NetworkEndpointSchema = object({
39331
39554
  url: string(),
39332
39555
  hostname: string(),
39333
39556
  port: number(),
39334
- protocol: _enum(["http", "https"])
39557
+ protocol: _enum(["http", "https"]),
39558
+ /**
39559
+ * Whether this address survives a restart of its provider. `false` = it is
39560
+ * re-issued every time (a Quick tunnel's random `*.trycloudflare.com`); the
39561
+ * hub never selects such an address AUTOMATICALLY for a role (D860), though
39562
+ * it stays visible and an operator may still flag it. Absent = stable: every
39563
+ * provider except a Quick tunnel owns a name that does not change.
39564
+ */
39565
+ stable: boolean().optional()
39566
+ });
39567
+ object({
39568
+ url: string(),
39569
+ /** Mirrors {@link NetworkEndpointSchema} `stable`; absent = stable. */
39570
+ stable: boolean().optional(),
39571
+ updated: boolean().optional()
39335
39572
  });
39336
39573
  var NetworkAccessStatusSchema = object({
39337
39574
  connected: boolean(),
@@ -49922,7 +50159,20 @@ var SsoBridgeClaimsSchema = object({
49922
50159
  * request to present the matching cookie — a login bridge is useless in
49923
50160
  * any other browser.
49924
50161
  */
49925
- browserBinding: string().optional()
50162
+ browserBinding: string().optional(),
50163
+ /**
50164
+ * The native app that started this sign-in (D858): its PKCE challenge,
50165
+ * `state`, purpose and allow-listed return URL, copied from the server-side
50166
+ * pending OIDC state. A bridge carrying it is finished ONLY at
50167
+ * `/api/auth/sso/finish-app` (which mints a handoff code, never a web
50168
+ * session); `/api/auth/sso/finish` refuses it.
50169
+ */
50170
+ app: object({
50171
+ codeChallenge: string(),
50172
+ state: string(),
50173
+ purpose: _enum(["new-session", "step-up"]),
50174
+ redirect: string()
50175
+ }).optional()
49926
50176
  });
49927
50177
  method(object({
49928
50178
  claims: SsoBridgeClaimsSchema,
@@ -52128,7 +52378,12 @@ var SearchResultSchema = object({
52128
52378
  publishedAt: string(),
52129
52379
  author: string(),
52130
52380
  installed: boolean(),
52131
- installedVersion: string().optional()
52381
+ installedVersion: string().optional(),
52382
+ /**
52383
+ * Capability names the package's addons declare (from its published
52384
+ * manifest). `null` = the registry lookup failed — unknown, never `[]` (D393).
52385
+ */
52386
+ capabilities: array(string()).readonly().nullable()
52132
52387
  });
52133
52388
  var AutoUpdateSettingsSchema = object({
52134
52389
  channel: ChannelSchema,
@@ -52290,7 +52545,11 @@ method(object({ nodeId: string().optional() }).optional(), array(AddonListItemSc
52290
52545
  }), method(object({ packageName: string().optional() }), PackageInstallationsSchema, { auth: "admin" }), method(_void(), ReloadPackagesResultSchema, {
52291
52546
  kind: "mutation",
52292
52547
  auth: "admin"
52293
- }), method(object({ query: string().optional() }), array(SearchResultSchema)), method(object({ nodeId: string().optional() }), array(PackageUpdateSchema).readonly(), { auth: "admin" }), method(object({
52548
+ }), method(object({
52549
+ query: string().optional(),
52550
+ /** Only packages whose addons declare this capability (unknown ones excluded). */
52551
+ capability: string().optional()
52552
+ }), array(SearchResultSchema)), method(object({ nodeId: string().optional() }), array(PackageUpdateSchema).readonly(), { auth: "admin" }), method(object({
52294
52553
  name: string().min(1),
52295
52554
  version: string().optional(),
52296
52555
  nodeId: string().optional()
@@ -54698,7 +54957,13 @@ var ConnectionEndpointSchema = object({
54698
54957
  * calls so the client can sort even if the cap returns a new
54699
54958
  * ordering between polls.
54700
54959
  */
54701
- priority: number()
54960
+ priority: number(),
54961
+ /**
54962
+ * `false` = the address changes on its own (a Quick tunnel, re-issued on
54963
+ * every respawn). Automatic role resolution skips it (D860); an explicit
54964
+ * operator flag still honours it. Absent = stable.
54965
+ */
54966
+ stable: boolean().optional()
54702
54967
  });
54703
54968
  /**
54704
54969
  * Where the advertised local port came from. Ordered most → least
@@ -55327,7 +55592,7 @@ var MotionOnMotionChangedDataSchema = object({
55327
55592
  /** Who started it (D672). Absent = the camera itself. Only `onboard` carries `sensor`. */
55328
55593
  triggeredBy: MotionTriggeredBySchema.optional()
55329
55594
  });
55330
- DeviceType.Camera, DeviceType.Sensor, method(object({ deviceId: number() }), boolean());
55595
+ DeviceType.Camera, DeviceType.Sensor, method(object({ deviceId: number() }), boolean()), DeviceType.Camera;
55331
55596
  object({
55332
55597
  enabled: boolean(),
55333
55598
  /** Ms epoch of the last operator-driven change. */
@@ -63062,6 +63327,66 @@ Object.freeze({
63062
63327
  addonId: null,
63063
63328
  access: "create"
63064
63329
  },
63330
+ "deviceHistory.declareSeries": {
63331
+ capName: "device-history",
63332
+ capScope: "system",
63333
+ addonId: null,
63334
+ access: "create"
63335
+ },
63336
+ "deviceHistory.getDeviceEnabled": {
63337
+ capName: "device-history",
63338
+ capScope: "system",
63339
+ addonId: null,
63340
+ access: "view"
63341
+ },
63342
+ "deviceHistory.getStatus": {
63343
+ capName: "device-history",
63344
+ capScope: "system",
63345
+ addonId: null,
63346
+ access: "view"
63347
+ },
63348
+ "deviceHistory.listNodeSeries": {
63349
+ capName: "device-history",
63350
+ capScope: "system",
63351
+ addonId: null,
63352
+ access: "view"
63353
+ },
63354
+ "deviceHistory.listSeries": {
63355
+ capName: "device-history",
63356
+ capScope: "system",
63357
+ addonId: null,
63358
+ access: "view"
63359
+ },
63360
+ "deviceHistory.query": {
63361
+ capName: "device-history",
63362
+ capScope: "system",
63363
+ addonId: null,
63364
+ access: "view"
63365
+ },
63366
+ "deviceHistory.queryNode": {
63367
+ capName: "device-history",
63368
+ capScope: "system",
63369
+ addonId: null,
63370
+ access: "view"
63371
+ },
63372
+ "deviceHistory.record": {
63373
+ capName: "device-history",
63374
+ capScope: "system",
63375
+ addonId: null,
63376
+ access: "create"
63377
+ },
63378
+ "deviceHistory.recordBuckets": {
63379
+ capName: "device-history",
63380
+ capScope: "system",
63381
+ addonId: null,
63382
+ access: "create"
63383
+ },
63384
+ "deviceHistory.setDeviceEnabled": {
63385
+ capName: "device-history",
63386
+ capScope: "system",
63387
+ addonId: null,
63388
+ access: "create"
63389
+ },
63065
63390
  "deviceManager.addLocation": {
63066
63391
  capName: "device-manager",
63067
63392
  capScope: "system",
@@ -65126,6 +65451,12 @@ Object.freeze({
65126
65451
  addonId: null,
65127
65452
  access: "create"
65128
65453
  },
65454
+ "nodeCertificates.forgetHub": {
65455
+ capName: "node-certificates",
65456
+ capScope: "system",
65457
+ addonId: null,
65458
+ access: "delete"
65459
+ },
65129
65460
  "nodeCertificates.getCertificates": {
65130
65461
  capName: "node-certificates",
65131
65462
  capScope: "system",
@@ -69853,6 +70184,26 @@ Object.freeze({
69853
70184
  form: "single",
69854
70185
  optional: false
69855
70186
  }],
70187
+ "deviceHistory.getDeviceEnabled": [{
70188
+ name: "deviceId",
70189
+ form: "single",
70190
+ optional: false
70191
+ }],
70192
+ "deviceHistory.listSeries": [{
70193
+ name: "deviceId",
70194
+ form: "single",
70195
+ optional: false
70196
+ }],
70197
+ "deviceHistory.query": [{
70198
+ name: "deviceId",
70199
+ form: "single",
70200
+ optional: false
70201
+ }],
70202
+ "deviceHistory.setDeviceEnabled": [{
70203
+ name: "deviceId",
70204
+ form: "single",
70205
+ optional: false
70206
+ }],
69856
70207
  "deviceManager.adoptionRelease": [{
69857
70208
  name: "camDeviceId",
69858
70209
  form: "single",
@@ -72031,6 +72382,7 @@ Object.freeze({
72031
72382
  "network-access": "ingress",
72032
72383
  "smtp-provider": "email"
72033
72384
  });
72385
+ DeviceType.Camera;
72034
72386
  var G711_SCALE_CORRECTION_DB = {
72035
72387
  PCMU: 20 * Math.log10(4),
72036
72388
  PCMA: 20 * Math.log10(8)
@@ -73875,6 +74227,16 @@ Object.freeze({
73875
74227
  "pageSize": 50
73876
74228
  } },
73877
74229
  "device-credentials": { "listDeviceCredentials": { "includeRevoked": false } },
74230
+ "device-history": {
74231
+ "query": {
74232
+ "resolution": "auto",
74233
+ "maxPoints": 1e3
74234
+ },
74235
+ "queryNode": {
74236
+ "resolution": "auto",
74237
+ "maxPoints": 1e3
74238
+ }
74239
+ },
73878
74240
  "device-manager": { "adoptionListCandidates": {
73879
74241
  "page": 1,
73880
74242
  "pageSize": 50