@camstack/addon-admin-ui 1.2.151 → 1.2.153

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 (111) hide show
  1. package/dist/assets/{AddLocationWizard-MuueN1fV.js → AddLocationWizard-POU-h4lC.js} +1 -1
  2. package/dist/assets/{AddonCollectionPage-B88c77fc.js → AddonCollectionPage-_c7aqfTY.js} +1 -1
  3. package/dist/assets/{Addons-DPIlmBU6.js → Addons-B1JQF4gb.js} +1 -1
  4. package/dist/assets/{AdminTabs-CHiVDYyi.js → AdminTabs-CpTKjy3v.js} +1 -1
  5. package/dist/assets/{AiProfiles-B2ES7QNe.js → AiProfiles-DZ9Ow0HR.js} +1 -1
  6. package/dist/assets/{BrokerForm-YbXIix2d.js → BrokerForm-ClNFIGW2.js} +1 -1
  7. package/dist/assets/{Build-Cy-ipCjO.js → Build-Dla0OrwG.js} +1 -1
  8. package/dist/assets/{Capabilities-up9MfNsm.js → Capabilities-M7k-RZWl.js} +1 -1
  9. package/dist/assets/{CapabilityBadges-CBOpwEUk.js → CapabilityBadges-CBc1Ca4t.js} +1 -1
  10. package/dist/assets/{Cluster-SYyZDlTt.js → Cluster-C_dTsHIY.js} +1 -1
  11. package/dist/assets/{Data-BOu0uAGQ.js → Data-DrADfMZC.js} +1 -1
  12. package/dist/assets/{DetectionIntelligence-ZB7_Ahat.js → DetectionIntelligence-QnPJgItV.js} +1 -1
  13. package/dist/assets/{DeviceAggregateSection-BXLj9PQe.js → DeviceAggregateSection-r-vVpuVq.js} +1 -1
  14. package/dist/assets/{DeviceDetail-vm4iWipx.js → DeviceDetail-CodUJS1P.js} +1 -1
  15. package/dist/assets/{Devices-BqYDEhRr.js → Devices-BXh61CPy.js} +1 -1
  16. package/dist/assets/{EmbedPlayerPage-BKzdpFby.js → EmbedPlayerPage-BcO3cVi5.js} +1 -1
  17. package/dist/assets/{Events-BtwVIVAt.js → Events-jBSvPW0i.js} +1 -1
  18. package/dist/assets/{FormBuilder-DGyR0lfg.js → FormBuilder-KnE-MHOY.js} +1 -1
  19. package/dist/assets/{Identity-B7S_I3It.js → Identity-BfukWwzn.js} +1 -1
  20. package/dist/assets/{IntegrationDetail-Q759aEM_.js → IntegrationDetail-DKYyTNAX.js} +1 -1
  21. package/dist/assets/{Integrations-chjRG4pv.js → Integrations-BDtG7b0i.js} +1 -1
  22. package/dist/assets/{Integrations-jWhETxlK.js → Integrations-YJYVfqN6.js} +1 -1
  23. package/dist/assets/{Locations-BuGiSobk.js → Locations-nmHSshK6.js} +1 -1
  24. package/dist/assets/{Logs-pTmysYFz.js → Logs-DsBOOcf1.js} +1 -1
  25. package/dist/assets/{MotionZonesSettings-CKkRlMAv.js → MotionZonesSettings-D2UavUBf.js} +1 -1
  26. package/dist/assets/{MyAccess-nTcJwBBf.js → MyAccess-lt7fhuDE.js} +1 -1
  27. package/dist/assets/{Network-CcipbzhU.js → Network-DL8OmVoI.js} +1 -1
  28. package/dist/assets/{NodeAddonsSettingsPanel-DgcAYZm2.js → NodeAddonsSettingsPanel-BGiMbeFK.js} +1 -1
  29. package/dist/assets/{NodeInferenceDevices-DZzJmvgW.js → NodeInferenceDevices-kXy3hl6a.js} +1 -1
  30. package/dist/assets/{Notifications-BkD0ocTD.js → Notifications-DIk8CGG-.js} +1 -1
  31. package/dist/assets/{Pipeline-DhXbe3q5.js → Pipeline-CVyZTH5E.js} +1 -1
  32. package/dist/assets/{Plates-BK0qgjF4.js → Plates-XWUvNHoY.js} +1 -1
  33. package/dist/assets/{PrivacyMaskSettings-Bp4pQn_7.js → PrivacyMaskSettings-GBuB9bMT.js} +1 -1
  34. package/dist/assets/{ProviderIcon-ZLI2SFou.js → ProviderIcon-CNI4drnz.js} +1 -1
  35. package/dist/assets/{Recordings-C2CokQtL.js → Recordings-D50YdeX2.js} +1 -1
  36. package/dist/assets/{ScanNetworkModal-VLSgX0ut.js → ScanNetworkModal-DSQYVB5-.js} +1 -1
  37. package/dist/assets/{SceneMonitorEditor-sw12s9g0.js → SceneMonitorEditor-CliKadd2.js} +1 -1
  38. package/dist/assets/{Scenes-DMJ7hoKn.js → Scenes-D_2WuJmD.js} +1 -1
  39. package/dist/assets/{Settings-DQiRdou1.js → Settings-CRM_OepW.js} +1 -1
  40. package/dist/assets/{Showroom-aku4uibF.js → Showroom-D4PTTERP.js} +1 -1
  41. package/dist/assets/{StorageLocationsPanel-_36wKryX.js → StorageLocationsPanel-DnZ-Tb-M.js} +1 -1
  42. package/dist/assets/{Terminal-DGfvYVRV.js → Terminal-BCcYOV7X.js} +1 -1
  43. package/dist/assets/{_virtual_mf-localSharedImportMap___mfe_internal__admin_ui_host-DTeU2JtW.js → _virtual_mf-localSharedImportMap___mfe_internal__admin_ui_host-H4A6egtU.js} +1 -1
  44. package/dist/assets/{bell-off-KIVJLHGv.js → bell-off-_uCfwsq_.js} +1 -1
  45. package/dist/assets/{bell-ring-BNS7ML6D.js → bell-ring-M-bbfQBU.js} +1 -1
  46. package/dist/assets/{boxes-BGIKFJUY.js → boxes-DD7B6vWr.js} +1 -1
  47. package/dist/assets/circle-check-big-JbEuda-K.js +1 -0
  48. package/dist/assets/circle-dot-BiSKsHqx.js +1 -0
  49. package/dist/assets/circle-slash-BFJ5arnl.js +1 -0
  50. package/dist/assets/{circle-x-D7wBOuYR.js → circle-x-CsGhZWZ1.js} +1 -1
  51. package/dist/assets/clock-CP-wdltQ.js +1 -0
  52. package/dist/assets/{copy-C1jPcD5o.js → copy-BIhozMgo.js} +1 -1
  53. package/dist/assets/{debounced-invalidate-CFp6c7Ou.js → debounced-invalidate-DGDmoLua.js} +1 -1
  54. package/dist/assets/{dist-Dux6sv5c.js → dist-BBNkFRmf.js} +1 -1
  55. package/dist/assets/dist-S_GbEBCn.js +349 -0
  56. package/dist/assets/{download-BrQcXO_K.js → download-BDzIO8OY.js} +1 -1
  57. package/dist/assets/{face-bbox-DHE4TNaG.js → face-bbox-CGA0mg9Y.js} +1 -1
  58. package/dist/assets/{flame-Bq_M_LcT.js → flame-BYOYZC1n.js} +1 -1
  59. package/dist/assets/{hard-drive-DYyCb3vK.js → hard-drive-90CWkv-h.js} +1 -1
  60. package/dist/assets/{hard-drive-download-iVeHW6KA.js → hard-drive-download-Om-EHrji.js} +1 -1
  61. package/dist/assets/{hostInit-XhZ2Fhri.js → hostInit-ArnQd5Ro.js} +1 -1
  62. package/dist/assets/{index-Da9M5b3O.js → index-DpyYghK5.js} +3 -3
  63. package/dist/assets/{key-round-skaSS3dr.js → key-round-DCbMTVqq.js} +1 -1
  64. package/dist/assets/{layers-CrcdqOZ-.js → layers-CyQMm87X.js} +1 -1
  65. package/dist/assets/{mf-entry-bootstrap-0-b9f0e40b.js → mf-entry-bootstrap-0-b5a58a12.js} +2 -2
  66. package/dist/assets/{pencil-RMyVN5NC.js → pencil-QF3La2Sl.js} +1 -1
  67. package/dist/assets/play-D8PRXtJj.js +1 -0
  68. package/dist/assets/{player-overlays-c7qf4Ptc.js → player-overlays-C7P-BYK6.js} +1 -1
  69. package/dist/assets/plus-DCgFS8Qr.js +1 -0
  70. package/dist/assets/power-CLys8a7n.js +1 -0
  71. package/dist/assets/{radio-DWWOKb3a.js → radio-Dx7yXPbe.js} +1 -1
  72. package/dist/assets/{refresh-cw-b4MH71DW.js → refresh-cw-C39zORZV.js} +1 -1
  73. package/dist/assets/remoteEntry-CUCr4zXw.js +1 -0
  74. package/dist/assets/rotate-ccw-D64HdccI.js +1 -0
  75. package/dist/assets/rotate-cw-CLXt3-FP.js +1 -0
  76. package/dist/assets/{send-DGb1pcgd.js → send-CVOYFzeZ.js} +1 -1
  77. package/dist/assets/{server-D0xpkfcH.js → server-DQLgZ7bE.js} +1 -1
  78. package/dist/assets/{shield-rnJtgC6h.js → shield-AayD-Dai.js} +1 -1
  79. package/dist/assets/{shield-alert-DZI4oKBf.js → shield-alert-B9Y8lmS2.js} +1 -1
  80. package/dist/assets/square-CTn6q5rG.js +1 -0
  81. package/dist/assets/{square-check-big-ytEzhoGg.js → square-check-big-CL2u5bS3.js} +1 -1
  82. package/dist/assets/src-D4J0MlT1.js +67 -0
  83. package/dist/assets/src-DVkz1MkU.js +349 -0
  84. package/dist/assets/{undo-2-BhYxJbrT.js → undo-2-B_3P5GNw.js} +1 -1
  85. package/dist/assets/{use-scenes-feed-mcrSn_b_.js → use-scenes-feed-CtEQ_eXD.js} +1 -1
  86. package/dist/assets/useEventInvalidation-DmM7qYZh.js +1 -0
  87. package/dist/assets/{useNodeUrlSelection-BNfEReDR.js → useNodeUrlSelection-S-4TmE9o.js} +1 -1
  88. package/dist/assets/user-round-CqtpH11x.js +1 -0
  89. package/dist/assets/{video-CTANFXq_.js → video-BeD7NTRZ.js} +1 -1
  90. package/dist/assets/{virtual_mf-REMOTE_ENTRY_ID___mfe_internal__admin_ui_host__remoteEntry-_hash_-B7ZKG1HU.js → virtual_mf-REMOTE_ENTRY_ID___mfe_internal__admin_ui_host__remoteEntry-_hash_-BzqZKccv.js} +2 -2
  91. package/dist/assets/{wifi-Cc_OZqlo.js → wifi-BgJhCz5w.js} +1 -1
  92. package/dist/assets/{zap-B5gepO8N.js → zap-D7GDVAk6.js} +1 -1
  93. package/dist/index.html +5 -5
  94. package/dist/server/addon.js +314 -1
  95. package/package.json +1 -1
  96. package/dist/assets/circle-check-big-DWs4mQe7.js +0 -1
  97. package/dist/assets/circle-dot-Dle8CtRb.js +0 -1
  98. package/dist/assets/circle-slash-CMNlgLPi.js +0 -1
  99. package/dist/assets/clock-Dsqp4-di.js +0 -1
  100. package/dist/assets/dist-BF1DkLP-.js +0 -349
  101. package/dist/assets/play-CIELgSwD.js +0 -1
  102. package/dist/assets/plus-BYSMmwL-.js +0 -1
  103. package/dist/assets/power-BY_IQkKm.js +0 -1
  104. package/dist/assets/remoteEntry-3xGTWb1k.js +0 -1
  105. package/dist/assets/rotate-ccw-C27XNKhO.js +0 -1
  106. package/dist/assets/rotate-cw-ZTV8n4ag.js +0 -1
  107. package/dist/assets/square-ByTmzW_Y.js +0 -1
  108. package/dist/assets/src-BFOQ-hJa.js +0 -67
  109. package/dist/assets/src-DiRf8bOK.js +0 -349
  110. package/dist/assets/useEventInvalidation-D---8iao.js +0 -1
  111. package/dist/assets/user-round-CsuDC_Uc.js +0 -1
