@bringg/dashboard-sdk 9.50.13-pre.3 → 9.50.13-pre.6

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.
@@ -56,7 +56,7 @@ var lodash_1 = require("lodash");
56
56
  var BringgException_1 = require("../Core/BringgException");
57
57
  var Logger_1 = __importDefault(require("../Core/Logger"));
58
58
  var abort_1 = require("../utils/abort");
59
- var version = '9.50.13-pre.3';
59
+ var version = '9.50.13-pre.6';
60
60
  function logErrorResponse(response) {
61
61
  var data = response.data, status = response.status;
62
62
  try {
@@ -1,394 +1,10 @@
1
1
  import { Task } from '@bringg/types';
2
2
  import DataStore from '../../data-store';
3
3
  declare function mergeTaskIntoExisting(tasksStore: DataStore<Task>, task: Task, shouldRemoveInventories?: boolean): {
4
- current: {
5
- created_at?: string;
6
- updated_at?: string;
7
- task_notes?: import("@bringg/types").TaskNote[];
8
- shared_locations?: import("@bringg/types").SharedLocation[];
9
- scans?: import("@bringg/types").Scan[];
10
- customer?: import("@bringg/types").Customer;
11
- teams?: import("@bringg/types").Team[];
12
- run?: import("@bringg/types").Run;
13
- user?: import("@bringg/types").User;
14
- child_tasks?: import("@bringg/types").ChildTask[];
15
- title?: string;
16
- origin_id?: number;
17
- task_type_id?: number;
18
- active_way_point_id?: number;
19
- address?: string;
20
- asap?: boolean;
21
- automatically_assigned?: boolean;
22
- automatically_cancelled?: import("@bringg/types").TaskAutomaticallyCancelled;
23
- automatically_ended?: import("@bringg/types").StatusChangedType;
24
- cancelled_at?: string;
25
- chat_messages?: import("@bringg/types").ChatMessage[];
26
- customer_id?: number;
27
- customer_name?: string;
28
- delete_at?: string;
29
- discount?: number;
30
- dispatcher_id?: number;
31
- distance_traveled?: number;
32
- driver_payments?: import("@bringg/types").DriverPayment[];
33
- ended_time?: string;
34
- external_id?: string;
35
- extras?: import("@bringg/types").Extras;
36
- group_leader_id?: number;
37
- group_uuid?: string;
38
- id?: number;
39
- invalidated?: boolean;
40
- invalid_reasons?: import("@bringg/types").InvalidReason[];
41
- lat?: number;
42
- late?: boolean;
43
- left_to_be_paid?: number;
44
- linked_task_id?: number;
45
- lng?: number;
46
- parent_task_id?: number;
47
- payment_method?: import("@bringg/types").PaymentMethods;
48
- payment_type_name?: string;
49
- post_delivery_tip_cash?: number;
50
- post_delivery_tip_credit?: number;
51
- pre_delivery_tip?: number;
52
- preparation_end_time_planned?: string;
53
- preparation_ready_for_pickup_time_planned?: string;
54
- preparation_ready_for_pickup_time_actual?: string;
55
- preparation_start_time_planned?: string;
56
- preparation_status?: import("@bringg/types").PreparationStatus;
57
- preparation_external_id?: string;
58
- price_before_tax?: number;
59
- priority?: number;
60
- ready_to_execute?: boolean;
61
- recurrent_task_template_id?: number;
62
- required_skills?: string[];
63
- scheduled_at?: string;
64
- started_time?: string;
65
- status?: import("@bringg/types").TaskStatus;
66
- tag_id?: number;
67
- quote_id?: string;
68
- tax_price?: number;
69
- tip?: number;
70
- tip_driver_enabled?: boolean;
71
- total_price?: number;
72
- total_weight?: number;
73
- delivery_price?: number;
74
- delivery_cost?: number;
75
- estimated_delivery_cost?: number;
76
- pre_estimated_delivery_cost?: number;
77
- internal_fee?: number;
78
- user_id?: number;
79
- teams_ids?: number[];
80
- team_ids?: number[];
81
- uuid?: string;
82
- fleet_delivery_external_id?: string;
83
- fleet_id?: number;
84
- merchant_id: number;
85
- scheduled_to_be_ready?: string;
86
- first_way_point_schedule?: string;
87
- last_way_point_schedule?: string;
88
- first_way_point_lat?: number;
89
- first_way_point_lng?: number;
90
- last_way_point_lat?: number;
91
- last_way_point_lng?: number;
92
- cancellation_custom_reason?: string;
93
- cancellation_reason_id?: number;
94
- cancellation_lat?: number;
95
- cancellation_lng?: number;
96
- inventory_changes?: import("@bringg/types").InventoryChange[];
97
- task_configuration_id?: number;
98
- task_configuration?: import("@bringg/types").TaskConfiguration;
99
- rogue_reasons?: import("@bringg/types").RogueReasons[];
100
- virtual_task?: boolean;
101
- action_data?: import("@bringg/types").ActionData[];
102
- run_id?: number;
103
- service_plan_id?: number;
104
- service_plan?: import("@bringg/types").ServicePlan;
105
- rank?: number;
106
- left_to_be_paid_for_delivery?: number;
107
- additional_attributes?: import("@bringg/types").TaskAdditionalAttributes;
108
- acknowledged_at?: string;
109
- route_name?: string;
110
- aggregations?: Partial<{
111
- max_weight: number;
112
- max_handling_units: import("@bringg/types").HandlingUnits;
113
- inventory_total_quantity: number;
114
- has_any_rejected_inventory: boolean;
115
- }>;
116
- test?: boolean;
117
- failed_delivery_attempts?: number;
118
- first_way_point_has_to_leave_by?: string;
119
- origin_title?: string;
120
- planning_done?: boolean;
121
- planning_published?: boolean;
122
- vehicle_id?: number;
123
- service_fee?: number;
124
- delivery_window_id?: number;
125
- reserved_until?: string;
126
- total_handling_units?: number;
127
- user_external_id?: string;
128
- task_cancellation_reason?: string;
129
- cancellation_reason?: import("@bringg/types").CancelationReason;
130
- way_points?: import("@bringg/types").WayPoint[];
131
- task_payment_histories?: import("@bringg/types").TaskPaymentHistory[];
132
- };
133
- diff: {
134
- created_at?: string;
135
- updated_at?: string;
136
- task_notes?: import("@bringg/types").TaskNote[];
137
- shared_locations?: import("@bringg/types").SharedLocation[];
138
- scans?: import("@bringg/types").Scan[];
139
- customer?: import("@bringg/types").Customer;
140
- teams?: import("@bringg/types").Team[];
141
- run?: import("@bringg/types").Run;
142
- user?: import("@bringg/types").User;
143
- child_tasks?: import("@bringg/types").ChildTask[];
144
- title?: string;
145
- origin_id?: number;
146
- task_type_id?: number;
147
- active_way_point_id?: number;
148
- address?: string;
149
- asap?: boolean;
150
- automatically_assigned?: boolean;
151
- automatically_cancelled?: import("@bringg/types").TaskAutomaticallyCancelled;
152
- automatically_ended?: import("@bringg/types").StatusChangedType;
153
- cancelled_at?: string;
154
- chat_messages?: import("@bringg/types").ChatMessage[];
155
- customer_id?: number;
156
- customer_name?: string;
157
- delete_at?: string;
158
- discount?: number;
159
- dispatcher_id?: number;
160
- distance_traveled?: number;
161
- driver_payments?: import("@bringg/types").DriverPayment[];
162
- ended_time?: string;
163
- external_id?: string;
164
- extras?: import("@bringg/types").Extras;
165
- group_leader_id?: number;
166
- group_uuid?: string;
167
- id?: number;
168
- invalidated?: boolean;
169
- invalid_reasons?: import("@bringg/types").InvalidReason[];
170
- lat?: number;
171
- late?: boolean;
172
- left_to_be_paid?: number;
173
- linked_task_id?: number;
174
- lng?: number;
175
- parent_task_id?: number;
176
- payment_method?: import("@bringg/types").PaymentMethods;
177
- payment_type_name?: string;
178
- post_delivery_tip_cash?: number;
179
- post_delivery_tip_credit?: number;
180
- pre_delivery_tip?: number;
181
- preparation_end_time_planned?: string;
182
- preparation_ready_for_pickup_time_planned?: string;
183
- preparation_ready_for_pickup_time_actual?: string;
184
- preparation_start_time_planned?: string;
185
- preparation_status?: import("@bringg/types").PreparationStatus;
186
- preparation_external_id?: string;
187
- price_before_tax?: number;
188
- priority?: number;
189
- ready_to_execute?: boolean;
190
- recurrent_task_template_id?: number;
191
- required_skills?: string[];
192
- scheduled_at?: string;
193
- started_time?: string;
194
- status?: import("@bringg/types").TaskStatus;
195
- tag_id?: number;
196
- quote_id?: string;
197
- tax_price?: number;
198
- tip?: number;
199
- tip_driver_enabled?: boolean;
200
- total_price?: number;
201
- total_weight?: number;
202
- delivery_price?: number;
203
- delivery_cost?: number;
204
- estimated_delivery_cost?: number;
205
- pre_estimated_delivery_cost?: number;
206
- internal_fee?: number;
207
- user_id?: number;
208
- teams_ids?: number[];
209
- team_ids?: number[];
210
- uuid?: string;
211
- fleet_delivery_external_id?: string;
212
- fleet_id?: number;
213
- merchant_id: number;
214
- scheduled_to_be_ready?: string;
215
- first_way_point_schedule?: string;
216
- last_way_point_schedule?: string;
217
- first_way_point_lat?: number;
218
- first_way_point_lng?: number;
219
- last_way_point_lat?: number;
220
- last_way_point_lng?: number;
221
- cancellation_custom_reason?: string;
222
- cancellation_reason_id?: number;
223
- cancellation_lat?: number;
224
- cancellation_lng?: number;
225
- inventory_changes?: import("@bringg/types").InventoryChange[];
226
- task_configuration_id?: number;
227
- task_configuration?: import("@bringg/types").TaskConfiguration;
228
- rogue_reasons?: import("@bringg/types").RogueReasons[];
229
- virtual_task?: boolean;
230
- action_data?: import("@bringg/types").ActionData[];
231
- run_id?: number;
232
- service_plan_id?: number;
233
- service_plan?: import("@bringg/types").ServicePlan;
234
- rank?: number;
235
- left_to_be_paid_for_delivery?: number;
236
- additional_attributes?: import("@bringg/types").TaskAdditionalAttributes;
237
- acknowledged_at?: string;
238
- route_name?: string;
239
- aggregations?: Partial<{
240
- max_weight: number;
241
- max_handling_units: import("@bringg/types").HandlingUnits;
242
- inventory_total_quantity: number;
243
- has_any_rejected_inventory: boolean;
244
- }>;
245
- test?: boolean;
246
- failed_delivery_attempts?: number;
247
- first_way_point_has_to_leave_by?: string;
248
- origin_title?: string;
249
- planning_done?: boolean;
250
- planning_published?: boolean;
251
- vehicle_id?: number;
252
- service_fee?: number;
253
- delivery_window_id?: number;
254
- reserved_until?: string;
255
- total_handling_units?: number;
256
- user_external_id?: string;
257
- task_cancellation_reason?: string;
258
- cancellation_reason?: import("@bringg/types").CancelationReason;
259
- way_points?: import("@bringg/types").WayPoint[];
260
- task_payment_histories?: import("@bringg/types").TaskPaymentHistory[];
261
- };
4
+ current: Task;
5
+ diff: Task;
262
6
  } | {
263
- current: {
264
- created_at?: string;
265
- updated_at?: string;
266
- task_notes?: import("@bringg/types").TaskNote[];
267
- shared_locations?: import("@bringg/types").SharedLocation[];
268
- scans?: import("@bringg/types").Scan[];
269
- customer?: import("@bringg/types").Customer;
270
- teams?: import("@bringg/types").Team[];
271
- run?: import("@bringg/types").Run;
272
- user?: import("@bringg/types").User;
273
- child_tasks?: import("@bringg/types").ChildTask[];
274
- title?: string;
275
- origin_id?: number;
276
- task_type_id?: number;
277
- active_way_point_id?: number;
278
- address?: string;
279
- asap?: boolean;
280
- automatically_assigned?: boolean;
281
- automatically_cancelled?: import("@bringg/types").TaskAutomaticallyCancelled;
282
- automatically_ended?: import("@bringg/types").StatusChangedType;
283
- cancelled_at?: string;
284
- chat_messages?: import("@bringg/types").ChatMessage[];
285
- customer_id?: number;
286
- customer_name?: string;
287
- delete_at?: string;
288
- discount?: number;
289
- dispatcher_id?: number;
290
- distance_traveled?: number;
291
- driver_payments?: import("@bringg/types").DriverPayment[];
292
- ended_time?: string;
293
- external_id?: string;
294
- extras?: import("@bringg/types").Extras;
295
- group_leader_id?: number;
296
- group_uuid?: string;
297
- id?: number;
298
- invalidated?: boolean;
299
- invalid_reasons?: import("@bringg/types").InvalidReason[];
300
- lat?: number;
301
- late?: boolean;
302
- left_to_be_paid?: number;
303
- linked_task_id?: number;
304
- lng?: number;
305
- parent_task_id?: number;
306
- payment_method?: import("@bringg/types").PaymentMethods;
307
- payment_type_name?: string;
308
- post_delivery_tip_cash?: number;
309
- post_delivery_tip_credit?: number;
310
- pre_delivery_tip?: number;
311
- preparation_end_time_planned?: string;
312
- preparation_ready_for_pickup_time_planned?: string;
313
- preparation_ready_for_pickup_time_actual?: string;
314
- preparation_start_time_planned?: string;
315
- preparation_status?: import("@bringg/types").PreparationStatus;
316
- preparation_external_id?: string;
317
- price_before_tax?: number;
318
- priority?: number;
319
- ready_to_execute?: boolean;
320
- recurrent_task_template_id?: number;
321
- required_skills?: string[];
322
- scheduled_at?: string;
323
- started_time?: string;
324
- status?: import("@bringg/types").TaskStatus;
325
- tag_id?: number;
326
- quote_id?: string;
327
- tax_price?: number;
328
- tip?: number;
329
- tip_driver_enabled?: boolean;
330
- total_price?: number;
331
- total_weight?: number;
332
- delivery_price?: number;
333
- delivery_cost?: number;
334
- estimated_delivery_cost?: number;
335
- pre_estimated_delivery_cost?: number;
336
- internal_fee?: number;
337
- user_id?: number;
338
- teams_ids?: number[];
339
- team_ids?: number[];
340
- uuid?: string;
341
- fleet_delivery_external_id?: string;
342
- fleet_id?: number;
343
- merchant_id: number;
344
- scheduled_to_be_ready?: string;
345
- first_way_point_schedule?: string;
346
- last_way_point_schedule?: string;
347
- first_way_point_lat?: number;
348
- first_way_point_lng?: number;
349
- last_way_point_lat?: number;
350
- last_way_point_lng?: number;
351
- cancellation_custom_reason?: string;
352
- cancellation_reason_id?: number;
353
- cancellation_lat?: number;
354
- cancellation_lng?: number;
355
- inventory_changes?: import("@bringg/types").InventoryChange[];
356
- task_configuration_id?: number;
357
- task_configuration?: import("@bringg/types").TaskConfiguration;
358
- rogue_reasons?: import("@bringg/types").RogueReasons[];
359
- virtual_task?: boolean;
360
- action_data?: import("@bringg/types").ActionData[];
361
- run_id?: number;
362
- service_plan_id?: number;
363
- service_plan?: import("@bringg/types").ServicePlan;
364
- rank?: number;
365
- left_to_be_paid_for_delivery?: number;
366
- additional_attributes?: import("@bringg/types").TaskAdditionalAttributes;
367
- acknowledged_at?: string;
368
- route_name?: string;
369
- aggregations?: Partial<{
370
- max_weight: number;
371
- max_handling_units: import("@bringg/types").HandlingUnits;
372
- inventory_total_quantity: number;
373
- has_any_rejected_inventory: boolean;
374
- }>;
375
- test?: boolean;
376
- failed_delivery_attempts?: number;
377
- first_way_point_has_to_leave_by?: string;
378
- origin_title?: string;
379
- planning_done?: boolean;
380
- planning_published?: boolean;
381
- vehicle_id?: number;
382
- service_fee?: number;
383
- delivery_window_id?: number;
384
- reserved_until?: string;
385
- total_handling_units?: number;
386
- user_external_id?: string;
387
- task_cancellation_reason?: string;
388
- cancellation_reason?: import("@bringg/types").CancelationReason;
389
- way_points?: import("@bringg/types").WayPoint[];
390
- task_payment_histories?: import("@bringg/types").TaskPaymentHistory[];
391
- };
7
+ current: Task;
392
8
  diff?: undefined;
393
9
  };
394
10
  export declare const taskMerger: {
@@ -1,37 +1,41 @@
1
1
  "use strict";
2
- var __rest = (this && this.__rest) || function (s, e) {
3
- var t = {};
4
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
- t[p] = s[p];
6
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
- t[p[i]] = s[p[i]];
10
- }
11
- return t;
12
- };
13
2
  Object.defineProperty(exports, "__esModule", { value: true });
14
3
  exports.taskMerger = void 0;
15
4
  var merge_mapper_1 = require("../../Data/merge-mapper");
5
+ function hasNoActualChanges(diffArray) {
6
+ if (!Array.isArray(diffArray)) {
7
+ return false;
8
+ }
9
+ return diffArray.every(function (item) {
10
+ if (item === undefined || item === null) {
11
+ return true;
12
+ }
13
+ if (typeof item === 'object') {
14
+ return Object.keys(item).length === 0;
15
+ }
16
+ return false;
17
+ });
18
+ }
16
19
  function mergeTaskIntoExisting(tasksStore, task, shouldRemoveInventories) {
17
20
  if (shouldRemoveInventories === void 0) { shouldRemoveInventories = false; }
18
21
  var way_points = task.way_points;
19
22
  if (way_points) {
20
23
  way_points.sort(function (wp1, wp2) { return wp1.position - wp2.position; });
21
24
  }
25
+ var result = merge_mapper_1.mergeMapper.mergeIntoExisting(tasksStore, task);
22
26
  if (shouldRemoveInventories) {
23
- var taskInventories = task.task_inventories;
24
- var task_inventories = task.task_inventories, taskWithoutInventories = __rest(task, ["task_inventories"]);
25
- var result = merge_mapper_1.mergeMapper.mergeIntoExisting(tasksStore, taskWithoutInventories);
26
- if (taskInventories !== undefined && result.diff) {
27
- result.diff.task_inventories = taskInventories;
28
- }
29
- if (result.current && result.current.task_inventories) {
27
+ var existingTask = tasksStore.get(task.id);
28
+ var hasInventoriesInStore = existingTask && existingTask.task_inventories;
29
+ // Clean up task_inventories from diff if it hasn't actually changed
30
+ if (result.diff &&
31
+ result.diff.task_inventories &&
32
+ hasNoActualChanges(result.diff.task_inventories) &&
33
+ !hasInventoriesInStore) {
30
34
  delete result.current.task_inventories;
31
35
  }
32
36
  return result;
33
37
  }
34
- return merge_mapper_1.mergeMapper.mergeIntoExisting(tasksStore, task);
38
+ return result;
35
39
  }
36
40
  exports.taskMerger = { mergeTaskIntoExisting: mergeTaskIntoExisting };
37
41
  //# sourceMappingURL=task-merger.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"task-merger.js","sourceRoot":"","sources":["../../../src/Task/v2/task-merger.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAEA,wDAAsD;AAGtD,SAAS,qBAAqB,CAAC,UAA2B,EAAE,IAAU,EAAE,uBAA+B;IAA/B,wCAAA,EAAA,+BAA+B;IAC9F,IAAA,UAAU,GAAK,IAAI,WAAT,CAAU;IAE5B,IAAI,UAAU,EAAE;QACf,UAAU,CAAC,IAAI,CAAC,UAAC,GAAG,EAAE,GAAG,IAAK,OAAA,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,QAAQ,EAA3B,CAA2B,CAAC,CAAC;KAC3D;IAED,IAAI,uBAAuB,EAAE;QAC5B,IAAM,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC;QACtC,IAAA,gBAAgB,GAAgC,IAAI,iBAApC,EAAK,sBAAsB,UAAK,IAAI,EAAtD,oBAA+C,CAAF,CAAU;QAE7D,IAAM,MAAM,GAAG,0BAAW,CAAC,iBAAiB,CAAC,UAAU,EAAE,sBAAsB,CAAC,CAAC;QAEjF,IAAI,eAAe,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,EAAE;YAChD,MAAM,CAAC,IAAY,CAAC,gBAAgB,GAAG,eAAe,CAAC;SACxD;QAED,IAAI,MAAM,CAAC,OAAO,IAAK,MAAM,CAAC,OAAe,CAAC,gBAAgB,EAAE;YAC/D,OAAQ,MAAM,CAAC,OAAe,CAAC,gBAAgB,CAAC;SAChD;QAED,OAAO,MAAM,CAAC;KACd;IAED,OAAO,0BAAW,CAAC,iBAAiB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;AACxD,CAAC;AAEY,QAAA,UAAU,GAAG,EAAE,qBAAqB,uBAAA,EAAE,CAAC"}
1
+ {"version":3,"file":"task-merger.js","sourceRoot":"","sources":["../../../src/Task/v2/task-merger.ts"],"names":[],"mappings":";;;AAEA,wDAAsD;AAGtD,SAAS,kBAAkB,CAAC,SAAgB;IAC3C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;QAC9B,OAAO,KAAK,CAAC;KACb;IAED,OAAO,SAAS,CAAC,KAAK,CAAC,UAAA,IAAI;QAC1B,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,EAAE;YACxC,OAAO,IAAI,CAAC;SACZ;QACD,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;YAC7B,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;SACtC;QAED,OAAO,KAAK,CAAC;IACd,CAAC,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAAC,UAA2B,EAAE,IAAU,EAAE,uBAA+B;IAA/B,wCAAA,EAAA,+BAA+B;IAC9F,IAAA,UAAU,GAAK,IAAI,WAAT,CAAU;IAE5B,IAAI,UAAU,EAAE;QACf,UAAU,CAAC,IAAI,CAAC,UAAC,GAAG,EAAE,GAAG,IAAK,OAAA,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,QAAQ,EAA3B,CAA2B,CAAC,CAAC;KAC3D;IAED,IAAM,MAAM,GAAG,0BAAW,CAAC,iBAAiB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IAE/D,IAAI,uBAAuB,EAAE;QAC5B,IAAM,YAAY,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7C,IAAM,qBAAqB,GAAG,YAAY,IAAI,YAAY,CAAC,gBAAgB,CAAC;QAE5E,oEAAoE;QACpE,IACC,MAAM,CAAC,IAAI;YACX,MAAM,CAAC,IAAI,CAAC,gBAAgB;YAC5B,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAyB,CAAC;YACzD,CAAC,qBAAqB,EACrB;YACD,OAAO,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC;SACvC;QAED,OAAO,MAAM,CAAC;KACd;IAED,OAAO,MAAM,CAAC;AACf,CAAC;AAEY,QAAA,UAAU,GAAG,EAAE,qBAAqB,uBAAA,EAAE,CAAC"}
@@ -22401,7 +22401,7 @@ var lodash_1 = __webpack_require__(96486);
22401
22401
  var BringgException_1 = __webpack_require__(43605);
22402
22402
  var Logger_1 = __importDefault(__webpack_require__(55860));
22403
22403
  var abort_1 = __webpack_require__(34179);
22404
- var version = '9.50.13-pre.3';
22404
+ var version = '9.50.13-pre.6';
22405
22405
  function logErrorResponse(response) {
22406
22406
  var data = response.data, status = response.status;
22407
22407
  try {
@@ -25113,43 +25113,47 @@ exports.taskDefaultFields = [
25113
25113
  /***/ }),
25114
25114
 
25115
25115
  /***/ 3892:
25116
- /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
25116
+ /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
25117
25117
 
25118
25118
  "use strict";
25119
25119
 
25120
- var __rest = (this && this.__rest) || function (s, e) {
25121
- var t = {};
25122
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
25123
- t[p] = s[p];
25124
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
25125
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
25126
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
25127
- t[p[i]] = s[p[i]];
25128
- }
25129
- return t;
25130
- };
25131
25120
  Object.defineProperty(exports, "__esModule", ({ value: true }));
25132
25121
  exports.taskMerger = void 0;
25133
25122
  var merge_mapper_1 = __webpack_require__(59200);
25123
+ function hasNoActualChanges(diffArray) {
25124
+ if (!Array.isArray(diffArray)) {
25125
+ return false;
25126
+ }
25127
+ return diffArray.every(function (item) {
25128
+ if (item === undefined || item === null) {
25129
+ return true;
25130
+ }
25131
+ if (typeof item === 'object') {
25132
+ return Object.keys(item).length === 0;
25133
+ }
25134
+ return false;
25135
+ });
25136
+ }
25134
25137
  function mergeTaskIntoExisting(tasksStore, task, shouldRemoveInventories) {
25135
25138
  if (shouldRemoveInventories === void 0) { shouldRemoveInventories = false; }
25136
25139
  var way_points = task.way_points;
25137
25140
  if (way_points) {
25138
25141
  way_points.sort(function (wp1, wp2) { return wp1.position - wp2.position; });
25139
25142
  }
25143
+ var result = merge_mapper_1.mergeMapper.mergeIntoExisting(tasksStore, task);
25140
25144
  if (shouldRemoveInventories) {
25141
- var taskInventories = task.task_inventories;
25142
- var task_inventories = task.task_inventories, taskWithoutInventories = __rest(task, ["task_inventories"]);
25143
- var result = merge_mapper_1.mergeMapper.mergeIntoExisting(tasksStore, taskWithoutInventories);
25144
- if (taskInventories !== undefined && result.diff) {
25145
- result.diff.task_inventories = taskInventories;
25146
- }
25147
- if (result.current && result.current.task_inventories) {
25145
+ var existingTask = tasksStore.get(task.id);
25146
+ var hasInventoriesInStore = existingTask && existingTask.task_inventories;
25147
+ // Clean up task_inventories from diff if it hasn't actually changed
25148
+ if (result.diff &&
25149
+ result.diff.task_inventories &&
25150
+ hasNoActualChanges(result.diff.task_inventories) &&
25151
+ !hasInventoriesInStore) {
25148
25152
  delete result.current.task_inventories;
25149
25153
  }
25150
25154
  return result;
25151
25155
  }
25152
- return merge_mapper_1.mergeMapper.mergeIntoExisting(tasksStore, task);
25156
+ return result;
25153
25157
  }
25154
25158
  exports.taskMerger = { mergeTaskIntoExisting: mergeTaskIntoExisting };
25155
25159
  //# sourceMappingURL=task-merger.js.map