@camstack/addon-pipeline 1.2.284 → 1.2.286

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 (33) hide show
  1. package/dist/audio-analyzer/index.js +2 -2
  2. package/dist/audio-analyzer/index.mjs +2 -2
  3. package/dist/{default-detection-model-XmUJCdXn.js → default-detection-model-B9sgmjNE.js} +1 -1
  4. package/dist/{default-detection-model-DuK-Xu10.mjs → default-detection-model-BbaeqJWd.mjs} +1 -1
  5. package/dist/detection-pipeline/index.js +4 -4
  6. package/dist/detection-pipeline/index.mjs +4 -4
  7. package/dist/{dist-CWJ_t5jq.mjs → dist-L6fspiMs.mjs} +1479 -3
  8. package/dist/{dist-BS_GvN2R.js → dist-bAVvh6zw.js} +1496 -2
  9. package/dist/motion-wasm/index.js +1 -1
  10. package/dist/motion-wasm/index.mjs +1 -1
  11. package/dist/{node-CqOIo6CL.js → node-BAHXRXps.js} +1 -1
  12. package/dist/{node-Cz6ByejK.mjs → node-BKSzm60G.mjs} +1 -1
  13. package/dist/pipeline-runner/index.js +3 -3
  14. package/dist/pipeline-runner/index.mjs +3 -3
  15. package/dist/{process-memory-BFycx9BF.js → process-memory-B5Enn1QL.js} +1 -1
  16. package/dist/{process-memory-DAwCuIeI.mjs → process-memory-gIGkgoj7.mjs} +1 -1
  17. package/dist/recorder/index.js +2 -2
  18. package/dist/recorder/index.mjs +2 -2
  19. package/dist/{segment-demux-js-r4t4zgdr.js → segment-demux-js-BCxiqxMJ.js} +166 -148
  20. package/dist/{segment-demux-js-gLuKs5Mg.mjs → segment-demux-js-DIMPKsLl.mjs} +149 -149
  21. package/dist/stream-broker/_stub.js +2 -2
  22. package/dist/stream-broker/{_virtual_mf-localSharedImportMap___mfe_internal__addon_stream_broker_widgets-CROj7Fwq.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_stream_broker_widgets-BQppCOBh.mjs} +2 -2
  23. package/dist/stream-broker/_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-BxqJbWC8.mjs +26 -0
  24. package/dist/stream-broker/_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-DWcIgV47.mjs +26 -0
  25. package/dist/stream-broker/demux-worker-child.js +1 -1
  26. package/dist/stream-broker/demux-worker-child.mjs +1 -1
  27. package/dist/stream-broker/{hostInit-DvNcV7kj.mjs → hostInit-BMoj1Wh2.mjs} +2 -2
  28. package/dist/stream-broker/index.js +2193 -51
  29. package/dist/stream-broker/index.mjs +2193 -51
  30. package/dist/stream-broker/remoteEntry.js +1 -1
  31. package/package.json +1 -1
  32. package/dist/stream-broker/_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-DByJbFCy.mjs +0 -26
  33. package/dist/stream-broker/_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-BnLVuoDg.mjs +0 -26