@@ -5407,6 +5407,12 @@ Object.fromEntries([
5407
5407
  icon: "move",
5408
5408
  order: 40
5409
5409
  },
5410
+ {
5411
+ id: "navigation",
5412
+ label: "Navigation",
5413
+ icon: "compass",
5414
+ order: 41
5415
+ },
5410
5416
  {
5411
5417
  id: "consumables",
5412
5418
  label: "Consumables",
@@ -26818,6 +26824,203 @@ DeviceType.Camera, method(object({ deviceId: number() }), PtzAutotrackStatusSche
26818
26824
  deviceId: number(),
26819
26825
  status: PtzAutotrackStatusSchema
26820
26826
  });
26827
+ /**
26828
+ * `navigation` — a device-scoped capability that natively expresses the FULL
26829
+ * navigation / action surface of a robot that DRIVES ITSELF and carries an
26830
+ * on-board camera (the Dreame robot-vacuum camera is the first provider).
26831
+ *
26832
+ * Why a NEW cap rather than overloading `ptz`:
26833
+ * - `ptz` moves a *gimbal* on a fixed camera (pan/tilt/zoom of the lens). A
26834
+ * robot vacuum has no gimbal — the whole chassis drives, turns and spins.
26835
+ * The two are different physical models: PTZ is absolute-position + presets,
26836
+ * navigation is momentary drive nudges + discrete robot ACTIONS
26837
+ * (dock / spot-clean / follow-pet / go-to-point / …).
26838
+ * - This cap is the SOURCE OF TRUTH. Two consumers adapt from it rather than
26839
+ * the reverse:
26840
+ * 1. a native CamStack navigation panel (data-driven from `listActions`
26841
+ * / `getOptions`), and
26842
+ * 2. the PTZ surface — a thin adapter mimics `ptz` from `navigation` so a
26843
+ * robot camera shows up in the existing PTZ control path without every
26844
+ * PTZ provider learning about robots. The mapping lives in the adapter,
26845
+ * not here (see the addon design note):
26846
+ * ptz.continuousMove({pan,tilt}) → navigation.move({pan,tilt})
26847
+ * ptz.stop() → navigation.stop()
26848
+ * ptz.goHome() → navigation.runAction('goHome')
26849
+ * ptz.getPresets() → navigation.listActions() (id→preset)
26850
+ * ptz.goToPreset(id) → navigation.runAction(id)
26851
+ *
26852
+ * ## Continuous drive
26853
+ *
26854
+ * `move` is MOMENTARY. Fluid navigation comes from the UI (or the PTZ adapter)
26855
+ * sending `move({pan,tilt})` REPEATEDLY at ~1 Hz while a direction is held, and
26856
+ * one `stop()` on release — exactly like the robot app's remote-drive joystick.
26857
+ * The provider forwards EACH `move` to one drive write; it must NOT debounce or
26858
+ * coalesce them. The UI owns the cadence.
26859
+ *
26860
+ * ## The action dictionary
26861
+ *
26862
+ * The discrete controls (dock / locate / spot-clean / follow / flash / sounds)
26863
+ * are a DATA-DRIVEN dictionary the cap exposes via `listActions()`. Each entry
26864
+ * carries `{ id, kind, label, icon }` (plus `soundId` for sound entries) so the
26865
+ * native panel AND the PTZ mimic render buttons WITHOUT hardcoding a
26866
+ * vendor-specific list. `kind: 'action'` entries are triggered with
26867
+ * `runAction({ actionId })`; `kind: 'sound'` entries with `playSound({ soundId })`
26868
+ * (the entry carries the `soundId` to pass). The general primitives — `move`,
26869
+ * `stop`, `goToPoint` — stay as first-class methods, not dictionary entries.
26870
+ *
26871
+ * NOTE (provider wiring): the first provider (Dreame) drives this with the RAW
26872
+ * `callAction(siid,aiid,in)` / `setProperty({siid,piid,value})` MIoT primitives
26873
+ * that the currently-published `@apocaliss92/nodedreame` already exposes on
26874
+ * every device handle. A future nodedreame publish adds a typed
26875
+ * `DreameCameraController` (drive / playPetSound / spotClean / findPet / …); the
26876
+ * provider can then swap the raw calls for the typed methods with no change to
26877
+ * THIS contract.
26878
+ */
26879
+ /**
26880
+ * A momentary drive nudge. The robot MOVES (no gimbal) for as long as the caller
26881
+ * keeps sending nudges (~1 Hz); an explicit `stop` (or letting the nudges lapse)
26882
+ * halts it.
26883
+ *
26884
+ * - `pan` — turn: negative = left, positive = right, 0 = straight.
26885
+ * - `tilt` — throttle: positive = forward, negative = spin / turn-around.
26886
+ * - `speed` — optional intensity hint [0, 1]; the provider may scale the drive
26887
+ * vector by it (drivers without proportional drive ignore it).
26888
+ *
26889
+ * `pan` / `tilt` are normalized [-1, 1]. Both optional so a caller can nudge one
26890
+ * axis alone; an all-undefined nudge is a no-op.
26891
+ */
26892
+ var NavigationMoveCommandSchema = object({
26893
+ pan: number().min(-1).max(1).optional(),
26894
+ tilt: number().min(-1).max(1).optional(),
26895
+ speed: number().min(0).max(1).optional()
26896
+ });
26897
+ /**
26898
+ * The enumerated discrete actions a navigation-capable robot can perform via
26899
+ * `runAction`. This is the CLOSED vocabulary; a given device advertises the
26900
+ * subset it supports through `listActions`. Sounds are NOT here — they go through
26901
+ * `playSound` (see the `sound` dictionary entries).
26902
+ */
26903
+ var NavigationActionIdSchema = _enum([
26904
+ "goHome",
26905
+ "locate",
26906
+ "spotClean",
26907
+ "findPet",
26908
+ "personFollow",
26909
+ "stop",
26910
+ "startClean",
26911
+ "pauseClean",
26912
+ "dockWash",
26913
+ "autoEmpty",
26914
+ "flashOn",
26915
+ "flashOff"
26916
+ ]);
26917
+ /** Whether a dictionary entry is a `runAction` action or a `playSound` sound. */
26918
+ var NavigationEntryKindSchema = _enum(["action", "sound"]);
26919
+ /**
26920
+ * One entry in the navigation action dictionary — the DATA-DRIVEN unit both the
26921
+ * native panel and the PTZ mimic render as a button.
26922
+ *
26923
+ * - `id` — stable id. For `kind:'action'` it is a {@link NavigationActionId}
26924
+ * (pass to `runAction`); for `kind:'sound'` it is a namespaced id
26925
+ * (`sound:meow`) whose `soundId` is passed to `playSound`.
26926
+ * - `icon` — icon HINT (lucide-style name; the UI maps it to its own set).
26927
+ * - `label` — operator-facing English label.
26928
+ * - `soundId` — wire sound id, present only on `kind:'sound'` entries.
26929
+ * - `enabled` — per-device FEATURE FLAG. `listActions` reports it so the UI /
26930
+ * PTZ render ONLY enabled entries. Data-driven: the provider
26931
+ * flips it from config, never by editing code.
26932
+ */
26933
+ var NavigationActionEntrySchema = object({
26934
+ id: string(),
26935
+ kind: NavigationEntryKindSchema,
26936
+ label: string(),
26937
+ icon: string(),
26938
+ /** Present only on `kind:'sound'` entries — the id to pass to `playSound`. */
26939
+ soundId: number().int().optional(),
26940
+ /** Per-device feature flag — render this entry only when true. */
26941
+ enabled: boolean()
26942
+ });
26943
+ /** Coordinates for `goToPoint` — a point on the robot's live map. */
26944
+ var NavigationPointSchema = object({
26945
+ x: number(),
26946
+ y: number()
26947
+ });
26948
+ /**
26949
+ * Per-device FEATURE-FLAG report for the general (non-dictionary) primitives.
26950
+ * The cap reports which are enabled so the UI / PTZ render only the controls
26951
+ * that are turned on for THIS device. Data-driven: the provider derives these
26952
+ * from config + probe, never hardcoded in the UI. The per-DICTIONARY-entry flags
26953
+ * live on {@link NavigationActionEntrySchema.enabled}; these gate the primitives
26954
+ * that are not dictionary entries.
26955
+ *
26956
+ * - `move` / `stop` — the momentary drive joystick.
26957
+ * - `goToPoint` — send-to-map-coordinate. Ships OFF on Dreame until the
26958
+ * map-coordinate plumbing is wired.
26959
+ * - `runAction` — the discrete action buttons (dictionary `kind:'action'`).
26960
+ * - `playSound` — the sound buttons (dictionary `kind:'sound'`).
26961
+ * - `light` — the on/off fill-light toggle (works anytime).
26962
+ * - `lightMode` — the auto/manual selector + manual level slider (a
26963
+ * camera-service control; needs an active stream).
26964
+ */
26965
+ var NavigationFeaturesSchema = object({
26966
+ move: boolean(),
26967
+ stop: boolean(),
26968
+ goToPoint: boolean(),
26969
+ runAction: boolean(),
26970
+ playSound: boolean(),
26971
+ light: boolean(),
26972
+ lightMode: boolean()
26973
+ });
26974
+ /** Light mode: `auto` lets the camera choose brightness; `manual` uses `level`. */
26975
+ var NavigationLightModeSchema = _enum(["auto", "manual"]);
26976
+ /**
26977
+ * Live navigation state so the UI can reflect what the robot is doing:
26978
+ * - `mode` — coarse activity (idle / cleaning / following / …).
26979
+ * - `following` — person/pet follow is currently armed.
26980
+ * - `flash` — the on-camera fill light is on.
26981
+ * - `lightMode` — auto vs manual fill-light mode.
26982
+ * - `lightLevel` — manual fill-light level (40..100); meaningful when
26983
+ * `lightMode === 'manual'`.
26984
+ */
26985
+ var NavigationStatusSchema = object({
26986
+ mode: _enum([
26987
+ "idle",
26988
+ "cleaning",
26989
+ "spot",
26990
+ "following",
26991
+ "goto",
26992
+ "returning",
26993
+ "paused",
26994
+ "unknown"
26995
+ ]),
26996
+ following: boolean(),
26997
+ flash: boolean(),
26998
+ lightMode: NavigationLightModeSchema,
26999
+ lightLevel: number().min(40).max(100),
27000
+ /** Ms epoch when the slice was last updated. */
27001
+ lastChangedAt: number()
27002
+ });
27003
+ NavigationStatusSchema.extend({ lastFetchedAt: number() });
27004
+ DeviceType.Camera, method(NavigationMoveCommandSchema.extend({ deviceId: number() }), _void(), { kind: "mutation" }), method(object({ deviceId: number() }), _void(), { kind: "mutation" }), method(NavigationPointSchema.extend({ deviceId: number() }), _void(), { kind: "mutation" }), method(object({ deviceId: number() }), array(NavigationActionEntrySchema)), method(object({
27005
+ deviceId: number(),
27006
+ actionId: NavigationActionIdSchema
27007
+ }), _void(), { kind: "mutation" }), method(object({
27008
+ deviceId: number(),
27009
+ soundId: number().int()
27010
+ }), _void(), { kind: "mutation" }), method(object({
27011
+ deviceId: number(),
27012
+ on: boolean()
27013
+ }), _void(), { kind: "mutation" }), method(object({
27014
+ deviceId: number(),
27015
+ mode: NavigationLightModeSchema,
27016
+ level: number().min(40).max(100).optional()
27017
+ }), _void(), { kind: "mutation" }), method(object({
27018
+ deviceId: number(),
27019
+ level: number().min(40).max(100)
27020
+ }), _void(), { kind: "mutation" }), method(object({ deviceId: number() }), NavigationFeaturesSchema), object({
27021
+ deviceId: number(),
27022
+ status: NavigationStatusSchema
27023
+ });
26821
27024
  DeviceType.Camera, DeviceType.Sensor, DeviceType.Switch, method(object({ deviceId: number().int().nonnegative() }), object({ success: literal(true) }), {
26822
27025
  kind: "mutation",
26823
27026
  auth: "admin"
@@ -31882,6 +32085,66 @@ Object.freeze({
31882
32085
  addonId: null,
31883
32086
  access: "create"
31884
32087
  },
32088
+ "navigation.getFeatures": {
32089
+ capName: "navigation",
32090
+ capScope: "device",
32091
+ addonId: null,
32092
+ access: "view"
32093
+ },
32094
+ "navigation.goToPoint": {
32095
+ capName: "navigation",
32096
+ capScope: "device",
32097
+ addonId: null,
32098
+ access: "create"
32099
+ },
32100
+ "navigation.listActions": {
32101
+ capName: "navigation",
32102
+ capScope: "device",
32103
+ addonId: null,
32104
+ access: "view"
32105
+ },
32106
+ "navigation.move": {
32107
+ capName: "navigation",
32108
+ capScope: "device",
32109
+ addonId: null,
32110
+ access: "create"
32111
+ },
32112
+ "navigation.playSound": {
32113
+ capName: "navigation",
32114
+ capScope: "device",
32115
+ addonId: null,
32116
+ access: "create"
32117
+ },
32118
+ "navigation.runAction": {
32119
+ capName: "navigation",
32120
+ capScope: "device",
32121
+ addonId: null,
32122
+ access: "create"
32123
+ },
32124
+ "navigation.setLightLevel": {
32125
+ capName: "navigation",
32126
+ capScope: "device",
32127
+ addonId: null,
32128
+ access: "create"
32129
+ },
32130
+ "navigation.setLightMode": {
32131
+ capName: "navigation",
32132
+ capScope: "device",
32133
+ addonId: null,
32134
+ access: "create"
32135
+ },
32136
+ "navigation.setLightOn": {
32137
+ capName: "navigation",
32138
+ capScope: "device",
32139
+ addonId: null,
32140
+ access: "create"
32141
+ },
32142
+ "navigation.stop": {
32143
+ capName: "navigation",
32144
+ capScope: "device",
32145
+ addonId: null,
32146
+ access: "create"
32147
+ },
31885
32148
  "networkAccess.getEndpoint": {
31886
32149
  capName: "network-access",
31887
32150
  capScope: "system",
@@ -35977,6 +36240,56 @@ Object.freeze({
35977
36240
  form: "single",
35978
36241
  optional: false
35979
36242
  }],
36243
+ "navigation.getFeatures": [{
36244
+ name: "deviceId",
36245
+ form: "single",
36246
+ optional: false
36247
+ }],
36248
+ "navigation.goToPoint": [{
36249
+ name: "deviceId",
36250
+ form: "single",
36251
+ optional: false
36252
+ }],
36253
+ "navigation.listActions": [{
36254
+ name: "deviceId",
36255
+ form: "single",
36256
+ optional: false
36257
+ }],
36258
+ "navigation.move": [{
36259
+ name: "deviceId",
36260
+ form: "single",
36261
+ optional: false
36262
+ }],
36263
+ "navigation.playSound": [{
36264
+ name: "deviceId",
36265
+ form: "single",
36266
+ optional: false
36267
+ }],
36268
+ "navigation.runAction": [{
36269
+ name: "deviceId",
36270
+ form: "single",
36271
+ optional: false
36272
+ }],
36273
+ "navigation.setLightLevel": [{
36274
+ name: "deviceId",
36275
+ form: "single",
36276
+ optional: false
36277
+ }],
36278
+ "navigation.setLightMode": [{
36279
+ name: "deviceId",
36280
+ form: "single",
36281
+ optional: false
36282
+ }],
36283
+ "navigation.setLightOn": [{
36284
+ name: "deviceId",
36285
+ form: "single",
36286
+ optional: false
36287
+ }],
36288
+ "navigation.stop": [{
36289
+ name: "deviceId",
36290
+ form: "single",
36291
+ optional: false
36292
+ }],
35980
36293
  "networkQuality.getDeviceStats": [{
35981
36294
  name: "deviceId",
35982
36295
  form: "single",
@@ -37518,7 +37831,7 @@ var AdminUIAddon = class extends BaseAddon {
37518
37831
  capability: adminUiCapability,
37519
37832
  provider: {
37520
37833
  getStaticDir: async () => ({ staticDir: resolveAdminUiDistDir() }),
37521
- getVersion: async () => ({ version: "1.2.151" })
37834
+ getVersion: async () => ({ version: "1.2.153" })
37522
37835
  }
37523
37836
  }];
37524
37837
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-admin-ui",
3
- "version": "1.2.151",
3
+ "version": "1.2.153",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "description": "Admin UI — Vite frontend build and server-side addon",
@@ -1 +0,0 @@
1
- import{J as e}from"./index-Da9M5b3O.js";var t=e(`circle-check-big`,[[`path`,{d:`M21.801 10A10 10 0 1 1 17 3.335`,key:`yps3ct`}],[`path`,{d:`m9 11 3 3L22 4`,key:`1pflzl`}]]);export{t};
@@ -1 +0,0 @@
1
- import{J as e}from"./index-Da9M5b3O.js";var t=e(`circle-dot`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`circle`,{cx:`12`,cy:`12`,r:`1`,key:`41hilf`}]]);export{t};
@@ -1 +0,0 @@
1
- import{J as e}from"./index-Da9M5b3O.js";var t=e(`circle-slash`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`line`,{x1:`9`,x2:`15`,y1:`15`,y2:`9`,key:`1dfufj`}]]);export{t};
@@ -1 +0,0 @@
1
- import{J as e}from"./index-Da9M5b3O.js";var t=e(`clock`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`polyline`,{points:`12 6 12 12 16 14`,key:`68esgv`}]]);export{t};