@ray-js/robot-data-stream 0.0.15-beta.12 → 0.0.15-beta.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/constant.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  export declare const SUCTION_MAP: Record<string, number>;
2
2
  export declare const CISTERN_MAP: Record<string, number>;
3
3
  export declare const CLEAN_MODE_MAP: Record<string, number>;
4
+ export declare const ROUTE_PREFERENCE_MAP: Record<string, number>;
4
5
  export declare enum FileNameEnum {
5
6
  map = "map.bin",
6
7
  mapStructured = "map_structured.bin",
package/lib/constant.js CHANGED
@@ -28,6 +28,17 @@ export const CLEAN_MODE_MAP = {
28
28
  clean_before_mop: 3,
29
29
  sweep_after_mop: 3
30
30
  };
31
+
32
+ // 路线偏好(四种清洁偏好)
33
+ export const ROUTE_PREFERENCE_MAP = {
34
+ standard: 0,
35
+ // 标准
36
+ fast: 1,
37
+ // 快速
38
+ deep: 2,
39
+ // 深度
40
+ custom: 3 // 自定义
41
+ };
31
42
  export let FileNameEnum = /*#__PURE__*/function (FileNameEnum) {
32
43
  FileNameEnum["map"] = "map.bin";
33
44
  FileNameEnum["mapStructured"] = "map_structured.bin";
@@ -48,11 +48,12 @@ export declare const ProtocolSchemas: {
48
48
  set_schedule: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniObject<{
49
49
  list: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniObject<{
50
50
  suctions: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
51
- cisterns: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
51
+ cisterns: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<any>>;
52
52
  cleanCounts: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
53
53
  yMops: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
54
54
  sweepMopModes: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
55
55
  ids: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
56
+ routePreferences: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
56
57
  active: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat;
57
58
  cycle: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>;
58
59
  time: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>;
@@ -92,6 +93,7 @@ export declare const ProtocolSchemas: {
92
93
  }, z.core.$strip>;
93
94
  set_wifi_map: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniObject<{
94
95
  taskId: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>;
96
+ switch: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniBoolean<boolean>>;
95
97
  }, z.core.$strip>;
96
98
  set_voice: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniObject<{
97
99
  id: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat;
@@ -124,11 +126,12 @@ export declare const ProtocolSchemas: {
124
126
  }, z.core.$strip>;
125
127
  set_spot_clean: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniObject<{
126
128
  suctions: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
127
- cisterns: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
129
+ cisterns: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<any>>;
128
130
  cleanCounts: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
129
131
  yMops: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
130
132
  sweepMopModes: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
131
133
  ids: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
134
+ routePreferences: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
132
135
  spots: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniObject<{
133
136
  x: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniNumber<number>;
134
137
  y: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniNumber<number>;
@@ -203,13 +206,14 @@ export declare const ProtocolSchemas: {
203
206
  num: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>;
204
207
  ids: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>;
205
208
  suctions: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
206
- cisterns: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
209
+ cisterns: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<any>>;
207
210
  cleanCounts: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
208
211
  yMops: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
209
212
  sweepMopModes: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
210
213
  floorTypes: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
211
214
  names: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
212
215
  orders: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
216
+ routePreferences: import("../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
213
217
  }, z.core.$strip>;
214
218
  };
215
219
  export type ProtocolTypes = {
@@ -5,11 +5,12 @@ export declare const Point: import("../../../myLib/zod/src/v4/mini/schemas").Zod
5
5
  }, z.core.$strip>;
6
6
  export declare const RoomPreferenceFieldsSchema: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniObject<{
7
7
  suctions: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
8
- cisterns: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
8
+ cisterns: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<any>>;
9
9
  cleanCounts: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
10
10
  yMops: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
11
11
  sweepMopModes: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
12
12
  ids: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
13
+ routePreferences: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
13
14
  }, z.core.$strip>;
14
15
  export declare const BaseResponseSchema: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniObject<{
15
16
  success: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniBoolean<boolean>;
@@ -10,8 +10,8 @@ export const Point = z.object({
10
10
  export const RoomPreferenceFieldsSchema = z.object({
11
11
  // 吸力, closed - 关闭 gentle - 安静 normal - 正常 strong - 强劲 max - 超强 ,默认值为''
12
12
  suctions: z.optional(z.array(z.string())),
13
- // 拖地水量 "closed"- 关闭,"low"-低,"middle"-中,"high"-高,默认值为''
14
- cisterns: z.optional(z.array(z.string())),
13
+ // 拖地水量 "closed"- 关闭,"low"-低,"middle"-中,"high"-高,默认值为'',兼容number类型
14
+ cisterns: z.optional(z.array(z.union([z.string(), z.number()]))),
15
15
  // 清扫次数 默认值1
16
16
  cleanCounts: z.optional(z.array(z.int())),
17
17
  // 拖地模式 1:开启Y型拖地 0:关闭Y型拖地 -1 未设置 默认值-1
@@ -19,7 +19,9 @@ export const RoomPreferenceFieldsSchema = z.object({
19
19
  // 扫拖模式 "only_sweep":仅扫,"only_mop":仅拖,"both_work":扫拖同时,"clean_before_mop":先扫后拖,默认值为'only_sweep'
20
20
  sweepMopModes: z.optional(z.array(z.string())),
21
21
  // 房间id集合
22
- ids: z.optional(z.array(z.int()))
22
+ ids: z.optional(z.array(z.int())),
23
+ // 路线偏好(四种清洁偏好): "standard"-标准, "fast"-快速, "deep"-深度, "custom"-自定义,默认值为'standard'
24
+ routePreferences: z.optional(z.array(z.string()))
23
25
  });
24
26
 
25
27
  // BaseResponse Schema(用于响应类型)
@@ -3,13 +3,14 @@ export declare const setRoomPropertySchema: import("../../../myLib/zod/src/v4/mi
3
3
  num: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>;
4
4
  ids: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>;
5
5
  suctions: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
6
- cisterns: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
6
+ cisterns: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<any>>;
7
7
  cleanCounts: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
8
8
  yMops: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
9
9
  sweepMopModes: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
10
10
  floorTypes: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
11
11
  names: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
12
12
  orders: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
13
+ routePreferences: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
13
14
  }, z.core.$strip>;
14
15
  declare const roomPropertyResponseSchema: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniObject<{
15
16
  success: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniBoolean<boolean>;
@@ -18,7 +19,7 @@ declare const roomPropertyResponseSchema: import("../../../myLib/zod/src/v4/mini
18
19
  version: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>;
19
20
  taskId: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>;
20
21
  suctions: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
21
- cisterns: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
22
+ cisterns: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<any>>;
22
23
  cleanCounts: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
23
24
  yMops: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
24
25
  sweepMopModes: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
@@ -28,6 +29,7 @@ declare const roomPropertyResponseSchema: import("../../../myLib/zod/src/v4/mini
28
29
  floorTypes: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
29
30
  names: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
30
31
  orders: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
32
+ routePreferences: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
31
33
  }, z.core.$strip>;
32
34
  /**
33
35
  * 验证设置房间属性协议数据
@@ -16,8 +16,8 @@ export const setRoomPropertySchema = z.object({
16
16
  ids: z.array(z.int()).check(z.minLength(1)),
17
17
  // 吸力
18
18
  suctions: z.optional(z.array(z.string())),
19
- // 拖地水量
20
- cisterns: z.optional(z.array(z.string())),
19
+ // 拖地水量,兼容 string 和 number 类型
20
+ cisterns: z.optional(z.array(z.union([z.string(), z.number()]))),
21
21
  // 清扫次数
22
22
  cleanCounts: z.optional(z.array(z.int())),
23
23
  // 拖地模式
@@ -29,14 +29,16 @@ export const setRoomPropertySchema = z.object({
29
29
  // 房间名称
30
30
  names: z.optional(z.array(z.string())),
31
31
  // 房间顺序
32
- orders: z.optional(z.array(z.int()))
32
+ orders: z.optional(z.array(z.int())),
33
+ // 路线偏好
34
+ routePreferences: z.optional(z.array(z.string()))
33
35
  });
34
36
 
35
37
  // 房间属性响应 Schema
36
38
  const roomPropertyResponseSchema = z.extend(BaseResponseSchema, {
37
39
  // RoomPreferenceFieldsSchema 的字段
38
40
  suctions: z.optional(z.array(z.string())),
39
- cisterns: z.optional(z.array(z.string())),
41
+ cisterns: z.optional(z.array(z.union([z.string(), z.number()]))),
40
42
  cleanCounts: z.optional(z.array(z.int())),
41
43
  yMops: z.optional(z.array(z.int())),
42
44
  sweepMopModes: z.optional(z.array(z.string())),
@@ -50,7 +52,9 @@ const roomPropertyResponseSchema = z.extend(BaseResponseSchema, {
50
52
  // 房间名称
51
53
  names: z.optional(z.array(z.string())),
52
54
  // 房间顺序
53
- orders: z.optional(z.array(z.int()))
55
+ orders: z.optional(z.array(z.int())),
56
+ // 路线偏好
57
+ routePreferences: z.optional(z.array(z.string()))
54
58
  });
55
59
 
56
60
  /**
@@ -106,6 +110,9 @@ export function validateSetRoomProperty(data) {
106
110
  if (data.orders) {
107
111
  validateLength('orders', data.orders);
108
112
  }
113
+ if (data.routePreferences) {
114
+ validateLength('routePreferences', data.routePreferences);
115
+ }
109
116
  }
110
117
 
111
118
  // 函数类型定义
@@ -1,11 +1,12 @@
1
1
  import * as z from '../../../myLib/zod/mini';
2
2
  export declare const ScheduleItemSchema: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniObject<{
3
3
  suctions: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
4
- cisterns: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
4
+ cisterns: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<any>>;
5
5
  cleanCounts: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
6
6
  yMops: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
7
7
  sweepMopModes: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
8
8
  ids: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
9
+ routePreferences: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
9
10
  active: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat;
10
11
  cycle: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>;
11
12
  time: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>;
@@ -13,11 +14,12 @@ export declare const ScheduleItemSchema: import("../../../myLib/zod/src/v4/mini/
13
14
  export declare const setScheduleSchema: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniObject<{
14
15
  list: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniObject<{
15
16
  suctions: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
16
- cisterns: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
17
+ cisterns: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<any>>;
17
18
  cleanCounts: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
18
19
  yMops: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
19
20
  sweepMopModes: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
20
21
  ids: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
22
+ routePreferences: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
21
23
  active: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat;
22
24
  cycle: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>;
23
25
  time: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>;
@@ -42,11 +44,12 @@ declare const ScheduleResponseSchema: import("../../../myLib/zod/src/v4/mini/sch
42
44
  taskId: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>;
43
45
  list: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniObject<{
44
46
  suctions: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
45
- cisterns: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
47
+ cisterns: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<any>>;
46
48
  cleanCounts: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
47
49
  yMops: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
48
50
  sweepMopModes: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
49
51
  ids: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
52
+ routePreferences: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
50
53
  active: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat;
51
54
  cycle: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>;
52
55
  time: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>;
@@ -1,11 +1,12 @@
1
1
  import * as z from '../../../myLib/zod/mini';
2
2
  export declare const setSpotCleanSchema: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniObject<{
3
3
  suctions: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
4
- cisterns: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
4
+ cisterns: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<any>>;
5
5
  cleanCounts: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
6
6
  yMops: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
7
7
  sweepMopModes: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
8
8
  ids: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumberFormat>>;
9
+ routePreferences: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>>;
9
10
  spots: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniArray<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniObject<{
10
11
  x: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumber<number>;
11
12
  y: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniNumber<number>;
@@ -1,6 +1,7 @@
1
1
  import * as z from '../../../myLib/zod/mini';
2
2
  export declare const setWifiMapSchema: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniObject<{
3
3
  taskId: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniString<string>>;
4
+ switch: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniOptional<import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniBoolean<boolean>>;
4
5
  }, z.core.$strip>;
5
6
  declare const wifiMapResponseSchema: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniObject<{
6
7
  success: import("../../../myLib/zod/src/v4/mini/schemas").ZodMiniBoolean<boolean>;
@@ -3,7 +3,8 @@ import { BaseResponseSchema } from './base';
3
3
 
4
4
  // 设置 WiFi 地图参数 Schema
5
5
  export const setWifiMapSchema = z.object({
6
- taskId: z.optional(z.string())
6
+ taskId: z.optional(z.string()),
7
+ switch: z.optional(z.boolean())
7
8
  });
8
9
 
9
10
  // WiFi 地图响应 Schema(BaseResponseSchema 已包含所有必需字段)
@@ -45,7 +45,7 @@ export const useRoomProperty = () => {
45
45
  setRoomProperty: data => {
46
46
  return new Promise((resolve, reject) => {
47
47
  try {
48
- var _data$num, _data$suctions, _data$cisterns, _data$cleanCounts, _data$yMops, _data$sweepMopModes, _data$names;
48
+ var _data$num, _data$suctions, _data$cisterns, _data$cleanCounts, _data$yMops, _data$sweepMopModes, _data$names, _data$routePreference;
49
49
  if (!useMqtt) {
50
50
  reject(new Error('useMqtt is not used'));
51
51
  return;
@@ -66,7 +66,8 @@ export const useRoomProperty = () => {
66
66
  sweepMopModes: (_data$sweepMopModes = data.sweepMopModes) !== null && _data$sweepMopModes !== void 0 ? _data$sweepMopModes : new Array(len).fill('only_sweep'),
67
67
  names: (_data$names = data.names) !== null && _data$names !== void 0 ? _data$names : new Array(len).fill(''),
68
68
  floorTypes: data.floorTypes,
69
- orders: data.orders
69
+ orders: data.orders,
70
+ routePreferences: (_data$routePreference = data.routePreferences) !== null && _data$routePreference !== void 0 ? _data$routePreference : new Array(len).fill('standard')
70
71
  };
71
72
 
72
73
  // 使用 TypeBox Schema 进行参数验证(包含自定义验证逻辑)
@@ -2,7 +2,7 @@ import "core-js/modules/esnext.iterator.map.js";
2
2
  // 定时
3
3
  import { encodeDeviceTimer0x30 } from '@ray-js/robot-protocol';
4
4
  import { useContext } from 'react';
5
- import { CISTERN_MAP, CLEAN_MODE_MAP, SUCTION_MAP } from '../constant';
5
+ import { CISTERN_MAP, CLEAN_MODE_MAP, SUCTION_MAP, ROUTE_PREFERENCE_MAP } from '../constant';
6
6
  import { handleMqttError, useStructuredMessage } from './hooks/useStructuredMessage';
7
7
  import { SingletonContext } from './mqttProvider';
8
8
  import { ScheduleEnum } from './type';
@@ -72,13 +72,14 @@ export const useSchedule = () => {
72
72
  cleanCounts,
73
73
  cycle,
74
74
  cisterns,
75
- time
75
+ time,
76
+ routePreferences
76
77
  } = _ref;
77
78
  return {
78
79
  effectiveness: active,
79
80
  cleanMode: CLEAN_MODE_MAP[(sweepMopModes === null || sweepMopModes === void 0 ? void 0 : sweepMopModes[0]) || ''],
80
81
  fanLevel: SUCTION_MAP[(suctions === null || suctions === void 0 ? void 0 : suctions[0]) || ''],
81
- waterLevel: CISTERN_MAP[(cisterns === null || cisterns === void 0 ? void 0 : cisterns[0]) || ''],
82
+ waterLevel: typeof (cisterns === null || cisterns === void 0 ? void 0 : cisterns[0]) === 'number' ? cisterns[0] : CISTERN_MAP[(cisterns === null || cisterns === void 0 ? void 0 : cisterns[0]) || ''],
82
83
  time: {
83
84
  hour: time[0],
84
85
  minute: time[1]
@@ -86,7 +87,8 @@ export const useSchedule = () => {
86
87
  week: cycle,
87
88
  sweepCount: (cleanCounts === null || cleanCounts === void 0 ? void 0 : cleanCounts[0]) || 1,
88
89
  roomIds: ids || [],
89
- roomNum: (ids === null || ids === void 0 ? void 0 : ids.length) || 0
90
+ roomNum: (ids === null || ids === void 0 ? void 0 : ids.length) || 0,
91
+ routePreference: ROUTE_PREFERENCE_MAP[(routePreferences === null || routePreferences === void 0 ? void 0 : routePreferences[0]) || 'standard']
90
92
  };
91
93
  })
92
94
  });
@@ -18,7 +18,7 @@ export const useWifiMap = () => {
18
18
 
19
19
  /**
20
20
  * 设置 WiFi 地图
21
- * @param data 包含 taskId 的参数对象(taskId 可选,不提供时自动生成)
21
+ * @param data 包含 taskId 的参数对象(taskId 可选,不提供时自动生成,switch 可选,默认)
22
22
  * @returns Promise<WifiMapResponse> 响应结果
23
23
  */
24
24
 
@@ -36,9 +36,11 @@ export const useWifiMap = () => {
36
36
  let data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
37
37
  return new Promise((resolve, reject) => {
38
38
  try {
39
+ var _data$switch;
39
40
  // 如果没有提供 taskId,自动生成
40
41
  const wifiMapData = {
41
- taskId: data.taskId || String(Date.now())
42
+ taskId: data.taskId || String(Date.now()),
43
+ switch: (_data$switch = data.switch) !== null && _data$switch !== void 0 ? _data$switch : true
42
44
  };
43
45
 
44
46
  // 使用 TypeBox Schema 进行参数验证
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ray-js/robot-data-stream",
3
- "version": "0.0.15-beta.12",
3
+ "version": "0.0.15-beta.14",
4
4
  "description": "扫地机P2P数据流标准化组件",
5
5
  "main": "lib/index",
6
6
  "files": [