@@ -5360,7 +5360,7 @@ var ZodIssueCode = {
5360
5360
  var ZodFirstPartyTypeKind;
5361
5361
  ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
5362
5362
  //#endregion
5363
- //#region ../types/dist/sleep-CUmLTud7.mjs
5363
+ //#region ../types/dist/sleep-De1BvmWo.mjs
5364
5364
  /**
5365
5365
  * The audio chunk plane's byte format, and the ONE expansion from a coded
5366
5366
  * window to float samples (D455).
@@ -8993,10 +8993,20 @@ var CameraSwitchAuthoritySchema = discriminatedUnion("kind", [
8993
8993
  var CameraSwitchUnavailableReasonSchema = _enum([
8994
8994
  "no-provider",
8995
8995
  "source-unreachable",
8996
- "not-configured",
8997
8996
  "device-disabled"
8998
8997
  ]);
8999
8998
  /**
8999
+ * Something true about a switch that is nonetheless OFFERED.
9000
+ *
9001
+ * The distinction from {@link CameraSwitchUnavailableReasonSchema} is the
9002
+ * whole point: a reason replaces the control, a warning travels WITH it. The
9003
+ * privacy mask taught us the difference — greying the one button that starts
9004
+ * the feature teaches the operator the feature is broken, while a live toggle
9005
+ * that flips nothing teaches them the switch is broken. Neither is true; the
9006
+ * honest surface is a working toggle that says what is missing.
9007
+ */
9008
+ var CameraSwitchWarningSchema = _enum(["no-privacy-zones"]);
9009
+ /**
9000
9010
  * One switch, resolved for one camera.
9001
9011
  *
9002
9012
  * `label` and `costWhenOff` travel ON THE WIRE rather than being looked up
@@ -9015,6 +9025,11 @@ var CameraSwitchSchema = object({
9015
9025
  /** False = do not render a control. `unavailableReason` says why. */
9016
9026
  available: boolean(),
9017
9027
  unavailableReason: CameraSwitchUnavailableReasonSchema.optional(),
9028
+ /**
9029
+ * Present on an AVAILABLE switch only. Rendered beside the live control;
9030
+ * never a substitute for one.
9031
+ */
9032
+ warning: CameraSwitchWarningSchema.optional(),
9018
9033
  /** Current state. Meaningless when `available` is false — read it as `true`. */
9019
9034
  enabled: boolean(),
9020
9035
  authority: CameraSwitchAuthoritySchema
@@ -27216,6 +27231,19 @@ _enum([
27216
27231
  "uid-missing"
27217
27232
  ]);
27218
27233
  _enum(["deferred", "final"]);
27234
+ /** The camera's / provider's own words. Kept verbatim, never parsed. */
27235
+ var CLIP_STILL_REASON_HEADER = "x-camstack-reason";
27236
+ /** One {@link ClipStillRefusalCodeSchema} token, alone. */
27237
+ var CLIP_STILL_REASON_CODE_HEADER = "x-camstack-reason-code";
27238
+ /**
27239
+ * The clip STREAM route's own statement of what it is (D597): the value is
27240
+ * `forward-only`. A producer writes it on the 200; a consumer that dials a
27241
+ * URL and does not read it back refuses to play, because a progressive file
27242
+ * through a forward-only feeder looks like it worked until the first seek.
27243
+ * Named here because BOTH the provider and the broker spell it, and two
27244
+ * copies of a header name is how one of them stops being checked.
27245
+ */
27246
+ var CLIP_STREAM_TRANSPORT_HEADER = "x-camstack-clip-transport";
27219
27247
  var ClipSchema = object({
27220
27248
  /** Opaque, provider-namespaced id. The default provider encodes the time
27221
27249
  * window so `getClipPlayback` is self-contained (no event re-query). */
@@ -27483,6 +27511,82 @@ var ClipBytesSchema = object({
27483
27511
  */
27484
27512
  durationMs: number().positive().optional()
27485
27513
  });
27514
+ /**
27515
+ * Where a clip's STREAM can be dialled (D597) — the answer to
27516
+ * {@link videoclipsCapability.methods.dialClipStream}.
27517
+ *
27518
+ * `url` is plain `http://` on the provider's own token-gated listener, one
27519
+ * shot, short-lived. It is NOT the hub-proxied `/addon/<id>/clip-stream/…`
27520
+ * path: that plane takes only a user credential, which an addon does not
27521
+ * hold, and the framework offers no addon→addon byte transport — the one
27522
+ * precedent is the broker's own restream URLs (`getStreamWithCodec`), which
27523
+ * a consumer dials directly, and this is that precedent one addon over.
27524
+ */
27525
+ /**
27526
+ * The audio a clip stream can be asked for, and the audio it carries.
27527
+ *
27528
+ * The camera stores AAC and no WebRTC session speaks it, so a stream that
27529
+ * carries sound carries it TRANSCODED, muxed as a second track beside the
27530
+ * video by the one ffmpeg the provider already runs (D600). `opus` is
27531
+ * 48 kHz mono, `pcmu` is 8 kHz µ-law — the two codecs a broker session
27532
+ * negotiates — and `none` is a stream asked for, or served, without sound.
27533
+ */
27534
+ var ClipStreamAudioSchema = _enum([
27535
+ "opus",
27536
+ "pcmu",
27537
+ "none"
27538
+ ]);
27539
+ /**
27540
+ * Why a stream that was ASKED for sound is not carrying it (D600).
27541
+ *
27542
+ * Only ever set beside `servedAudio: 'none'` after a non-`none` ask. Absent
27543
+ * means the ask was honoured, or there was no ask.
27544
+ *
27545
+ * - `not-requested` — the caller asked for `none`.
27546
+ * - `unsupported-ask` — the provider cannot produce that codec.
27547
+ *
27548
+ * Whether the RECORDING has sound at all is not knowable here: the camera
27549
+ * declares no audio track before its first frame arrives. That answer is in
27550
+ * the stream itself — an fMP4 with no audio track — and the broker reads it
27551
+ * there. A dial that says `opus` promises the codec, never the content.
27552
+ */
27553
+ var ClipStreamAudioReasonSchema = _enum(["not-requested", "unsupported-ask"]);
27554
+ var ClipStreamDialSchema = object({
27555
+ url: string().min(1),
27556
+ /** After this the token is gone and the URL answers 404 `dial-expired`. */
27557
+ expiresAtMs: number(),
27558
+ /** What the stream IS — a consumer that cannot honour it must not dial. */
27559
+ transport: literal("forward-only"),
27560
+ /**
27561
+ * Which twin the stream ACTUALLY carries — not what was asked for.
27562
+ *
27563
+ * The stream serves every profile (D599), and a recording whose main twin
27564
+ * does not exist is streamed as its sub copy, which this field reports as
27565
+ * `low`. That is the whole reason the dial no longer refuses `high`:
27566
+ * stating what was served is what makes accepting honest, where a silent
27567
+ * substitution would be the 33x lie D576 forbids. Stated rather than
27568
+ * assumed, the way {@link ClipPlaybackSchema.served} is (D549 15).
27569
+ */
27570
+ served: CamProfileSchema,
27571
+ /**
27572
+ * Which audio the stream will ACTUALLY carry — `served`'s companion for
27573
+ * sound, and the same reasoning (D599, D600).
27574
+ *
27575
+ * The broker asks for the codec its WebRTC session negotiated, and the
27576
+ * provider either muxes that codec or carries none. Stating it is what
27577
+ * lets the broker wire the matching sink before the first byte, and what
27578
+ * keeps a session from being handed a codec it cannot send — the audio
27579
+ * shape of the substitution `served` exists to prevent.
27580
+ *
27581
+ * It is a promise about the CODEC, not about the content: a recording with
27582
+ * no microphone track answers `opus` here and then arrives with no audio
27583
+ * track at all. That second answer is in the stream, and the broker reads
27584
+ * it from the `moov`.
27585
+ */
27586
+ servedAudio: ClipStreamAudioSchema,
27587
+ /** Why `servedAudio` is `none` although sound was asked for. */
27588
+ audioReason: ClipStreamAudioReasonSchema.optional()
27589
+ });
27486
27590
  var ClipSourceAvailabilitySchema = object({
27487
27591
  state: _enum([
27488
27592
  "ok",
@@ -27733,6 +27837,44 @@ var videoclipsCapability = {
27733
27837
  }), ClipBytesSchema, {
27734
27838
  kind: "query",
27735
27839
  auth: "protected"
27840
+ }),
27841
+ /**
27842
+ * Where this clip's STREAM can be dialled (D597) — the forward-only
27843
+ * fMP4 the provider writes from the first muxed byte, for the broker to
27844
+ * play through the same WebRTC session as recorded footage, with the
27845
+ * first frame at the first fragment instead of after the last byte.
27846
+ *
27847
+ * Nothing is fetched here: the answer is a one-shot URL on the
27848
+ * provider's own listener, and the camera is touched when it is dialled.
27849
+ * The gates the file path runs (`readClipBytes`) run on the dial too —
27850
+ * the id, the row, a clip still being written — and refuse in the same
27851
+ * vocabulary, THROWN with `clipExportFailure(<token>, <prose>)`. Every
27852
+ * profile is served (D599) and the answer states which twin it carries;
27853
+ * `high` is not refused. Optional on the provider for the same reason
27854
+ * `readClipBytes` is: a source with no camera socket behind it (the
27855
+ * recorder's analytics window, a HomeKit tee) has no stream.
27856
+ */
27857
+ dialClipStream: optionalMethod(object({
27858
+ deviceId: number(),
27859
+ clipId: string().min(1),
27860
+ /** WHICH provider holds the camera — see `readClipBytes.provider`. */
27861
+ provider: string().min(1),
27862
+ /** Which twin — `high` → the main file, everything else the sub (D599). */
27863
+ profile: CamProfileSchema.optional(),
27864
+ /**
27865
+ * Which audio codec the caller's session negotiated, so the provider
27866
+ * can mux it (D600). The ask travels on the DIAL because the mux is
27867
+ * spawned once, before the first byte, and cannot gain a track later.
27868
+ *
27869
+ * ABSENT IS `none`, never a guess: a caller that does not state an
27870
+ * ask is served the video-only stream that shipped first, so a broker
27871
+ * older than this field keeps working unchanged (D382 — an unstated
27872
+ * ask is zero).
27873
+ */
27874
+ audio: ClipStreamAudioSchema.optional()
27875
+ }), ClipStreamDialSchema, {
27876
+ kind: "query",
27877
+ auth: "protected"
27736
27878
  })
27737
27879
  }
27738
27880
  };
@@ -36391,6 +36533,1329 @@ function deriveBatteryPresence(input) {
36391
36533
  DeviceType.Cover, DeviceType.Valve, DeviceType.Humidifier, DeviceType.WaterHeater, DeviceType.Camera, DeviceType.Hub, DeviceType.Switch, DeviceType.Siren, DeviceType.Light, DeviceType.Fan, DeviceType.Sensor, DeviceType.Thermostat, DeviceType.Climate, DeviceType.Button, DeviceType.EventEmitter, DeviceType.Update, DeviceType.Generic, DeviceType.Notifier, DeviceType.Script, DeviceType.Automation, DeviceType.Lock, DeviceType.MediaPlayer, DeviceType.AlarmPanel, DeviceType.Control, DeviceType.Presence, DeviceType.Weather, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.Container, DeviceType.Image, DeviceType.PetFeeder;
36392
36534
  new Set(Object.values(DeviceType));
36393
36535
  DeviceFeature.BatteryOperated;
36536
+ /**
36537
+ * The vocabulary, in the order a picker offers it.
36538
+ *
36539
+ * Adding a key here is not enough to make it pickable: both glyph tables must
36540
+ * gain it too, and their tests fail until they do. That is the intended
36541
+ * friction — it is the only thing that keeps the two surfaces honest.
36542
+ */
36543
+ var DISPLAY_ICON_VOCABULARY = [
36544
+ {
36545
+ key: "camera",
36546
+ group: "device",
36547
+ synonyms: [
36548
+ "telecamera",
36549
+ "videocamera",
36550
+ "camera",
36551
+ "cam"
36552
+ ]
36553
+ },
36554
+ {
36555
+ key: "network",
36556
+ group: "device",
36557
+ synonyms: [
36558
+ "rete",
36559
+ "network",
36560
+ "lan"
36561
+ ]
36562
+ },
36563
+ {
36564
+ key: "toggle-left",
36565
+ group: "device",
36566
+ synonyms: [
36567
+ "interruttore",
36568
+ "switch",
36569
+ "toggle"
36570
+ ]
36571
+ },
36572
+ {
36573
+ key: "toggle-right",
36574
+ group: "device",
36575
+ synonyms: [
36576
+ "interruttore",
36577
+ "switch",
36578
+ "toggle",
36579
+ "acceso"
36580
+ ]
36581
+ },
36582
+ {
36583
+ key: "circle-dot",
36584
+ group: "device",
36585
+ synonyms: [
36586
+ "pulsante",
36587
+ "bottone",
36588
+ "button",
36589
+ "dot"
36590
+ ]
36591
+ },
36592
+ {
36593
+ key: "refresh-cw",
36594
+ group: "device",
36595
+ synonyms: [
36596
+ "aggiorna",
36597
+ "ricarica",
36598
+ "refresh",
36599
+ "reload",
36600
+ "ciclo"
36601
+ ]
36602
+ },
36603
+ {
36604
+ key: "box",
36605
+ group: "device",
36606
+ synonyms: [
36607
+ "scatola",
36608
+ "box",
36609
+ "contenitore"
36610
+ ]
36611
+ },
36612
+ {
36613
+ key: "scroll-text",
36614
+ group: "device",
36615
+ synonyms: [
36616
+ "registro",
36617
+ "log",
36618
+ "testo"
36619
+ ]
36620
+ },
36621
+ {
36622
+ key: "workflow",
36623
+ group: "device",
36624
+ synonyms: [
36625
+ "automazione",
36626
+ "flusso",
36627
+ "workflow",
36628
+ "scenario"
36629
+ ]
36630
+ },
36631
+ {
36632
+ key: "lock",
36633
+ group: "device",
36634
+ synonyms: [
36635
+ "serratura",
36636
+ "chiave",
36637
+ "lucchetto",
36638
+ "chiuso",
36639
+ "locked"
36640
+ ]
36641
+ },
36642
+ {
36643
+ key: "lock-open",
36644
+ group: "device",
36645
+ synonyms: [
36646
+ "serratura",
36647
+ "aperta",
36648
+ "sbloccato",
36649
+ "unlocked"
36650
+ ]
36651
+ },
36652
+ {
36653
+ key: "blinds",
36654
+ group: "device",
36655
+ synonyms: [
36656
+ "tapparella",
36657
+ "persiana",
36658
+ "serranda",
36659
+ "avvolgibile",
36660
+ "shutter",
36661
+ "blind",
36662
+ "veneziana"
36663
+ ]
36664
+ },
36665
+ {
36666
+ key: "air-vent",
36667
+ group: "device",
36668
+ synonyms: [
36669
+ "bocchetta",
36670
+ "aria",
36671
+ "ventilazione",
36672
+ "condizionatore",
36673
+ "vent"
36674
+ ]
36675
+ },
36676
+ {
36677
+ key: "monitor-play",
36678
+ group: "device",
36679
+ synonyms: [
36680
+ "schermo",
36681
+ "riproduzione",
36682
+ "player",
36683
+ "display"
36684
+ ]
36685
+ },
36686
+ {
36687
+ key: "sliders-horizontal",
36688
+ group: "device",
36689
+ synonyms: [
36690
+ "regolazione",
36691
+ "cursori",
36692
+ "impostazioni",
36693
+ "slider"
36694
+ ]
36695
+ },
36696
+ {
36697
+ key: "map-pin",
36698
+ group: "device",
36699
+ synonyms: [
36700
+ "posizione",
36701
+ "luogo",
36702
+ "mappa",
36703
+ "pin"
36704
+ ]
36705
+ },
36706
+ {
36707
+ key: "bot",
36708
+ group: "device",
36709
+ synonyms: [
36710
+ "robot",
36711
+ "aspirapolvere",
36712
+ "bot"
36713
+ ]
36714
+ },
36715
+ {
36716
+ key: "tractor",
36717
+ group: "device",
36718
+ synonyms: [
36719
+ "trattore",
36720
+ "tosaerba",
36721
+ "giardino"
36722
+ ]
36723
+ },
36724
+ {
36725
+ key: "image",
36726
+ group: "device",
36727
+ synonyms: [
36728
+ "immagine",
36729
+ "foto",
36730
+ "snapshot"
36731
+ ]
36732
+ },
36733
+ {
36734
+ key: "bone",
36735
+ group: "device",
36736
+ synonyms: ["osso", "cane"]
36737
+ },
36738
+ {
36739
+ key: "door-closed",
36740
+ group: "device",
36741
+ synonyms: [
36742
+ "porta",
36743
+ "chiusa",
36744
+ "contatto"
36745
+ ]
36746
+ },
36747
+ {
36748
+ key: "door-open",
36749
+ group: "device",
36750
+ synonyms: [
36751
+ "porta",
36752
+ "aperta",
36753
+ "contatto",
36754
+ "ingresso",
36755
+ "uscita"
36756
+ ]
36757
+ },
36758
+ {
36759
+ key: "crosshair",
36760
+ group: "device",
36761
+ synonyms: [
36762
+ "mirino",
36763
+ "puntamento",
36764
+ "centro"
36765
+ ]
36766
+ },
36767
+ {
36768
+ key: "eye",
36769
+ group: "device",
36770
+ synonyms: [
36771
+ "occhio",
36772
+ "visibile",
36773
+ "visto"
36774
+ ]
36775
+ },
36776
+ {
36777
+ key: "eye-off",
36778
+ group: "device",
36779
+ synonyms: [
36780
+ "privacy",
36781
+ "nascosto",
36782
+ "oscurato",
36783
+ "mascherato",
36784
+ "invisibile"
36785
+ ]
36786
+ },
36787
+ {
36788
+ key: "smartphone",
36789
+ group: "device",
36790
+ synonyms: [
36791
+ "telefono",
36792
+ "cellulare",
36793
+ "smartphone"
36794
+ ]
36795
+ },
36796
+ {
36797
+ key: "phone",
36798
+ group: "device",
36799
+ synonyms: ["telefono", "chiamata"]
36800
+ },
36801
+ {
36802
+ key: "tablet",
36803
+ group: "device",
36804
+ synonyms: ["tablet", "ipad"]
36805
+ },
36806
+ {
36807
+ key: "laptop",
36808
+ group: "device",
36809
+ synonyms: [
36810
+ "portatile",
36811
+ "laptop",
36812
+ "notebook"
36813
+ ]
36814
+ },
36815
+ {
36816
+ key: "monitor",
36817
+ group: "device",
36818
+ synonyms: ["monitor", "schermo"]
36819
+ },
36820
+ {
36821
+ key: "tv",
36822
+ group: "device",
36823
+ synonyms: ["televisore", "tv"]
36824
+ },
36825
+ {
36826
+ key: "speaker",
36827
+ group: "device",
36828
+ synonyms: [
36829
+ "altoparlante",
36830
+ "cassa",
36831
+ "speaker"
36832
+ ]
36833
+ },
36834
+ {
36835
+ key: "printer",
36836
+ group: "device",
36837
+ synonyms: ["stampante"]
36838
+ },
36839
+ {
36840
+ key: "projector",
36841
+ group: "device",
36842
+ synonyms: ["proiettore"]
36843
+ },
36844
+ {
36845
+ key: "gamepad-2",
36846
+ group: "device",
36847
+ synonyms: [
36848
+ "console",
36849
+ "gioco",
36850
+ "joystick"
36851
+ ]
36852
+ },
36853
+ {
36854
+ key: "radio",
36855
+ group: "device",
36856
+ synonyms: ["radio"]
36857
+ },
36858
+ {
36859
+ key: "router",
36860
+ group: "device",
36861
+ synonyms: ["router", "modem"]
36862
+ },
36863
+ {
36864
+ key: "bluetooth",
36865
+ group: "device",
36866
+ synonyms: ["bluetooth"]
36867
+ },
36868
+ {
36869
+ key: "cpu",
36870
+ group: "device",
36871
+ synonyms: [
36872
+ "processore",
36873
+ "cpu",
36874
+ "chip",
36875
+ "dispositivo"
36876
+ ]
36877
+ },
36878
+ {
36879
+ key: "hard-drive",
36880
+ group: "device",
36881
+ synonyms: [
36882
+ "disco",
36883
+ "hdd",
36884
+ "archiviazione",
36885
+ "storage"
36886
+ ]
36887
+ },
36888
+ {
36889
+ key: "server",
36890
+ group: "device",
36891
+ synonyms: ["server", "nas"]
36892
+ },
36893
+ {
36894
+ key: "mic",
36895
+ group: "device",
36896
+ synonyms: ["microfono", "audio"]
36897
+ },
36898
+ {
36899
+ key: "mic-off",
36900
+ group: "device",
36901
+ synonyms: [
36902
+ "microfono",
36903
+ "spento",
36904
+ "muto"
36905
+ ]
36906
+ },
36907
+ {
36908
+ key: "video",
36909
+ group: "device",
36910
+ synonyms: ["video"]
36911
+ },
36912
+ {
36913
+ key: "video-off",
36914
+ group: "device",
36915
+ synonyms: ["video", "spento"]
36916
+ },
36917
+ {
36918
+ key: "music",
36919
+ group: "device",
36920
+ synonyms: ["musica"]
36921
+ },
36922
+ {
36923
+ key: "plug",
36924
+ group: "device",
36925
+ synonyms: [
36926
+ "presa",
36927
+ "spina",
36928
+ "plug"
36929
+ ]
36930
+ },
36931
+ {
36932
+ key: "plug-zap",
36933
+ group: "device",
36934
+ synonyms: ["presa", "alimentata"]
36935
+ },
36936
+ {
36937
+ key: "power",
36938
+ group: "device",
36939
+ synonyms: [
36940
+ "accensione",
36941
+ "alimentazione",
36942
+ "power"
36943
+ ]
36944
+ },
36945
+ {
36946
+ key: "power-off",
36947
+ group: "device",
36948
+ synonyms: ["spegnimento", "spento"]
36949
+ },
36950
+ {
36951
+ key: "cable",
36952
+ group: "device",
36953
+ synonyms: ["cavo"]
36954
+ },
36955
+ {
36956
+ key: "battery",
36957
+ group: "device",
36958
+ synonyms: ["batteria"]
36959
+ },
36960
+ {
36961
+ key: "battery-charging",
36962
+ group: "device",
36963
+ synonyms: [
36964
+ "batteria",
36965
+ "carica",
36966
+ "ricarica"
36967
+ ]
36968
+ },
36969
+ {
36970
+ key: "battery-full",
36971
+ group: "device",
36972
+ synonyms: [
36973
+ "batteria",
36974
+ "carica",
36975
+ "piena"
36976
+ ]
36977
+ },
36978
+ {
36979
+ key: "battery-low",
36980
+ group: "device",
36981
+ synonyms: ["batteria", "scarica"]
36982
+ },
36983
+ {
36984
+ key: "key",
36985
+ group: "device",
36986
+ synonyms: ["chiave"]
36987
+ },
36988
+ {
36989
+ key: "key-round",
36990
+ group: "device",
36991
+ synonyms: ["chiave", "tonda"]
36992
+ },
36993
+ {
36994
+ key: "mailbox",
36995
+ group: "device",
36996
+ synonyms: [
36997
+ "cassetta",
36998
+ "postale",
36999
+ "posta"
37000
+ ]
37001
+ },
37002
+ {
37003
+ key: "package",
37004
+ group: "device",
37005
+ synonyms: ["pacco", "consegna"]
37006
+ },
37007
+ {
37008
+ key: "shield",
37009
+ group: "device",
37010
+ synonyms: [
37011
+ "scudo",
37012
+ "protezione",
37013
+ "sicurezza",
37014
+ "allarme"
37015
+ ]
37016
+ },
37017
+ {
37018
+ key: "shield-check",
37019
+ group: "device",
37020
+ synonyms: [
37021
+ "protetto",
37022
+ "sicuro",
37023
+ "armato"
37024
+ ]
37025
+ },
37026
+ {
37027
+ key: "shield-off",
37028
+ group: "device",
37029
+ synonyms: [
37030
+ "protezione",
37031
+ "disattivata",
37032
+ "disarmato"
37033
+ ]
37034
+ },
37035
+ {
37036
+ key: "briefcase",
37037
+ group: "device",
37038
+ synonyms: [
37039
+ "ufficio",
37040
+ "lavoro",
37041
+ "valigetta",
37042
+ "studio"
37043
+ ]
37044
+ },
37045
+ {
37046
+ key: "lightbulb",
37047
+ group: "lighting",
37048
+ synonyms: [
37049
+ "luce",
37050
+ "lampadina",
37051
+ "lampada",
37052
+ "light"
37053
+ ]
37054
+ },
37055
+ {
37056
+ key: "lamp",
37057
+ group: "lighting",
37058
+ synonyms: ["lampada", "abatjour"]
37059
+ },
37060
+ {
37061
+ key: "lamp-ceiling",
37062
+ group: "lighting",
37063
+ synonyms: [
37064
+ "plafoniera",
37065
+ "lampadario",
37066
+ "luce",
37067
+ "soffitto"
37068
+ ]
37069
+ },
37070
+ {
37071
+ key: "lamp-desk",
37072
+ group: "lighting",
37073
+ synonyms: [
37074
+ "lampada",
37075
+ "scrivania",
37076
+ "abatjour"
37077
+ ]
37078
+ },
37079
+ {
37080
+ key: "lamp-floor",
37081
+ group: "lighting",
37082
+ synonyms: [
37083
+ "piantana",
37084
+ "lampada",
37085
+ "terra"
37086
+ ]
37087
+ },
37088
+ {
37089
+ key: "flashlight",
37090
+ group: "lighting",
37091
+ synonyms: [
37092
+ "faretto",
37093
+ "torcia",
37094
+ "spot",
37095
+ "faro"
37096
+ ]
37097
+ },
37098
+ {
37099
+ key: "heater",
37100
+ group: "lighting",
37101
+ synonyms: [
37102
+ "riscaldamento",
37103
+ "termosifone",
37104
+ "stufa",
37105
+ "calore"
37106
+ ]
37107
+ },
37108
+ {
37109
+ key: "snowflake",
37110
+ group: "lighting",
37111
+ synonyms: [
37112
+ "freddo",
37113
+ "raffrescamento",
37114
+ "aria",
37115
+ "condizionata",
37116
+ "neve"
37117
+ ]
37118
+ },
37119
+ {
37120
+ key: "thermometer-sun",
37121
+ group: "lighting",
37122
+ synonyms: [
37123
+ "caldo",
37124
+ "temperatura",
37125
+ "alta"
37126
+ ]
37127
+ },
37128
+ {
37129
+ key: "thermometer-snowflake",
37130
+ group: "lighting",
37131
+ synonyms: [
37132
+ "freddo",
37133
+ "temperatura",
37134
+ "bassa"
37135
+ ]
37136
+ },
37137
+ {
37138
+ key: "refrigerator",
37139
+ group: "lighting",
37140
+ synonyms: ["frigorifero", "frigo"]
37141
+ },
37142
+ {
37143
+ key: "microwave",
37144
+ group: "lighting",
37145
+ synonyms: ["microonde", "forno"]
37146
+ },
37147
+ {
37148
+ key: "washing-machine",
37149
+ group: "lighting",
37150
+ synonyms: [
37151
+ "lavatrice",
37152
+ "lavastoviglie",
37153
+ "asciugatrice"
37154
+ ]
37155
+ },
37156
+ {
37157
+ key: "cooking-pot",
37158
+ group: "lighting",
37159
+ synonyms: [
37160
+ "pentola",
37161
+ "cucina",
37162
+ "fornello"
37163
+ ]
37164
+ },
37165
+ {
37166
+ key: "utensils",
37167
+ group: "lighting",
37168
+ synonyms: [
37169
+ "cucina",
37170
+ "posate",
37171
+ "sala",
37172
+ "pranzo"
37173
+ ]
37174
+ },
37175
+ {
37176
+ key: "thermometer",
37177
+ group: "sensing",
37178
+ synonyms: [
37179
+ "temperatura",
37180
+ "termometro",
37181
+ "termostato"
37182
+ ]
37183
+ },
37184
+ {
37185
+ key: "droplets",
37186
+ group: "sensing",
37187
+ synonyms: [
37188
+ "umidita",
37189
+ "acqua",
37190
+ "allagamento",
37191
+ "perdita"
37192
+ ]
37193
+ },
37194
+ {
37195
+ key: "droplet",
37196
+ group: "sensing",
37197
+ synonyms: [
37198
+ "goccia",
37199
+ "acqua",
37200
+ "perdita",
37201
+ "allagamento"
37202
+ ]
37203
+ },
37204
+ {
37205
+ key: "gauge",
37206
+ group: "sensing",
37207
+ synonyms: [
37208
+ "misura",
37209
+ "livello",
37210
+ "pressione",
37211
+ "indicatore"
37212
+ ]
37213
+ },
37214
+ {
37215
+ key: "gauge2",
37216
+ group: "sensing",
37217
+ synonyms: [
37218
+ "misura",
37219
+ "livello",
37220
+ "pressione",
37221
+ "indicatore"
37222
+ ],
37223
+ aliasOf: "gauge"
37224
+ },
37225
+ {
37226
+ key: "sun",
37227
+ group: "sensing",
37228
+ synonyms: [
37229
+ "sole",
37230
+ "luminosita",
37231
+ "giorno",
37232
+ "esterno"
37233
+ ]
37234
+ },
37235
+ {
37236
+ key: "sun-medium",
37237
+ group: "sensing",
37238
+ synonyms: ["sole", "luminosita"]
37239
+ },
37240
+ {
37241
+ key: "sunrise",
37242
+ group: "sensing",
37243
+ synonyms: ["alba"]
37244
+ },
37245
+ {
37246
+ key: "moon",
37247
+ group: "sensing",
37248
+ synonyms: [
37249
+ "notte",
37250
+ "luna",
37251
+ "notturna",
37252
+ "nightvision"
37253
+ ]
37254
+ },
37255
+ {
37256
+ key: "wind",
37257
+ group: "sensing",
37258
+ synonyms: [
37259
+ "vento",
37260
+ "aria",
37261
+ "gas",
37262
+ "monossido",
37263
+ "co"
37264
+ ]
37265
+ },
37266
+ {
37267
+ key: "cloud",
37268
+ group: "sensing",
37269
+ synonyms: ["nuvola", "nuvoloso"]
37270
+ },
37271
+ {
37272
+ key: "cloud-rain",
37273
+ group: "sensing",
37274
+ synonyms: ["pioggia"]
37275
+ },
37276
+ {
37277
+ key: "cloud-sun",
37278
+ group: "sensing",
37279
+ synonyms: [
37280
+ "variabile",
37281
+ "sole",
37282
+ "nuvole"
37283
+ ]
37284
+ },
37285
+ {
37286
+ key: "waves",
37287
+ group: "sensing",
37288
+ synonyms: [
37289
+ "onde",
37290
+ "acqua",
37291
+ "vibrazione"
37292
+ ]
37293
+ },
37294
+ {
37295
+ key: "sprout",
37296
+ group: "sensing",
37297
+ synonyms: [
37298
+ "irrigazione",
37299
+ "pianta",
37300
+ "germoglio",
37301
+ "orto"
37302
+ ]
37303
+ },
37304
+ {
37305
+ key: "leaf",
37306
+ group: "sensing",
37307
+ synonyms: [
37308
+ "foglia",
37309
+ "pianta",
37310
+ "verde"
37311
+ ]
37312
+ },
37313
+ {
37314
+ key: "flower",
37315
+ group: "sensing",
37316
+ synonyms: ["fiore", "pianta"]
37317
+ },
37318
+ {
37319
+ key: "zap",
37320
+ group: "sensing",
37321
+ synonyms: [
37322
+ "energia",
37323
+ "corrente",
37324
+ "consumo",
37325
+ "watt",
37326
+ "elettricita"
37327
+ ]
37328
+ },
37329
+ {
37330
+ key: "flame",
37331
+ group: "sensing",
37332
+ synonyms: [
37333
+ "fiamma",
37334
+ "gas",
37335
+ "fuoco",
37336
+ "incendio"
37337
+ ]
37338
+ },
37339
+ {
37340
+ key: "bell",
37341
+ group: "sensing",
37342
+ synonyms: [
37343
+ "campanello",
37344
+ "suoneria",
37345
+ "notifica",
37346
+ "bell",
37347
+ "chime"
37348
+ ]
37349
+ },
37350
+ {
37351
+ key: "bell-ring",
37352
+ group: "sensing",
37353
+ synonyms: [
37354
+ "campanello",
37355
+ "suona",
37356
+ "doorbell",
37357
+ "notifica"
37358
+ ]
37359
+ },
37360
+ {
37361
+ key: "bell-off",
37362
+ group: "sensing",
37363
+ synonyms: [
37364
+ "silenzioso",
37365
+ "notifiche",
37366
+ "disattivate",
37367
+ "muto"
37368
+ ]
37369
+ },
37370
+ {
37371
+ key: "siren",
37372
+ group: "sensing",
37373
+ synonyms: ["sirena", "allarme"]
37374
+ },
37375
+ {
37376
+ key: "radar",
37377
+ group: "sensing",
37378
+ synonyms: [
37379
+ "movimento",
37380
+ "presenza",
37381
+ "pir",
37382
+ "rilevamento",
37383
+ "radar"
37384
+ ]
37385
+ },
37386
+ {
37387
+ key: "activity",
37388
+ group: "sensing",
37389
+ synonyms: [
37390
+ "attivita",
37391
+ "sensore",
37392
+ "generico"
37393
+ ]
37394
+ },
37395
+ {
37396
+ key: "hash",
37397
+ group: "sensing",
37398
+ synonyms: [
37399
+ "numero",
37400
+ "contatore",
37401
+ "valore"
37402
+ ]
37403
+ },
37404
+ {
37405
+ key: "clock",
37406
+ group: "sensing",
37407
+ synonyms: [
37408
+ "orologio",
37409
+ "ora",
37410
+ "tempo"
37411
+ ]
37412
+ },
37413
+ {
37414
+ key: "timer",
37415
+ group: "sensing",
37416
+ synonyms: [
37417
+ "timer",
37418
+ "conto",
37419
+ "rovescia"
37420
+ ]
37421
+ },
37422
+ {
37423
+ key: "calendar",
37424
+ group: "sensing",
37425
+ synonyms: [
37426
+ "calendario",
37427
+ "data",
37428
+ "pianificazione"
37429
+ ]
37430
+ },
37431
+ {
37432
+ key: "pipette",
37433
+ group: "sensing",
37434
+ synonyms: [
37435
+ "qualita",
37436
+ "aria",
37437
+ "misura",
37438
+ "campione"
37439
+ ]
37440
+ },
37441
+ {
37442
+ key: "fan",
37443
+ group: "sensing",
37444
+ synonyms: [
37445
+ "ventilatore",
37446
+ "ventola",
37447
+ "aria"
37448
+ ]
37449
+ },
37450
+ {
37451
+ key: "bath",
37452
+ group: "sensing",
37453
+ synonyms: [
37454
+ "bagno",
37455
+ "vasca",
37456
+ "doccia"
37457
+ ]
37458
+ },
37459
+ {
37460
+ key: "footprints",
37461
+ group: "sensing",
37462
+ synonyms: [
37463
+ "movimento",
37464
+ "passi",
37465
+ "presenza",
37466
+ "motion"
37467
+ ]
37468
+ },
37469
+ {
37470
+ key: "alarm-smoke",
37471
+ group: "sensing",
37472
+ synonyms: [
37473
+ "fumo",
37474
+ "antincendio",
37475
+ "rilevatore"
37476
+ ]
37477
+ },
37478
+ {
37479
+ key: "shield-alert",
37480
+ group: "sensing",
37481
+ synonyms: [
37482
+ "manomissione",
37483
+ "allarme",
37484
+ "tamper",
37485
+ "avviso"
37486
+ ]
37487
+ },
37488
+ {
37489
+ key: "vibrate",
37490
+ group: "sensing",
37491
+ synonyms: [
37492
+ "vibrazione",
37493
+ "urto",
37494
+ "tamper"
37495
+ ]
37496
+ },
37497
+ {
37498
+ key: "wifi",
37499
+ group: "sensing",
37500
+ synonyms: [
37501
+ "wifi",
37502
+ "rete",
37503
+ "segnale"
37504
+ ]
37505
+ },
37506
+ {
37507
+ key: "wifi-off",
37508
+ group: "sensing",
37509
+ synonyms: [
37510
+ "wifi",
37511
+ "assente",
37512
+ "offline",
37513
+ "disconnesso"
37514
+ ]
37515
+ },
37516
+ {
37517
+ key: "volume-2",
37518
+ group: "sensing",
37519
+ synonyms: [
37520
+ "volume",
37521
+ "audio",
37522
+ "altoparlante",
37523
+ "suono"
37524
+ ]
37525
+ },
37526
+ {
37527
+ key: "volume-x",
37528
+ group: "sensing",
37529
+ synonyms: [
37530
+ "muto",
37531
+ "silenziato",
37532
+ "volume",
37533
+ "spento"
37534
+ ]
37535
+ },
37536
+ {
37537
+ key: "heart",
37538
+ group: "sensing",
37539
+ synonyms: [
37540
+ "cuore",
37541
+ "preferito",
37542
+ "salute"
37543
+ ]
37544
+ },
37545
+ {
37546
+ key: "heart-pulse",
37547
+ group: "sensing",
37548
+ synonyms: [
37549
+ "battito",
37550
+ "salute",
37551
+ "monitoraggio"
37552
+ ]
37553
+ },
37554
+ {
37555
+ key: "star",
37556
+ group: "sensing",
37557
+ synonyms: [
37558
+ "preferito",
37559
+ "stella",
37560
+ "importante"
37561
+ ]
37562
+ },
37563
+ {
37564
+ key: "sparkles",
37565
+ group: "sensing",
37566
+ synonyms: [
37567
+ "automatico",
37568
+ "intelligente",
37569
+ "ai",
37570
+ "scena"
37571
+ ]
37572
+ },
37573
+ {
37574
+ key: "house",
37575
+ group: "place",
37576
+ synonyms: [
37577
+ "casa",
37578
+ "abitazione",
37579
+ "home"
37580
+ ]
37581
+ },
37582
+ {
37583
+ key: "sofa",
37584
+ group: "place",
37585
+ synonyms: [
37586
+ "salone",
37587
+ "soggiorno",
37588
+ "divano",
37589
+ "living"
37590
+ ]
37591
+ },
37592
+ {
37593
+ key: "bed-double",
37594
+ group: "place",
37595
+ synonyms: [
37596
+ "camera",
37597
+ "letto",
37598
+ "matrimoniale"
37599
+ ]
37600
+ },
37601
+ {
37602
+ key: "bed",
37603
+ group: "place",
37604
+ synonyms: [
37605
+ "cameretta",
37606
+ "letto",
37607
+ "singolo"
37608
+ ]
37609
+ },
37610
+ {
37611
+ key: "warehouse",
37612
+ group: "place",
37613
+ synonyms: [
37614
+ "magazzino",
37615
+ "capanno",
37616
+ "deposito",
37617
+ "cantina"
37618
+ ]
37619
+ },
37620
+ {
37621
+ key: "trees",
37622
+ group: "place",
37623
+ synonyms: [
37624
+ "giardino",
37625
+ "alberi",
37626
+ "esterno",
37627
+ "parco"
37628
+ ]
37629
+ },
37630
+ {
37631
+ key: "tree-pine",
37632
+ group: "place",
37633
+ synonyms: [
37634
+ "albero",
37635
+ "pino",
37636
+ "giardino"
37637
+ ]
37638
+ },
37639
+ {
37640
+ key: "fence",
37641
+ group: "place",
37642
+ synonyms: [
37643
+ "recinto",
37644
+ "cancello",
37645
+ "staccionata",
37646
+ "perimetro"
37647
+ ]
37648
+ },
37649
+ {
37650
+ key: "store",
37651
+ group: "place",
37652
+ synonyms: [
37653
+ "negozio",
37654
+ "ingresso",
37655
+ "vetrina"
37656
+ ]
37657
+ },
37658
+ {
37659
+ key: "building",
37660
+ group: "place",
37661
+ synonyms: ["edificio", "palazzo"]
37662
+ },
37663
+ {
37664
+ key: "building-2",
37665
+ group: "place",
37666
+ synonyms: [
37667
+ "edificio",
37668
+ "uffici",
37669
+ "condominio"
37670
+ ]
37671
+ },
37672
+ {
37673
+ key: "mountain",
37674
+ group: "place",
37675
+ synonyms: [
37676
+ "montagna",
37677
+ "esterno",
37678
+ "panorama"
37679
+ ]
37680
+ },
37681
+ {
37682
+ key: "umbrella",
37683
+ group: "place",
37684
+ synonyms: [
37685
+ "tenda",
37686
+ "markise",
37687
+ "ombrellone",
37688
+ "pergola",
37689
+ "veranda"
37690
+ ]
37691
+ },
37692
+ {
37693
+ key: "dumbbell",
37694
+ group: "place",
37695
+ synonyms: ["palestra", "attrezzi"]
37696
+ },
37697
+ {
37698
+ key: "wrench",
37699
+ group: "place",
37700
+ synonyms: [
37701
+ "officina",
37702
+ "manutenzione",
37703
+ "attrezzi",
37704
+ "utenze"
37705
+ ]
37706
+ },
37707
+ {
37708
+ key: "hammer",
37709
+ group: "place",
37710
+ synonyms: [
37711
+ "officina",
37712
+ "martello",
37713
+ "lavori"
37714
+ ]
37715
+ },
37716
+ {
37717
+ key: "drill",
37718
+ group: "place",
37719
+ synonyms: [
37720
+ "officina",
37721
+ "trapano",
37722
+ "lavori"
37723
+ ]
37724
+ },
37725
+ {
37726
+ key: "waves-ladder",
37727
+ group: "place",
37728
+ synonyms: ["piscina", "vasca"]
37729
+ },
37730
+ {
37731
+ key: "circle-parking",
37732
+ group: "place",
37733
+ synonyms: [
37734
+ "parcheggio",
37735
+ "posto",
37736
+ "auto",
37737
+ "garage"
37738
+ ]
37739
+ },
37740
+ {
37741
+ key: "route",
37742
+ group: "place",
37743
+ synonyms: [
37744
+ "percorso",
37745
+ "strada",
37746
+ "vialetto",
37747
+ "tragitto"
37748
+ ]
37749
+ },
37750
+ {
37751
+ key: "car",
37752
+ group: "life",
37753
+ synonyms: [
37754
+ "auto",
37755
+ "macchina",
37756
+ "veicolo",
37757
+ "parcheggio"
37758
+ ]
37759
+ },
37760
+ {
37761
+ key: "bike",
37762
+ group: "life",
37763
+ synonyms: [
37764
+ "bicicletta",
37765
+ "bici",
37766
+ "moto"
37767
+ ]
37768
+ },
37769
+ {
37770
+ key: "bus",
37771
+ group: "life",
37772
+ synonyms: ["autobus", "pullman"]
37773
+ },
37774
+ {
37775
+ key: "truck",
37776
+ group: "life",
37777
+ synonyms: [
37778
+ "camion",
37779
+ "furgone",
37780
+ "consegna"
37781
+ ]
37782
+ },
37783
+ {
37784
+ key: "plane",
37785
+ group: "life",
37786
+ synonyms: ["aereo"]
37787
+ },
37788
+ {
37789
+ key: "train-front",
37790
+ group: "life",
37791
+ synonyms: ["treno"]
37792
+ },
37793
+ {
37794
+ key: "sailboat",
37795
+ group: "life",
37796
+ synonyms: ["barca", "imbarcazione"]
37797
+ },
37798
+ {
37799
+ key: "dog",
37800
+ group: "life",
37801
+ synonyms: ["cane", "animale"]
37802
+ },
37803
+ {
37804
+ key: "cat",
37805
+ group: "life",
37806
+ synonyms: ["gatto", "animale"]
37807
+ },
37808
+ {
37809
+ key: "bird",
37810
+ group: "life",
37811
+ synonyms: ["uccello", "animale"]
37812
+ },
37813
+ {
37814
+ key: "paw-print",
37815
+ group: "life",
37816
+ synonyms: [
37817
+ "animale",
37818
+ "zampa",
37819
+ "pet"
37820
+ ]
37821
+ },
37822
+ {
37823
+ key: "baby",
37824
+ group: "life",
37825
+ synonyms: [
37826
+ "neonato",
37827
+ "bimbo",
37828
+ "cameretta",
37829
+ "babymonitor"
37830
+ ]
37831
+ },
37832
+ {
37833
+ key: "user",
37834
+ group: "life",
37835
+ synonyms: ["persona", "utente"]
37836
+ },
37837
+ {
37838
+ key: "users",
37839
+ group: "life",
37840
+ synonyms: [
37841
+ "persone",
37842
+ "gruppo",
37843
+ "famiglia"
37844
+ ]
37845
+ },
37846
+ {
37847
+ key: "person-standing",
37848
+ group: "life",
37849
+ synonyms: [
37850
+ "persona",
37851
+ "piedi",
37852
+ "presenza"
37853
+ ]
37854
+ }
37855
+ ];
37856
+ DISPLAY_ICON_VOCABULARY.map((e) => e.key);
37857
+ DISPLAY_ICON_VOCABULARY.filter((e) => e.aliasOf === void 0).map((e) => e.key);
37858
+ new Map(DISPLAY_ICON_VOCABULARY.map((e) => [e.key, e]));
36394
37859
  Object.freeze({
36395
37860
  "accessories.getStatus": {
36396
37861
  capName: "accessories",
@@ -43184,6 +44649,12 @@ Object.freeze({
43184
44649
  addonId: null,
43185
44650
  access: "view"
43186
44651
  },
44652
+ "videoclips.dialClipStream": {
44653
+ capName: "videoclips",
44654
+ capScope: "device",
44655
+ addonId: null,
44656
+ access: "view"
44657
+ },
43187
44658
  "videoclips.getClipPlayback": {
43188
44659
  capName: "videoclips",
43189
44660
  capScope: "device",
@@ -45223,6 +46694,11 @@ Object.freeze({
45223
46694
  form: "single",
45224
46695
  optional: false
45225
46696
  }],
46697
+ "videoclips.dialClipStream": [{
46698
+ name: "deviceId",
46699
+ form: "single",
46700
+ optional: false
46701
+ }],
45226
46702
  "videoclips.getClipPlayback": [{
45227
46703
  name: "deviceId",
45228
46704
  form: "single",
@@ -47002,4 +48478,4 @@ function enumerateInferenceDevices(hw) {
47002
48478
  return out;
47003
48479
  }
47004
48480
  //#endregion
47005
- export { enumerateInferenceDevices as $, CAM_PROFILE_ORDER as $t, RecordingConfigSchema as A, recordingSignalCapability as At, cameraStreamsCapability as B, streamBrokerCapability as Bt, NativeLeaseAdmissionSchema as C, number as Cn, pickDetailCropConvention as Ct, RATE_CONTROL_RELAXED as D, string as Dn, rankStreams as Dt, PoolMemoryWatchdog as E, record as En, pipelineRunnerCapability as Et, addonWidgetsSourceCapability as F, resolvePoolMemoryPolicy as Ft, declareLogChannel as G, errMsg as Gt, clipExportFailureOf as H, supportedRuntimes as Ht, audioAnalysisCapability as I, resolveRecordingProfiles as It, deriveDetailCropRect as J, buildFfmpegArgs as Jt, defaultDeviceFor as K, AUDIO_PRESETS as Kt, audioAnalyzerCapability as L, runtimeDevices as Lt, RingBuffer as M, resolveCreateExportSubject as Mt, VISIT_MERGE_GAP_MS as N, resolveEgressDecodeHwAccel as Nt, RATE_CONTROL_TIGHT as O, union as On, recordingCapability as Ot, YAMNET_TO_MACRO as P, resolveLocationMode as Pt, egressTransportFromRequest as Q, BaseAddon as Qt, audioKindId as R, storageEvictableCapability as Rt, MOTION_CLOSE_AFTER_MS as S, literal as Sn, pickClusterStepSettings as St, OpsLogEntrySchema as T, preprocess as Tn, pipelineExecutorCapability as Tt, createHwAccelCache as U, videoclipsCapability as Ut, clipExportFailure as V, stripRetiredBandPreBufferSec as Vt, createLogChannelsProvider as W, webrtcSessionCapability as Wt, detectionPipelineCapability as X, isSoftwareDecode as Xt, deriveRecordingMode as Y, invocationFromEncodeProfile as Yt, egressTranscodeSharingKey as Z, BOOT_RECOVERY_BACKOFF_MS as Zt, EncodeProfileSchema as _, _enum as _n, modeMayWrite as _t, COCO_80_LABELS as a, customAction as an, failureContributionCapability as at, G711_SCALE_CORRECTION_DB as b, discriminatedUnion as bn, parseProcStatus as bt, DEFAULT_CLUSTER_STEP_MODELS as c, hydrateSchema as cn, inferModelProvider as ct, DEFAULT_EVENTS_BAND_BUFFER_SEC as d, makeSourceBrokerId as dn, logChannelsCapability as dt, CamProfileSchema as en, evaluateSensorEdge as et, DEFAULT_FIRST_SIGHTING_FRESHNESS_MS as f, nodePin as fn, mapAudioLabelToMacro as ft, EVENT_PAD_MS as g, sleep as gn, migrateLegacyDeviceSignalConfig as gt, EVENT_OWNER_TYPES as h, selectAssignedProfileSlots as hn, mayWriteToLocation as ht, BatteryStatusSchema as i, createEvent as in, exportSubjectOf as it, RecordingSignalStatusSchema as j, resolveClusterStepModelId as jt, RECORDING_EXPORT_MAX_READ_BYTES as k, EventCategory as kn, recordingExportCapability as kt, DEFAULT_CLUSTER_STEP_SETTINGS as l, isEvent as ln, isFirstLevelMacroClass as lt, DEVICE_BACKEND_TO_FORMAT as m, parseProfileBrokerId as mn, mayReadLocation as mt, AUDIO_BACKEND_CHOICES as n, DeviceType as nn, evictionPolicyForMode as nt, COCO_TO_MACRO as o, defineCustomActions as on, gbToBytes as ot, DEFAULT_NATIVE_LEASE_SETTINGS as p, parseJsonUnknown as pn, maskUrlCredentials as pt, deriveBatteryPresence as q, Fmp4BoxSplitter as qt, AUDIO_MACRO_LABELS as r, audioChunkBytesPerSample as rn, evictionPolicyOfLocation as rt, DEFAULT_AUDIO_ANALYZER_CONFIG as s, expandAudioChunkToF32le as sn, hfModelUrl as st, APPLE_SA_TO_MACRO as t, DeviceFeature as tn, evaluateZoneRules as tt, DEFAULT_DETAIL_CROP_CONVENTION as u, makeProfileBrokerId as un, loadContributionCapability as ut, ExportRecordSchema as v, array as vn, motionDetectionCapability as vt, NativeLeaseSettingsSchema as w, object as wn, pickNativeLeaseOverride as wt, HF_BASE_URL as x, lazy as xn, pickClusterStepModels as xt, FailureCounters as y, boolean as yn, overlayClusterStepSettings as yt, batteryCapability as z, storageOccupancyCapability as zt };
48481
+ export { detectionPipelineCapability as $, isSoftwareDecode as $t, RATE_CONTROL_RELAXED as A, string as An, rankStreams as At, audioAnalyzerCapability as B, runtimeDevices as Bt, G711_SCALE_CORRECTION_DB as C, discriminatedUnion as Cn, parseProcStatus as Ct, NativeLeaseSettingsSchema as D, object as Dn, pickNativeLeaseOverride as Dt, NativeLeaseAdmissionSchema as E, number as En, pickDetailCropConvention as Et, RingBuffer as F, resolveCreateExportSubject as Ft, clipExportFailureOf as G, supportedRuntimes as Gt, batteryCapability as H, storageOccupancyCapability as Ht, VISIT_MERGE_GAP_MS as I, resolveEgressDecodeHwAccel as It, declareLogChannel as J, errMsg as Jt, createHwAccelCache as K, videoclipsCapability as Kt, YAMNET_TO_MACRO as L, resolveLocationMode as Lt, RECORDING_EXPORT_MAX_READ_BYTES as M, EventCategory as Mn, recordingExportCapability as Mt, RecordingConfigSchema as N, recordingSignalCapability as Nt, OpsLogEntrySchema as O, preprocess as On, pipelineExecutorCapability as Ot, RecordingSignalStatusSchema as P, resolveClusterStepModelId as Pt, deriveRecordingMode as Q, invocationFromEncodeProfile as Qt, addonWidgetsSourceCapability as R, resolvePoolMemoryPolicy as Rt, FailureCounters as S, boolean as Sn, overlayClusterStepSettings as St, MOTION_CLOSE_AFTER_MS as T, literal as Tn, pickClusterStepSettings as Tt, cameraStreamsCapability as U, streamBrokerCapability as Ut, audioKindId as V, storageEvictableCapability as Vt, clipExportFailure as W, stripRetiredBandPreBufferSec as Wt, deriveBatteryPresence as X, Fmp4BoxSplitter as Xt, defaultDeviceFor as Y, AUDIO_PRESETS as Yt, deriveDetailCropRect as Z, buildFfmpegArgs as Zt, DEVICE_BACKEND_TO_FORMAT as _, parseProfileBrokerId as _n, mayReadLocation as _t, CLIP_STILL_REASON_CODE_HEADER as a, DeviceType as an, evictionPolicyForMode as at, EncodeProfileSchema as b, _enum as bn, modeMayWrite as bt, COCO_80_LABELS as c, customAction as cn, failureContributionCapability as ct, DEFAULT_CLUSTER_STEP_MODELS as d, hydrateSchema as dn, inferModelProvider as dt, BOOT_RECOVERY_BACKOFF_MS as en, egressTranscodeSharingKey as et, DEFAULT_CLUSTER_STEP_SETTINGS as f, isEvent as fn, isFirstLevelMacroClass as ft, DEFAULT_NATIVE_LEASE_SETTINGS as g, parseJsonUnknown as gn, maskUrlCredentials as gt, DEFAULT_FIRST_SIGHTING_FRESHNESS_MS as h, nodePin as hn, mapAudioLabelToMacro as ht, BatteryStatusSchema as i, DeviceFeature as in, evaluateZoneRules as it, RATE_CONTROL_TIGHT as j, union as jn, recordingCapability as jt, PoolMemoryWatchdog as k, record as kn, pipelineRunnerCapability as kt, COCO_TO_MACRO as l, defineCustomActions as ln, gbToBytes as lt, DEFAULT_EVENTS_BAND_BUFFER_SEC as m, makeSourceBrokerId as mn, logChannelsCapability as mt, AUDIO_BACKEND_CHOICES as n, CAM_PROFILE_ORDER as nn, enumerateInferenceDevices as nt, CLIP_STILL_REASON_HEADER as o, audioChunkBytesPerSample as on, evictionPolicyOfLocation as ot, DEFAULT_DETAIL_CROP_CONVENTION as p, makeProfileBrokerId as pn, loadContributionCapability as pt, createLogChannelsProvider as q, webrtcSessionCapability as qt, AUDIO_MACRO_LABELS as r, CamProfileSchema as rn, evaluateSensorEdge as rt, CLIP_STREAM_TRANSPORT_HEADER as s, createEvent as sn, exportSubjectOf as st, APPLE_SA_TO_MACRO as t, BaseAddon as tn, egressTransportFromRequest as tt, DEFAULT_AUDIO_ANALYZER_CONFIG as u, expandAudioChunkToF32le as un, hfModelUrl as ut, EVENT_OWNER_TYPES as v, selectAssignedProfileSlots as vn, mayWriteToLocation as vt, HF_BASE_URL as w, lazy as wn, pickClusterStepModels as wt, ExportRecordSchema as x, array as xn, motionDetectionCapability as xt, EVENT_PAD_MS as y, sleep as yn, migrateLegacyDeviceSignalConfig as yt, audioAnalysisCapability as z, resolveRecordingProfiles as zt };