bx-rest 0.4.6 → 0.4.8

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 (94) hide show
  1. package/README.md +147 -0
  2. package/consts/part-name-methods.d.ts +3 -0
  3. package/esm2022/consts/part-name-methods.mjs +4 -1
  4. package/esm2022/map/app.mjs +4 -2
  5. package/esm2022/map/disk/base.mjs +18 -16
  6. package/esm2022/map/disk/storage.mjs +4 -4
  7. package/esm2022/map/task/elapseditem.mjs +2 -1
  8. package/esm2022/map/task/item/userfield.mjs +37 -0
  9. package/esm2022/map/tasks/task.mjs +8 -6
  10. package/esm2022/map/timeman.mjs +37 -0
  11. package/esm2022/map/user.mjs +2 -2
  12. package/esm2022/request/calendar/event.mjs +1 -1
  13. package/esm2022/request/task/commentitem.mjs +5 -5
  14. package/esm2022/request/task/elapseditem.mjs +6 -6
  15. package/esm2022/request/task/item/userfield.mjs +30 -0
  16. package/esm2022/request/task/item.mjs +17 -0
  17. package/esm2022/request/task.mjs +6 -4
  18. package/esm2022/request/tasks/task.mjs +4 -35
  19. package/esm2022/request/timeman.mjs +52 -0
  20. package/esm2022/request-navvy/calendar/event.mjs +2 -2
  21. package/esm2022/request-navvy/disk/storage.mjs +3 -3
  22. package/esm2022/request-navvy/server.mjs +2 -2
  23. package/esm2022/request-navvy/task/elapseditem.mjs +47 -38
  24. package/esm2022/request-navvy/task/item/userfield.mjs +24 -0
  25. package/esm2022/request-navvy/task/item.mjs +17 -0
  26. package/esm2022/request-navvy/task/operation/elapseditem.mjs +63 -54
  27. package/esm2022/request-navvy/task.mjs +6 -4
  28. package/esm2022/request-navvy/tasks/task.mjs +29 -29
  29. package/esm2022/request-navvy/timeman.mjs +24 -0
  30. package/esm2022/request-navvy/user.mjs +3 -3
  31. package/esm2022/rest.mjs +29 -25
  32. package/esm2022/services/Navvy/NavvySimple.mjs +2 -2
  33. package/esm2022/services/Navvy/NavvySupport.mjs +1 -2
  34. package/esm2022/services/navvy.mjs +1 -1
  35. package/esm2022/typification/base/all-key-free.mjs +2 -0
  36. package/esm2022/typification/base/modyfy.mjs +1 -1
  37. package/esm2022/typification/base/upper-case-keys.mjs +2 -0
  38. package/esm2022/typification/rest/task/access/getaccess.mjs +1 -1
  39. package/esm2022/typification/rest/task/item/userfield/getlist.mjs +2 -0
  40. package/esm2022/typification/rest/tasks/base/fieldsName.mjs +1 -52
  41. package/esm2022/typification/rest/tasks/task/add.mjs +1 -1
  42. package/esm2022/typification/rest/tasks/task/get.mjs +1 -1
  43. package/esm2022/typification/rest/tasks/task/list.mjs +1 -1
  44. package/esm2022/typification/rest/tasks/task/update.mjs +2 -0
  45. package/esm2022/typification/rest/timeman/status.mjs +2 -0
  46. package/fesm2022/bx-rest.mjs +413 -242
  47. package/fesm2022/bx-rest.mjs.map +1 -1
  48. package/map/app.d.ts +1 -1
  49. package/map/disk/base.d.ts +1 -1
  50. package/map/disk/storage.d.ts +2 -2
  51. package/map/task/elapseditem.d.ts +1 -1
  52. package/map/task/item/userfield.d.ts +8 -0
  53. package/map/tasks/task.d.ts +3 -3
  54. package/map/timeman.d.ts +7 -0
  55. package/map/user.d.ts +1 -1
  56. package/package.json +3 -3
  57. package/request/disk/folder.d.ts +1 -1
  58. package/request/disk/storage.d.ts +1 -1
  59. package/request/task/commentitem.d.ts +3 -3
  60. package/request/task/elapseditem.d.ts +3 -3
  61. package/request/task/item/userfield.d.ts +11 -0
  62. package/request/task/item.d.ts +8 -0
  63. package/request/task.d.ts +3 -1
  64. package/request/tasks/task.d.ts +9 -5
  65. package/request/timeman.d.ts +17 -0
  66. package/request-navvy/app.d.ts +1 -1
  67. package/request-navvy/calendar/event.d.ts +1 -1
  68. package/request-navvy/disk/folder.d.ts +9 -9
  69. package/request-navvy/disk/interlayer/storage.d.ts +1 -1
  70. package/request-navvy/disk/storage.d.ts +2 -2
  71. package/request-navvy/server.d.ts +1 -1
  72. package/request-navvy/task/elapseditem.d.ts +6 -4
  73. package/request-navvy/task/item/userfield.d.ts +14 -0
  74. package/request-navvy/task/item.d.ts +8 -0
  75. package/request-navvy/task/operation/elapseditem.d.ts +3 -3
  76. package/request-navvy/task.d.ts +3 -1
  77. package/request-navvy/tasks/task.d.ts +15 -8
  78. package/request-navvy/timeman.d.ts +14 -0
  79. package/request-navvy/user.d.ts +3 -3
  80. package/rest.d.ts +6 -2
  81. package/services/Navvy/NavvySimple.d.ts +2 -2
  82. package/services/navvy.d.ts +2 -2
  83. package/typification/base/all-key-free.d.ts +3 -0
  84. package/typification/base/upper-case-keys.d.ts +6 -0
  85. package/typification/rest/task/access/getaccess.d.ts +4 -1
  86. package/typification/rest/task/item/userfield/getlist.d.ts +91 -0
  87. package/typification/rest/tasks/task/get.d.ts +24 -6
  88. package/typification/rest/tasks/task/list.d.ts +19 -12
  89. package/typification/rest/tasks/task/update.d.ts +47 -0
  90. package/typification/rest/timeman/status.d.ts +28 -0
  91. package/esm2022/services/permission.mjs +0 -43
  92. package/esm2022/typification/permission.mjs +0 -2
  93. package/services/permission.d.ts +0 -9
  94. package/typification/permission.d.ts +0 -27
@@ -7,6 +7,7 @@ import { DateTime } from 'luxon';
7
7
  import * as i2 from '@angular/common/http';
8
8
  import { HttpParams, HttpHeaders } from '@angular/common/http';
9
9
  import flatten from 'just-flatten-it';
10
+ import camelCase from 'just-camel-case';
10
11
 
11
12
  class BX_REST_SETTINGS extends InjectionToken {
12
13
  constructor() {
@@ -53,7 +54,6 @@ class NavvySupport {
53
54
  }
54
55
  mapAndError(request) {
55
56
  return request.pipe(map(v => BXRestMapResult(v)), catchError(err => {
56
- // this.snackBar.error(errorText)
57
57
  return throwError(() => err);
58
58
  }));
59
59
  }
@@ -78,7 +78,7 @@ class NavvySimple extends NavvySupport {
78
78
  // ) as ReturnTypeNavvy<Observable<iBXRestAnswer<T | undefined>>, Observable<iBXRestAnswer<R | undefined>>>
79
79
  // }
80
80
  result() {
81
- return this.mapAndError(this.func).pipe(map(v => (v && this.map) ? this.map.call(this.mapClass, v) : v));
81
+ return this.mapAndError(this.func).pipe(map(v => (this.map) ? this.map.call(this.mapClass, v) : v));
82
82
  }
83
83
  }
84
84
 
@@ -409,7 +409,10 @@ const $updateTitle = 'updateTitle';
409
409
  const $updateColor = 'updateColor';
410
410
  const $updateAvatar = 'updateAvatar';
411
411
  const $setOwner = 'setOwner';
412
- const $mute = 'mute';
412
+ const $mute = 'mute';
413
+ const $timeMan = 'timeman';
414
+ const $item = 'item';
415
+ const $userfield = 'userfield';
413
416
 
414
417
  var partNameMethods$1 = /*#__PURE__*/Object.freeze({
415
418
  __proto__: null,
@@ -459,6 +462,7 @@ var partNameMethods$1 = /*#__PURE__*/Object.freeze({
459
462
  $im: $im,
460
463
  $instances: $instances,
461
464
  $isactionallowed: $isactionallowed,
465
+ $item: $item,
462
466
  $kill: $kill,
463
467
  $list: $list,
464
468
  $lists: $lists,
@@ -498,6 +502,7 @@ var partNameMethods$1 = /*#__PURE__*/Object.freeze({
498
502
  $template: $template,
499
503
  $terminate: $terminate,
500
504
  $time: $time,
505
+ $timeMan: $timeMan,
501
506
  $type: $type,
502
507
  $update: $update,
503
508
  $updateAvatar: $updateAvatar,
@@ -506,6 +511,7 @@ var partNameMethods$1 = /*#__PURE__*/Object.freeze({
506
511
  $uploadfile: $uploadfile,
507
512
  $url: $url,
508
513
  $user: $user,
514
+ $userfield: $userfield,
509
515
  $workflow: $workflow,
510
516
  $workgroup: $workgroup
511
517
  });
@@ -1469,17 +1475,17 @@ class BXRestTaskElapsedItem {
1469
1475
  constructor(http) {
1470
1476
  this.http = http;
1471
1477
  this.url = {
1472
- getmanifest: [$task, $elapseditem, $getmanifest],
1473
- getlist: [$task, $elapseditem, $getlist],
1478
+ getManifest: [$task, $elapseditem, $getmanifest],
1479
+ getList: [$task, $elapseditem, $getlist],
1474
1480
  get: [$task, $elapseditem, $get],
1475
1481
  add: [$task, $elapseditem, $add],
1476
1482
  delete: [$task, $elapseditem, $delete],
1477
- isactionallowed: [$task, $elapseditem, $isactionallowed],
1483
+ isActionAllowed: [$task, $elapseditem, $isactionallowed],
1478
1484
  update: [$task, $elapseditem, $update], // Изменяет параметры записи о затраченном времени
1479
1485
  };
1480
1486
  }
1481
1487
  getList(param = {}) {
1482
- return this.http.post(this.url.getlist, param);
1488
+ return this.http.post(this.url.getList, param);
1483
1489
  }
1484
1490
  add(param) {
1485
1491
  return this.http.post(this.url.add, param, {
@@ -1511,7 +1517,7 @@ class BXRestTaskElapsedItem {
1511
1517
  * @param param
1512
1518
  */
1513
1519
  isActionAllowed(param) {
1514
- return this.http.post(this.url.isactionallowed, param);
1520
+ return this.http.post(this.url.isActionAllowed, param);
1515
1521
  }
1516
1522
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestTaskElapsedItem, deps: [{ token: HttpBXServices }], target: i0.ɵɵFactoryTarget.Injectable }); }
1517
1523
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestTaskElapsedItem, providedIn: 'root' }); }
@@ -1527,13 +1533,13 @@ class BXRestTaskCommentItem {
1527
1533
  constructor(http) {
1528
1534
  this.http = http;
1529
1535
  this.url = {
1530
- getmanifest: [$task, $commentitem, $getmanifest],
1531
- getlist: [$task, $commentitem, $getlist],
1536
+ getManifest: [$task, $commentitem, $getmanifest],
1537
+ getList: [$task, $commentitem, $getlist],
1532
1538
  get: [$task, $commentitem, $get],
1533
1539
  add: [$task, $commentitem, $add],
1534
1540
  update: [$task, $commentitem, $update],
1535
1541
  delete: [$task, $commentitem, $delete],
1536
- isactionallowed: [$task, $commentitem, $isactionallowed], // Проверяет, разрешено ли действие
1542
+ isActionAllowed: [$task, $commentitem, $isactionallowed], // Проверяет, разрешено ли действие
1537
1543
  };
1538
1544
  }
1539
1545
  add(param) {
@@ -1546,7 +1552,7 @@ class BXRestTaskCommentItem {
1546
1552
  return this.http.post(this.url.get, param);
1547
1553
  }
1548
1554
  getlist(param) {
1549
- return this.http.post(this.url.getlist, param);
1555
+ return this.http.post(this.url.getList, param);
1550
1556
  }
1551
1557
  del(param) {
1552
1558
  return this.http.post(this.url.delete, param);
@@ -1578,13 +1584,54 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImpo
1578
1584
  }]
1579
1585
  }], ctorParameters: function () { return [{ type: HttpBXServices }]; } });
1580
1586
 
1587
+ class BXRestTaskItemUserField {
1588
+ constructor(http) {
1589
+ this.http = http;
1590
+ this.url = {
1591
+ getFields: [$task, $item, $userfield, 'getfields'],
1592
+ getTypes: [$task, $item, $userfield, 'gettypes'],
1593
+ add: [$task, $item, $userfield, $add],
1594
+ get: [$task, $item, $userfield, $get],
1595
+ getList: [$task, $item, $userfield, 'getlist'],
1596
+ update: [$task, $item, $userfield, $update],
1597
+ delete: [$task, $item, $userfield, $delete] // Удаление свойства.
1598
+ };
1599
+ }
1600
+ getList(param) {
1601
+ return this.http.post(this.url.getList, param);
1602
+ }
1603
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestTaskItemUserField, deps: [{ token: HttpBXServices }], target: i0.ɵɵFactoryTarget.Injectable }); }
1604
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestTaskItemUserField, providedIn: 'root' }); }
1605
+ }
1606
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestTaskItemUserField, decorators: [{
1607
+ type: Injectable,
1608
+ args: [{
1609
+ providedIn: 'root'
1610
+ }]
1611
+ }], ctorParameters: function () { return [{ type: HttpBXServices }]; } });
1612
+
1613
+ class BXRestTaskItem {
1614
+ constructor(userField) {
1615
+ this.userField = userField;
1616
+ }
1617
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestTaskItem, deps: [{ token: BXRestTaskItemUserField }], target: i0.ɵɵFactoryTarget.Injectable }); }
1618
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestTaskItem, providedIn: 'root' }); }
1619
+ }
1620
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestTaskItem, decorators: [{
1621
+ type: Injectable,
1622
+ args: [{
1623
+ providedIn: 'root'
1624
+ }]
1625
+ }], ctorParameters: function () { return [{ type: BXRestTaskItemUserField }]; } });
1626
+
1581
1627
  class BXRestTask {
1582
- constructor(elapsedItem, commentItem, planner) {
1628
+ constructor(elapsedItem, commentItem, planner, item) {
1583
1629
  this.elapsedItem = elapsedItem;
1584
1630
  this.commentItem = commentItem;
1585
1631
  this.planner = planner;
1632
+ this.item = item;
1586
1633
  }
1587
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestTask, deps: [{ token: BXRestTaskElapsedItem }, { token: BXRestTaskCommentItem }, { token: BXRestTaskPlanner }], target: i0.ɵɵFactoryTarget.Injectable }); }
1634
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestTask, deps: [{ token: BXRestTaskElapsedItem }, { token: BXRestTaskCommentItem }, { token: BXRestTaskPlanner }, { token: BXRestTaskItem }], target: i0.ɵɵFactoryTarget.Injectable }); }
1588
1635
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestTask, providedIn: 'root' }); }
1589
1636
  }
1590
1637
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestTask, decorators: [{
@@ -1592,7 +1639,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImpo
1592
1639
  args: [{
1593
1640
  providedIn: 'root'
1594
1641
  }]
1595
- }], ctorParameters: function () { return [{ type: BXRestTaskElapsedItem }, { type: BXRestTaskCommentItem }, { type: BXRestTaskPlanner }]; } });
1642
+ }], ctorParameters: function () { return [{ type: BXRestTaskElapsedItem }, { type: BXRestTaskCommentItem }, { type: BXRestTaskPlanner }, { type: BXRestTaskItem }]; } });
1596
1643
 
1597
1644
  class BXRestTasksTaskResult {
1598
1645
  constructor(http) {
@@ -1622,14 +1669,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImpo
1622
1669
  }]
1623
1670
  }], ctorParameters: function () { return [{ type: HttpBXServices }]; } });
1624
1671
 
1625
- // interface iBXRestParamTasksListWithSelect<S extends iBXRestTaskFieldsName> extends iBXRestParamTasksList<S> {
1626
- // select: iBXRestFilterGenerator<iBXRestTaskFieldsName>[]
1627
- // }
1628
- // interface iBXRestParamTasksGetWithSelect extends iBXRestParamTasksList {
1629
- // select: iBXRestFilterGenerator<iBXRestTaskFieldsName>[]
1630
- // }
1631
- // type SelectInterfaceListType<T> = T extends iBXRestParamTasksListWithSelect ? iBXRestTasksTaskListHttpDefault : iBXRestHttpTasksTaskList
1632
- // type SelectInterfaceGetType<T> = T extends iBXRestParamTasksGetWithSelect ? iBXRestTasksTaskGetHttpDefault : iBXRestHttpTasksTaskGet
1633
1672
  class BXRestTasksTask {
1634
1673
  constructor(result, http) {
1635
1674
  this.result = result;
@@ -1662,7 +1701,7 @@ class BXRestTasksTask {
1662
1701
  pause: [$tasks, $task, $pause],
1663
1702
  renew: [$tasks, $task, $renew],
1664
1703
  start: [$tasks, $task, $start],
1665
- startwatch: [$tasks, $task, 'startwatch'],
1704
+ startWatch: [$tasks, $task, 'startwatch'],
1666
1705
  stopwatch: [$tasks, $task, 'stopwatch'],
1667
1706
  update: [$tasks, $task, $update], // Обновляет задачу
1668
1707
  };
@@ -1679,32 +1718,9 @@ class BXRestTasksTask {
1679
1718
  defer(id) {
1680
1719
  return this.http.post(this.url.defer, { taskId: id });
1681
1720
  }
1682
- /*
1683
- update(taskId: number, updateFields: iBXRestTaskFieldsName[], task: iBXRestTask) {
1684
- let sendTask: Record<string, any> = {}
1685
- let taskTS: Record<string, any> = task
1686
- if (updateFields.length) {
1687
- for (let updateField of updateFields) {
1688
- if (taskTS[camelCase(updateField)]) {
1689
- sendTask[updateField] = taskTS[camelCase(updateField)]
1690
- }
1691
- }
1692
- if (Object.values(sendTask).length) {
1693
- return this.http.post(
1694
- this.url.update,
1695
- {taskId: taskId, fields: sendTask},
1696
- 'error to update task')
1697
- } else {
1698
- this.snackBar.error('not valid send data task')
1699
- console.error('not valid send data task', sendTask, task)
1700
- return of(undefined)
1701
- }
1702
- }
1703
-
1704
- this.snackBar.warning('not have field for update')
1705
- return of(undefined)
1721
+ update(param) {
1722
+ return this.http.post(this.url.update, param);
1706
1723
  }
1707
- */
1708
1724
  get(param) {
1709
1725
  return this.http.post(this.url.get, param);
1710
1726
  }
@@ -2449,6 +2465,54 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImpo
2449
2465
  }]
2450
2466
  }], ctorParameters: function () { return [{ type: HttpBXServices }]; } });
2451
2467
 
2468
+ class BXRestTimeMan {
2469
+ constructor(http) {
2470
+ this.http = http;
2471
+ this.url = {
2472
+ settings: [$timeMan, $settings],
2473
+ status: [$timeMan, $status],
2474
+ open: [$timeMan, 'open'],
2475
+ close: [$timeMan, 'close'],
2476
+ pause: [$timeMan, $pause], // Приостановить рабочий день
2477
+ // networkrange: {
2478
+ // check: this.baseUrl + 'networkrange.check', // Метод для проверки IP-адреса на вхождение в диапазоны сетевых адресов офисной сети
2479
+ // get: this.baseUrl + 'networkrange.get', // Метод для получения диапазонов сетевых адресов, входящих в офисную сеть
2480
+ // set: this.baseUrl + 'networkrange.set' // Метод для установки диапазонов сетевых адресов, входящих в офисную сеть. 18.5.0
2481
+ // },
2482
+ // timecontrol: {
2483
+ // report: {
2484
+ // add: this.baseUrl + 'timecontrol.report.add', // Метод для отправки отчета о выявленном отсутствии
2485
+ // get: this.baseUrl + 'timecontrol.reports.get', // Метод для получения отчета о выявленных отсутствиях
2486
+ // settings: {
2487
+ // get: this.baseUrl + 'timecontrol.reports.settings.get' // Метод для получения пользовательских настроек для построения интерфейса отчетов инструмента контроля времени
2488
+ // },
2489
+ // users: {
2490
+ // get: this.baseUrl + 'timecontrol.reports.users.get' // Метод для получения списка пользователей, относящихся к указанному подразделению. 18.5.0
2491
+ // }
2492
+ // },
2493
+ // settings: {
2494
+ // get: this.baseUrl + 'timecontrol.settings.get', // Метод для получения настроек инструмента контроля времени
2495
+ // set: this.baseUrl + 'timecontrol.settings.set' // Метод для установки настроек инструмента контроля времени
2496
+ // },
2497
+ // },
2498
+ // schedule: {
2499
+ // get: this.baseUrl + 'schedule.get' // Метод позволяет получить рабочий график по его идентификатору
2500
+ // }
2501
+ };
2502
+ }
2503
+ status(param = undefined) {
2504
+ return this.http.post(this.url.status, param);
2505
+ }
2506
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestTimeMan, deps: [{ token: HttpBXServices }], target: i0.ɵɵFactoryTarget.Injectable }); }
2507
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestTimeMan, providedIn: 'root' }); }
2508
+ }
2509
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestTimeMan, decorators: [{
2510
+ type: Injectable,
2511
+ args: [{
2512
+ providedIn: 'root'
2513
+ }]
2514
+ }], ctorParameters: function () { return [{ type: HttpBXServices }]; } });
2515
+
2452
2516
  class BaseMapServices extends BaseServices {
2453
2517
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BaseMapServices, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
2454
2518
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BaseMapServices, providedIn: 'root' }); }
@@ -2468,7 +2532,7 @@ class BXRestMapUser extends BaseMapServices {
2468
2532
  return (v) ? v.map(i => this.userHttpToTrace(i)) : undefined;
2469
2533
  }
2470
2534
  current(v) {
2471
- return this.userHttpToTrace(v);
2535
+ return (v) ? this.userHttpToTrace(v) : undefined;
2472
2536
  }
2473
2537
  userHttpToTrace(user) {
2474
2538
  let res = Object.assign(clone(user), {
@@ -2573,10 +2637,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImpo
2573
2637
  }], ctorParameters: function () { return [{ type: BXRestUserUserfield }]; } });
2574
2638
 
2575
2639
  class BXRestNavvyUser {
2576
- constructor(BXRestUserMap, BXRestUser, userfield) {
2640
+ constructor(BXRestUserMap, BXRestUser, userField) {
2577
2641
  this.BXRestUserMap = BXRestUserMap;
2578
2642
  this.BXRestUser = BXRestUser;
2579
- this.userfield = userfield;
2643
+ this.userField = userField;
2580
2644
  this.def = {
2581
2645
  params: { ACTIVE: 1, start: 0 }
2582
2646
  };
@@ -2898,48 +2962,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImpo
2898
2962
  }]
2899
2963
  }], ctorParameters: function () { return [{ type: BXRestNavvyListsElement }, { type: BXRestNavvyListsField }, { type: BXRestMapLists }, { type: BXRestLists }]; } });
2900
2964
 
2901
- class Permission {
2902
- static get() {
2903
- return SessionStorage.getItem('permission');
2904
- }
2905
- static set(param) {
2906
- SessionStorage.setItem('permission', Object.assign(this.get(), param));
2907
- }
2908
- static setTaskElapsedItem(idTask, ElapsedItem) {
2909
- let permission = Permission.get();
2910
- if (permission.tasks) {
2911
- let findTask = permission.tasks.find(i => i.id === idTask);
2912
- if (findTask) {
2913
- let findTaskElapsedItem = findTask.elapsedItem.find(i => i.id === ElapsedItem.id);
2914
- if (findTaskElapsedItem) {
2915
- if (ElapsedItem.verified.edit) {
2916
- findTaskElapsedItem.verified.edit = ElapsedItem.verified.edit;
2917
- findTaskElapsedItem.edit = ElapsedItem.edit;
2918
- }
2919
- if (ElapsedItem.verified.del) {
2920
- findTaskElapsedItem.verified.del = ElapsedItem.verified.del;
2921
- findTaskElapsedItem.del = ElapsedItem.del;
2922
- }
2923
- }
2924
- else {
2925
- findTask.elapsedItem.push(ElapsedItem);
2926
- }
2927
- }
2928
- SessionStorage.setItem('permission', permission);
2929
- }
2930
- }
2931
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: Permission, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2932
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: Permission, providedIn: 'root' }); }
2933
- }
2934
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: Permission, decorators: [{
2935
- type: Injectable,
2936
- args: [{
2937
- providedIn: 'root'
2938
- }]
2939
- }] });
2940
-
2941
2965
  class BXRestMapTaskElapsedItem extends BaseMapServices {
2942
2966
  update(p) {
2967
+ console.log('update', p);
2943
2968
  return (p == null);
2944
2969
  }
2945
2970
  getList(v) {
@@ -3049,24 +3074,26 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImpo
3049
3074
  }]
3050
3075
  }], ctorParameters: function () { return [{ type: BXRestTasksTaskResult }, { type: BXRestMapTasksTaskResult }]; } });
3051
3076
 
3052
- /// type SelectInterfaceTypeTasksTaskList<T> = T extends iBXRestHttpTasksTaskList ? iBXRestTasksTaskList : iBXRestTasksTaskListDefault
3053
3077
  class BXRestMapTasksTask extends BaseMapServices {
3054
3078
  constructor(BX_REST_SETTINGS, result) {
3055
3079
  super(BX_REST_SETTINGS);
3056
3080
  this.result = result;
3057
3081
  }
3058
- getaccess(v) {
3082
+ getAccess(v) {
3059
3083
  return (v && v.allowedActions) ? v.allowedActions : undefined;
3060
3084
  }
3061
3085
  add(item) {
3062
3086
  return (item) ? this.TaskBXHttpToTaskBX(item.task) : undefined;
3063
3087
  }
3064
3088
  get(item) {
3065
- return (item && item.task) ? this.TaskBXHttpToTaskBX(item.task) : undefined;
3089
+ return (item && item.task) ?
3090
+ this.TaskBXHttpToTaskBX(item.task)
3091
+ : undefined;
3066
3092
  }
3067
3093
  list(item) {
3068
- // @ts-ignore
3069
- return (item && item.tasks) ? item.tasks.map(i => this.TaskBXHttpToTaskBX(i)) : undefined;
3094
+ return (item && item.tasks)
3095
+ ? item.tasks.map(i => this.TaskBXHttpToTaskBX(i))
3096
+ : undefined;
3070
3097
  }
3071
3098
  TaskBXHttpToTaskBX(item) {
3072
3099
  let result = {};
@@ -3189,37 +3216,34 @@ class BXRestNavvyTasksTask {
3189
3216
  add(param) {
3190
3217
  return this.Navvy.simpleWithArg(this.BXRestTasksTask.add, param, this.BXRestMapTasksTask.add);
3191
3218
  }
3192
- /*
3193
- update(taskId: number, updateFields: iBXRestTaskFieldsName[], task: iBXRestTask) {
3194
- let sendTask: Record<string, any> = {}
3195
- let taskTS: Record<string, any> = task
3196
- if (updateFields.length) {
3197
- for (let updateField of updateFields) {
3198
- if (taskTS[camelCase(updateField)]) {
3199
- sendTask[updateField] = taskTS[camelCase(updateField)]
3200
- }
3201
- }
3202
- if (Object.values(sendTask).length) {
3203
- return this.http.post(
3204
- this.url.update,
3205
- {taskId: taskId, fields: sendTask},
3206
- 'error to update task')
3207
- } else {
3208
- this.snackBar.error('not valid send data task')
3209
- console.error('not valid send data task', sendTask, task)
3210
- return of(undefined)
3211
- }
3212
- }
3213
-
3214
- this.snackBar.warning('not have field for update')
3215
- return of(undefined)
3219
+ // TODO: переписать нормально
3220
+ update(task, updateFields) {
3221
+ const func = () => {
3222
+ let sendTask = {};
3223
+ let taskTS = task;
3224
+ if (updateFields.length) {
3225
+ for (let updateField of updateFields) {
3226
+ const key = String(updateField);
3227
+ if (taskTS[camelCase(key)]) {
3228
+ // @ts-ignore
3229
+ sendTask[key] = taskTS[camelCase(key)];
3230
+ }
3231
+ }
3232
+ // @ts-ignore
3233
+ if (Object.values(sendTask).length && task && task.id) {
3234
+ // @ts-ignore
3235
+ return this.BXRestTasksTask.update({ taskId: task.id, fields: sendTask });
3236
+ }
3237
+ }
3238
+ return of(undefined);
3239
+ };
3240
+ return new NavvySimple(this, this.BXRestMapTasksTask, func.call(this));
3216
3241
  }
3217
- */
3218
3242
  get(param) {
3219
- return this.Navvy.simpleWithArg(this.BXRestTasksTask.get, param, this.BXRestMapTasksTask.get);
3243
+ return this.Navvy.simpleWithArg((this.BXRestTasksTask.get), param, (this.BXRestMapTasksTask.get));
3220
3244
  }
3221
3245
  list(param = {}) {
3222
- return this.Navvy.PagNavTasks((this.BXRestTasksTask.list), param, this.BXRestMapTasksTask.list);
3246
+ return this.Navvy.PagNavTasks((this.BXRestTasksTask.list), param, (this.BXRestMapTasksTask.list));
3223
3247
  }
3224
3248
  /*
3225
3249
  listArray(requestArray: RequestApiTaskListBX = {}) {
@@ -3287,7 +3311,7 @@ class BXRestNavvyTasksTask {
3287
3311
  return this.Navvy.simple(this.BXRestTasksTask.getFields);
3288
3312
  }
3289
3313
  getAccess(param) {
3290
- return this.Navvy.simpleWithArg(this.BXRestTasksTask.getAccess, param, this.BXRestMapTasksTask.getaccess);
3314
+ return this.Navvy.simpleWithArg(this.BXRestTasksTask.getAccess, param, this.BXRestMapTasksTask.getAccess);
3291
3315
  }
3292
3316
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyTasksTask, deps: [{ token: BXRestNavvyTasksTaskResult }, { token: BXRestTasksTask }, { token: BXRestMapTasksTask }], target: i0.ɵɵFactoryTarget.Injectable }); }
3293
3317
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyTasksTask, providedIn: 'root' }); }
@@ -3344,7 +3368,8 @@ class BXRestNavvyOperationElapsedItem {
3344
3368
  };
3345
3369
  })).pipe(map(v => {
3346
3370
  if (v && v.length) {
3347
- return this.http.mapBranchResultWithoutKey(v).map(i => this.BXRestMapElapsedItem.getList(i)).filter((i) => i !== undefined).flat();
3371
+ const res = this.http.mapBranchResultWithoutKey(v);
3372
+ return this.BXRestMapElapsedItem.getList(res);
3348
3373
  }
3349
3374
  return undefined;
3350
3375
  }));
@@ -3366,7 +3391,7 @@ class BXRestNavvyOperationElapsedItem {
3366
3391
  .map(i => {
3367
3392
  return {
3368
3393
  [i]: {
3369
- name: this.http.getNameMethod([$tasks, $task, $getaccess]),
3394
+ name: this.http.getNameMethod([$task, $elapseditem, $isactionallowed]),
3370
3395
  param: {
3371
3396
  TASKID: i,
3372
3397
  ITEMID: 1,
@@ -3389,58 +3414,67 @@ class BXRestNavvyOperationElapsedItem {
3389
3414
  }));
3390
3415
  }
3391
3416
  checkPermissionAddElapsedTimeToTask(idTask) {
3392
- let permission = Permission.get();
3393
- if (permission?.tasks?.length) {
3394
- let findTask = permission.tasks.find(i => i.id === idTask);
3395
- if (findTask?.permission) {
3396
- return of(findTask.permission['ELAPSEDTIME.ADD']);
3417
+ // let permission = Permission.get()
3418
+ // if (permission?.tasks?.length) {
3419
+ // let findTask = permission.tasks.find(i => i.id === idTask)
3420
+ // if (findTask?.permission) {
3421
+ // return of(findTask.permission['ELAPSEDTIME.ADD'])
3422
+ // }
3423
+ return this.BXRestNavvyUser.current().result().pipe(mergeMap(self => {
3424
+ if (self) {
3425
+ return this.BXRestNavvyTasks.task.getAccess({
3426
+ id: idTask,
3427
+ users: [self.ID]
3428
+ }).result().pipe(
3429
+ // tap(v => {
3430
+ // if (v && v[self.ID]) {
3431
+ // Permission.set({
3432
+ // tasks: [{id: idTask, permission: v[self.ID], elapsedItem: []}]
3433
+ // })
3434
+ // }
3435
+ // }),
3436
+ map(v => {
3437
+ return (v && v[self.ID]) ? v[self.ID]['ELAPSEDTIME.ADD'] : false;
3438
+ }));
3397
3439
  }
3398
- return this.BXRestNavvyUser.current().result().pipe(mergeMap(self => {
3399
- if (self) {
3400
- return this.BXRestNavvyTasks.task.getAccess({
3401
- id: idTask,
3402
- users: [self.ID]
3403
- }).result().pipe(tap(v => {
3404
- if (v && v[self.ID]) {
3405
- Permission.set({
3406
- tasks: [{ id: idTask, permission: v[self.ID], elapsedItem: [] }]
3407
- });
3408
- }
3409
- }), map(v => {
3410
- return (v && v[self.ID]) ? v[self.ID]['ELAPSEDTIME.ADD'] : false;
3411
- }));
3412
- }
3413
- return of(undefined);
3414
- }));
3415
- }
3416
- return of(undefined);
3440
+ return of(undefined);
3441
+ }));
3442
+ // }
3443
+ // return of(undefined)
3417
3444
  }
3445
+ // вообще метод похоже даже на вредный в какомто смысле
3418
3446
  checkPermissionReadTask(idTask) {
3419
- let permission = Permission.get();
3420
- if (permission?.tasks?.length) {
3421
- let findTask = permission.tasks.find(i => i.id === idTask);
3422
- if (findTask?.permission) {
3423
- return of(findTask.permission.ACCEPT);
3447
+ // let permission = Permission.get()
3448
+ // if (permission?.tasks?.length) {
3449
+ // let findTask = permission.tasks.find(i => i.id === idTask)
3450
+ // if (findTask?.permission) {
3451
+ // return of(findTask.permission.ACCEPT)
3452
+ // }
3453
+ // console.log('idTask', idTask)
3454
+ return this.BXRestNavvyUser.current().result().pipe(mergeMap(self => {
3455
+ console.log('self', self);
3456
+ if (self) {
3457
+ return this.BXRestNavvyTasks.task.getAccess({
3458
+ id: idTask,
3459
+ users: [self.ID]
3460
+ }).result().pipe(
3461
+ // tap(v => {
3462
+ // if (v && v[self.ID]) {
3463
+ // Permission.set({
3464
+ // tasks: [{id: idTask, permission: v[self.ID], elapsedItem: []}]
3465
+ // })
3466
+ // }
3467
+ // }),
3468
+ map(v => {
3469
+ console.log('v', v);
3470
+ return (v && v[self.ID]) ? !!v[self.ID] : false; // отдельного флага на чтение нет, выходит что если права отдались то и права есть
3471
+ }));
3424
3472
  }
3425
- return this.BXRestNavvyUser.current().result().pipe(mergeMap(self => {
3426
- if (self) {
3427
- return this.BXRestNavvyTasks.task.getAccess({
3428
- id: idTask,
3429
- users: [self.ID]
3430
- }).result().pipe(tap(v => {
3431
- if (v && v[self.ID]) {
3432
- Permission.set({
3433
- tasks: [{ id: idTask, permission: v[self.ID], elapsedItem: [] }]
3434
- });
3435
- }
3436
- }), map(v => {
3437
- return (v && v[self.ID]) ? v[self.ID].ACCEPT : false;
3438
- }));
3439
- }
3440
- return of(undefined);
3441
- }));
3442
- }
3443
- return of(undefined);
3473
+ return of(undefined);
3474
+ }));
3475
+ // }
3476
+ //
3477
+ // return of(undefined)
3444
3478
  }
3445
3479
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyOperationElapsedItem, deps: [{ token: HttpBXServices }, { token: BXRestNavvyDelegateElapsedItem }, { token: BXRestMapTaskElapsedItem }, { token: BXRestNavvyUser }, { token: BXRestNavvyTasks }], target: i0.ɵɵFactoryTarget.Injectable }); }
3446
3480
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyOperationElapsedItem, providedIn: 'root' }); }
@@ -3472,7 +3506,13 @@ class BXRestNavvyElapsedItem {
3472
3506
  return this.delegate.getList(param);
3473
3507
  }
3474
3508
  add(param) {
3509
+ return new NavvySimple(this, this.BXRestMapElapsedItem, this.addBase.call(this, param));
3510
+ // return this.Navvy.simpleWithArg(this.addBase.bind(this), param)
3511
+ }
3512
+ addBase(param) {
3513
+ console.log('this.operation', this.operation);
3475
3514
  return this.operation.checkPermissionReadTask(param.TASKID).pipe(mergeMap(allowedReadTask => {
3515
+ console.log('allowedReadTask', allowedReadTask);
3476
3516
  if (allowedReadTask) {
3477
3517
  return this.operation.checkPermissionAddElapsedTimeToTask(param.TASKID).pipe(mergeMap(allowed => {
3478
3518
  if (allowed) {
@@ -3494,21 +3534,19 @@ class BXRestNavvyElapsedItem {
3494
3534
  * @param param
3495
3535
  */
3496
3536
  update(param) {
3497
- return this.Navvy.simple(() => this.operation.checkPermissionReadTask(param.TASKID).pipe(mergeMap(allowedReadTask => {
3537
+ const func = () => this.operation.checkPermissionReadTask(param.TASKID).pipe(mergeMap((allowedReadTask) => {
3498
3538
  if (allowedReadTask) {
3499
3539
  return this.isAllowedModify(param.TASKID, param.ITEMID).pipe(mergeMap(allowed => {
3500
3540
  if (allowed) {
3501
3541
  return this.BXRestElapsedItem.update(param);
3502
3542
  }
3503
- else {
3504
- return throwError(() => new Error('Отсутствуют права на изменение записи затраченного времени'));
3505
- }
3543
+ return throwError(() => new Error('Отсутствуют права на изменение записи затраченного времени'));
3506
3544
  }));
3507
3545
  }
3508
- else {
3509
- return throwError(() => new Error('Отсутствуют права на чтение задачи'));
3510
- }
3511
- })), this.BXRestMapElapsedItem.update);
3546
+ return throwError(() => new Error('Отсутствуют права на чтение задачи'));
3547
+ }));
3548
+ console.log('this.BXRestMapElapsedItem.update', this.BXRestMapElapsedItem.update);
3549
+ return new NavvySimple(this, this.BXRestMapElapsedItem, func.call(this), this.BXRestMapElapsedItem.update);
3512
3550
  }
3513
3551
  /*
3514
3552
  getAll(
@@ -3570,40 +3608,45 @@ class BXRestNavvyElapsedItem {
3570
3608
  )
3571
3609
  }
3572
3610
  */
3611
+ // TODO: разобраться что это за ебатня в комментах и вписать нормальной комент если она нужна
3573
3612
  isAllowedModify(idTask, idItem) {
3574
- let permission = Permission.get();
3575
- if (permission?.tasks?.length) {
3576
- let findTask = permission.tasks.find(i => i.id === idTask);
3577
- if (findTask) {
3578
- let find = findTask.elapsedItem.find(i => i.id === idItem);
3579
- if (find && find.verified.edit) {
3580
- return of(find.edit);
3581
- }
3582
- }
3583
- }
3613
+ // let permission = Permission.get()
3614
+ // if (permission?.tasks?.length) {
3615
+ // let findTask = permission.tasks.find(i => i.id === idTask)
3616
+ // if (findTask) {
3617
+ // let find = findTask.elapsedItem.find(i => i.id === idItem)
3618
+ // if (find && find.verified.edit) {
3619
+ // return of(find.edit)
3620
+ // }
3621
+ // }
3622
+ // }
3584
3623
  return this.isActionAllowed({
3585
3624
  TASKID: idTask,
3586
- ITEMID: 2,
3587
- ACTIONID: idItem
3588
- }).result().pipe(tap(v => {
3589
- if (v !== undefined) {
3590
- Permission.setTaskElapsedItem(idTask, {
3591
- id: idItem,
3592
- edit: v,
3593
- del: false,
3594
- verified: {
3595
- edit: true,
3596
- del: false,
3597
- }
3598
- });
3599
- }
3600
- }));
3625
+ ITEMID: idItem,
3626
+ ACTIONID: 2
3627
+ }).result();
3628
+ // .pipe(
3629
+ // tap(v => {
3630
+ // if (v !== undefined) {
3631
+ // Permission.setTaskElapsedItem(idTask,
3632
+ // {
3633
+ // id: idItem,
3634
+ // edit: v,
3635
+ // del: false,
3636
+ // verified: {
3637
+ // edit: true,
3638
+ // del: false,
3639
+ // }
3640
+ // })
3641
+ // }
3642
+ // })
3643
+ // )
3601
3644
  }
3602
3645
  isAllowedRemove(idTask, idItem) {
3603
3646
  return this.isActionAllowed({
3604
3647
  TASKID: idTask,
3605
- ITEMID: 3,
3606
- ACTIONID: idItem
3648
+ ITEMID: idItem,
3649
+ ACTIONID: 3
3607
3650
  }).result();
3608
3651
  }
3609
3652
  /**
@@ -3778,13 +3821,81 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImpo
3778
3821
  }]
3779
3822
  }], ctorParameters: function () { return [{ type: BXRestTaskPlanner }, { type: BXRestMapTaskPlaner }]; } });
3780
3823
 
3824
+ class BXRestMapTaskUserField extends BaseMapServices {
3825
+ getList(value) {
3826
+ if (value && value.length) {
3827
+ return value.map(i => {
3828
+ return {
3829
+ ID: this.toNum(i.ID),
3830
+ ENTITY_ID: 'TASKS_TASK',
3831
+ FIELD_NAME: i.FIELD_NAME,
3832
+ USER_TYPE_ID: i.USER_TYPE_ID,
3833
+ XML_ID: i.XML_ID,
3834
+ SORT: i.SORT,
3835
+ MULTIPLE: i.MULTIPLE === 'Y',
3836
+ MANDATORY: i.MULTIPLE === 'Y',
3837
+ SHOW_FILTER: i.SHOW_FILTER,
3838
+ SHOW_IN_LIST: i.MULTIPLE === 'Y',
3839
+ EDIT_IN_LIST: i.MULTIPLE === 'Y',
3840
+ IS_SEARCHABLE: i.MULTIPLE === 'Y',
3841
+ SETTINGS: i.SETTINGS,
3842
+ LIST: i.LIST,
3843
+ };
3844
+ });
3845
+ }
3846
+ return undefined;
3847
+ }
3848
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestMapTaskUserField, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
3849
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestMapTaskUserField, providedIn: 'root' }); }
3850
+ }
3851
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestMapTaskUserField, decorators: [{
3852
+ type: Injectable,
3853
+ args: [{
3854
+ providedIn: 'root'
3855
+ }]
3856
+ }] });
3857
+
3858
+ class BXRestNavvyTaskItemUserField {
3859
+ constructor(userField, map) {
3860
+ this.userField = userField;
3861
+ this.map = map;
3862
+ this.Navvy = new Navvy(userField, map);
3863
+ }
3864
+ getList(param = {}) {
3865
+ return this.Navvy.PagNav(this.userField.getList, param, this.map.getList);
3866
+ }
3867
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyTaskItemUserField, deps: [{ token: BXRestTaskItemUserField }, { token: BXRestMapTaskUserField }], target: i0.ɵɵFactoryTarget.Injectable }); }
3868
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyTaskItemUserField, providedIn: 'root' }); }
3869
+ }
3870
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyTaskItemUserField, decorators: [{
3871
+ type: Injectable,
3872
+ args: [{
3873
+ providedIn: 'root'
3874
+ }]
3875
+ }], ctorParameters: function () { return [{ type: BXRestTaskItemUserField }, { type: BXRestMapTaskUserField }]; } });
3876
+
3877
+ class BXRestNavvyTaskItem {
3878
+ constructor(userField) {
3879
+ this.userField = userField;
3880
+ }
3881
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyTaskItem, deps: [{ token: BXRestNavvyTaskItemUserField }], target: i0.ɵɵFactoryTarget.Injectable }); }
3882
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyTaskItem, providedIn: 'root' }); }
3883
+ }
3884
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyTaskItem, decorators: [{
3885
+ type: Injectable,
3886
+ args: [{
3887
+ providedIn: 'root'
3888
+ }]
3889
+ }], ctorParameters: function () { return [{ type: BXRestNavvyTaskItemUserField }]; } });
3890
+
3781
3891
  class BXRestNavvyTask {
3782
- constructor(elapsedItem, commentItem, planner) {
3892
+ constructor(elapsedItem, commentItem, planner, item) {
3783
3893
  this.elapsedItem = elapsedItem;
3784
3894
  this.commentItem = commentItem;
3785
3895
  this.planner = planner;
3896
+ this.item = item;
3786
3897
  }
3787
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyTask, deps: [{ token: BXRestNavvyElapsedItem }, { token: BXRestNavvyTaskCommentItem }, { token: BXRestNavvyTaskPlanner }], target: i0.ɵɵFactoryTarget.Injectable }); }
3898
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyTask, deps: [{ token: BXRestNavvyElapsedItem }, { token: BXRestNavvyTaskCommentItem }, { token: BXRestNavvyTaskPlanner }, { token: BXRestNavvyTaskItem }], target: i0.ɵɵFactoryTarget.Injectable }); }
3788
3899
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyTask, providedIn: 'root' }); }
3789
3900
  }
3790
3901
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyTask, decorators: [{
@@ -3792,7 +3903,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImpo
3792
3903
  args: [{
3793
3904
  providedIn: 'root'
3794
3905
  }]
3795
- }], ctorParameters: function () { return [{ type: BXRestNavvyElapsedItem }, { type: BXRestNavvyTaskCommentItem }, { type: BXRestNavvyTaskPlanner }]; } });
3906
+ }], ctorParameters: function () { return [{ type: BXRestNavvyElapsedItem }, { type: BXRestNavvyTaskCommentItem }, { type: BXRestNavvyTaskPlanner }, { type: BXRestNavvyTaskItem }]; } });
3796
3907
 
3797
3908
  class BXRestMapDiskBase extends BaseMapServices {
3798
3909
  separationFoldersAndFiles(arr) {
@@ -3839,22 +3950,24 @@ class BXRestMapDiskBase extends BaseMapServices {
3839
3950
  return object && object.TYPE && object.TYPE === 'folder';
3840
3951
  }
3841
3952
  FolderHttpToFolder(value) {
3842
- return {
3843
- ...value,
3844
- ...{
3845
- CREATED_BY: this.toNum(value.CREATED_BY),
3846
- CREATE_TIME: this.toDate(value.CREATE_TIME),
3847
- DELETED_BY: this.toNum(value.DELETED_BY),
3848
- DELETED_TYPE: this.toNum(value.DELETED_TYPE),
3849
- DELETE_TIME: this.toDate(value.CREATE_TIME),
3850
- ID: this.toNum(value.ID),
3851
- PARENT_ID: this.toNum(value.PARENT_ID),
3852
- REAL_OBJECT_ID: this.toNum(value.REAL_OBJECT_ID),
3853
- STORAGE_ID: this.toNum(value.STORAGE_ID),
3854
- UPDATED_BY: this.toNum(value.UPDATED_BY),
3855
- UPDATE_TIME: this.toDate(value.CREATE_TIME)
3953
+ return (value)
3954
+ ? {
3955
+ ...value,
3956
+ ...{
3957
+ CREATED_BY: this.toNum(value.CREATED_BY),
3958
+ CREATE_TIME: this.toDate(value.CREATE_TIME),
3959
+ DELETED_BY: this.toNum(value.DELETED_BY),
3960
+ DELETED_TYPE: this.toNum(value.DELETED_TYPE),
3961
+ DELETE_TIME: this.toDate(value.CREATE_TIME),
3962
+ ID: this.toNum(value.ID),
3963
+ PARENT_ID: this.toNum(value.PARENT_ID),
3964
+ REAL_OBJECT_ID: this.toNum(value.REAL_OBJECT_ID),
3965
+ STORAGE_ID: this.toNum(value.STORAGE_ID),
3966
+ UPDATED_BY: this.toNum(value.UPDATED_BY),
3967
+ UPDATE_TIME: this.toDate(value.CREATE_TIME)
3968
+ }
3856
3969
  }
3857
- };
3970
+ : undefined;
3858
3971
  }
3859
3972
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestMapDiskBase, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
3860
3973
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestMapDiskBase, providedIn: 'root' }); }
@@ -4031,11 +4144,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImpo
4031
4144
  }], ctorParameters: function () { return [{ type: BXRestDiskFile }, { type: BXRestMapDiskFile }]; } });
4032
4145
 
4033
4146
  class BXRestMapDiskStorage extends BXRestMapDiskBase {
4034
- getchildren(arr) {
4147
+ getChildren(arr) {
4035
4148
  return (arr) ? this.separationFoldersAndFiles(arr) : { file: [], folder: [] };
4036
4149
  }
4037
- addfolder(value) {
4038
- return this.FolderHttpToFolder(value);
4150
+ addFolder(value) {
4151
+ return (value) ? this.FolderHttpToFolder(value) : undefined;
4039
4152
  }
4040
4153
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestMapDiskStorage, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
4041
4154
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestMapDiskStorage, providedIn: 'root' }); }
@@ -4171,10 +4284,10 @@ class BXRestNavvyDiskStorage {
4171
4284
  }
4172
4285
  */
4173
4286
  getChildren(param) {
4174
- return this.Navvy.simpleWithArg(this.BXRestNavvyInterlayerDiskStorage.getChildren, param, this.BXRestMapDiskStorage.getchildren);
4287
+ return this.Navvy.simpleWithArg(this.BXRestNavvyInterlayerDiskStorage.getChildren, param, this.BXRestMapDiskStorage.getChildren);
4175
4288
  }
4176
4289
  addFolder(param) {
4177
- return this.Navvy.simpleWithArg(this.BXRestNavvyInterlayerDiskStorage.addFolder, param, this.BXRestMapDiskStorage.addfolder);
4290
+ return this.Navvy.simpleWithArg(this.BXRestNavvyInterlayerDiskStorage.addFolder, param, this.BXRestMapDiskStorage.addFolder);
4178
4291
  }
4179
4292
  uploadFile(param) {
4180
4293
  return this.Navvy.simpleWithArg(this.BXRestNavvyInterlayerDiskStorage.uploadFile, param);
@@ -4597,7 +4710,7 @@ class BXRestNavvyRestCalendarEvent {
4597
4710
  constructor(BXRestCalendarEvent, eventMap) {
4598
4711
  this.BXRestCalendarEvent = BXRestCalendarEvent;
4599
4712
  this.eventMap = eventMap;
4600
- this.Navvy = new Navvy(this.eventMap, undefined);
4713
+ this.Navvy = new Navvy(BXRestCalendarEvent, eventMap);
4601
4714
  }
4602
4715
  get(param) {
4603
4716
  return this.Navvy.simpleWithArg(this.BXRestCalendarEvent.get, param, this.eventMap.get);
@@ -4729,7 +4842,7 @@ class BXRestNavvyServer {
4729
4842
  constructor(BXRestServer, BXRestMapServer) {
4730
4843
  this.BXRestServer = BXRestServer;
4731
4844
  this.BXRestMapServer = BXRestMapServer;
4732
- this.Navvy = new Navvy(this.BXRestServer, BXRestMapServer);
4845
+ this.Navvy = new Navvy(BXRestServer, BXRestMapServer);
4733
4846
  }
4734
4847
  time() {
4735
4848
  return this.Navvy.simple(this.BXRestServer.time, this.BXRestMapServer.time);
@@ -4839,7 +4952,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImpo
4839
4952
 
4840
4953
  class BXRestMapApp extends BaseMapServices {
4841
4954
  info(value) {
4842
- return { ...value, ...{ ID: this.toNum(value.ID), PAYMENT_EXPIRED: value.PAYMENT_EXPIRED === 'Y' } };
4955
+ return (value)
4956
+ ? { ...value, ...{ ID: this.toNum(value.ID), PAYMENT_EXPIRED: value.PAYMENT_EXPIRED === 'Y' } }
4957
+ : undefined;
4843
4958
  }
4844
4959
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestMapApp, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
4845
4960
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestMapApp, providedIn: 'root' }); }
@@ -4873,6 +4988,60 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImpo
4873
4988
  }]
4874
4989
  }], ctorParameters: function () { return [{ type: BXRestApp }, { type: BXRestMapApp }]; } });
4875
4990
 
4991
+ class BXRestMapTimeMan {
4992
+ status(status) {
4993
+ if (status) {
4994
+ const duration = status.DURATION.split(':');
4995
+ const time_leaks = status.TIME_LEAKS.split(':');
4996
+ return {
4997
+ STATUS: status.STATUS,
4998
+ TIME_START: (status.TIME_START) ? new Date(status.TIME_START) : undefined,
4999
+ TIME_FINISH: (status.TIME_FINISH) ? new Date(status.TIME_FINISH) : undefined,
5000
+ DURATION: (duration.length && duration.length == 3)
5001
+ ? Number(duration[0]) * 60 * 60 + Number(duration[1]) * 60 + Number(duration[2]) : 0,
5002
+ TIME_LEAKS: (time_leaks.length && time_leaks.length == 3)
5003
+ ? Number(time_leaks[0]) * 60 * 60 + Number(time_leaks[1]) * 60 + Number(time_leaks[2]) : 0,
5004
+ ACTIVE: status.ACTIVE,
5005
+ IP_OPEN: status.IP_CLOSE,
5006
+ IP_CLOSE: status.IP_CLOSE,
5007
+ LAT_OPEN: status.LAT_OPEN,
5008
+ LON_OPEN: status.LON_OPEN,
5009
+ LAT_CLOSE: status.LAT_CLOSE,
5010
+ LON_CLOSE: status.LON_CLOSE,
5011
+ TZ_OFFSET: status.TZ_OFFSET
5012
+ };
5013
+ }
5014
+ return undefined;
5015
+ }
5016
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestMapTimeMan, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
5017
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestMapTimeMan, providedIn: 'root' }); }
5018
+ }
5019
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestMapTimeMan, decorators: [{
5020
+ type: Injectable,
5021
+ args: [{
5022
+ providedIn: 'root'
5023
+ }]
5024
+ }] });
5025
+
5026
+ class BXRestNavvyTimeMan {
5027
+ constructor(BXRestTimeMan, BXRestMapTimeMan) {
5028
+ this.BXRestTimeMan = BXRestTimeMan;
5029
+ this.BXRestMapTimeMan = BXRestMapTimeMan;
5030
+ this.Navvy = new Navvy(BXRestTimeMan, BXRestMapTimeMan);
5031
+ }
5032
+ status(param = undefined) {
5033
+ return this.Navvy.simpleWithArg(this.BXRestTimeMan.status, param, this.BXRestMapTimeMan.status);
5034
+ }
5035
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyTimeMan, deps: [{ token: BXRestTimeMan }, { token: BXRestMapTimeMan }], target: i0.ɵɵFactoryTarget.Injectable }); }
5036
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyTimeMan, providedIn: 'root' }); }
5037
+ }
5038
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyTimeMan, decorators: [{
5039
+ type: Injectable,
5040
+ args: [{
5041
+ providedIn: 'root'
5042
+ }]
5043
+ }], ctorParameters: function () { return [{ type: BXRestTimeMan }, { type: BXRestMapTimeMan }]; } });
5044
+
4876
5045
  class BXRestMaps extends BaseMapServices {
4877
5046
  profile(user) {
4878
5047
  return (user) ? { ...user, ...{ ID: this.toNum(user.ID) } } : undefined;
@@ -4888,7 +5057,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImpo
4888
5057
  }] });
4889
5058
 
4890
5059
  class BXRest {
4891
- constructor(user, lists, task, tasks, disk, bizProc, log, calendar, sonet_group, server, department, im, app, http) {
5060
+ constructor(user, lists, task, tasks, disk, bizProc, log, calendar, sonet_group, server, department, im, app, timeMan, http) {
4892
5061
  this.user = user;
4893
5062
  this.lists = lists;
4894
5063
  this.task = task;
@@ -4902,12 +5071,13 @@ class BXRest {
4902
5071
  this.department = department;
4903
5072
  this.im = im;
4904
5073
  this.app = app;
5074
+ this.timeMan = timeMan;
4905
5075
  this.http = http;
4906
5076
  }
4907
5077
  profile() {
4908
5078
  return this.http.post(['profile']);
4909
5079
  }
4910
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRest, deps: [{ token: BXRestUser }, { token: BXRestLists }, { token: BXRestTask }, { token: BXRestTasks }, { token: BXRestDisk }, { token: BXRestBizProc }, { token: BXRestLog }, { token: BXRestCalendar }, { token: BXRestSonetGroup }, { token: BXRestServer }, { token: BXRestDepartment }, { token: BXRestIm }, { token: BXRestApp }, { token: HttpBXServices }], target: i0.ɵɵFactoryTarget.Injectable }); }
5080
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRest, deps: [{ token: BXRestUser }, { token: BXRestLists }, { token: BXRestTask }, { token: BXRestTasks }, { token: BXRestDisk }, { token: BXRestBizProc }, { token: BXRestLog }, { token: BXRestCalendar }, { token: BXRestSonetGroup }, { token: BXRestServer }, { token: BXRestDepartment }, { token: BXRestIm }, { token: BXRestApp }, { token: BXRestTimeMan }, { token: HttpBXServices }], target: i0.ɵɵFactoryTarget.Injectable }); }
4911
5081
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRest, providedIn: 'root' }); }
4912
5082
  }
4913
5083
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRest, decorators: [{
@@ -4915,9 +5085,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImpo
4915
5085
  args: [{
4916
5086
  providedIn: 'root'
4917
5087
  }]
4918
- }], ctorParameters: function () { return [{ type: BXRestUser }, { type: BXRestLists }, { type: BXRestTask }, { type: BXRestTasks }, { type: BXRestDisk }, { type: BXRestBizProc }, { type: BXRestLog }, { type: BXRestCalendar }, { type: BXRestSonetGroup }, { type: BXRestServer }, { type: BXRestDepartment }, { type: BXRestIm }, { type: BXRestApp }, { type: HttpBXServices }]; } });
5088
+ }], ctorParameters: function () { return [{ type: BXRestUser }, { type: BXRestLists }, { type: BXRestTask }, { type: BXRestTasks }, { type: BXRestDisk }, { type: BXRestBizProc }, { type: BXRestLog }, { type: BXRestCalendar }, { type: BXRestSonetGroup }, { type: BXRestServer }, { type: BXRestDepartment }, { type: BXRestIm }, { type: BXRestApp }, { type: BXRestTimeMan }, { type: HttpBXServices }]; } });
4919
5089
  class BXRestNavvy {
4920
- constructor(user, lists, task, tasks, disk, bizProc, log, calendar, sonet_group, server, department, im, app, BXRest, BXRestMap) {
5090
+ constructor(user, lists, task, tasks, disk, bizProc, log, calendar, sonet_group, server, department, im, app, timeMan, BXRest, BXRestMap) {
4921
5091
  this.user = user;
4922
5092
  this.lists = lists;
4923
5093
  this.task = task;
@@ -4931,6 +5101,7 @@ class BXRestNavvy {
4931
5101
  this.department = department;
4932
5102
  this.im = im;
4933
5103
  this.app = app;
5104
+ this.timeMan = timeMan;
4934
5105
  this.BXRest = BXRest;
4935
5106
  this.BXRestMap = BXRestMap;
4936
5107
  this.Navvy = new Navvy(this.BXRest, this.BXRestMap);
@@ -4938,7 +5109,7 @@ class BXRestNavvy {
4938
5109
  profile() {
4939
5110
  return this.Navvy.simple(this.BXRest.profile, this.BXRestMap.profile);
4940
5111
  }
4941
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvy, deps: [{ token: BXRestNavvyUser }, { token: BXRestNavvyLists }, { token: BXRestNavvyTask }, { token: BXRestNavvyTasks }, { token: BXRestNavvyDisk }, { token: BXRestNavvyBizProc }, { token: BXRestNavvyLog }, { token: BXRestNavvyCalendar }, { token: BXRestNavvySonetGroup }, { token: BXRestNavvyServer }, { token: BXRestNavvyDepartment }, { token: BXRestNavvyIm }, { token: BXRestNavvyApp }, { token: BXRest }, { token: BXRestMaps }], target: i0.ɵɵFactoryTarget.Injectable }); }
5112
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvy, deps: [{ token: BXRestNavvyUser }, { token: BXRestNavvyLists }, { token: BXRestNavvyTask }, { token: BXRestNavvyTasks }, { token: BXRestNavvyDisk }, { token: BXRestNavvyBizProc }, { token: BXRestNavvyLog }, { token: BXRestNavvyCalendar }, { token: BXRestNavvySonetGroup }, { token: BXRestNavvyServer }, { token: BXRestNavvyDepartment }, { token: BXRestNavvyIm }, { token: BXRestNavvyApp }, { token: BXRestNavvyTimeMan }, { token: BXRest }, { token: BXRestMaps }], target: i0.ɵɵFactoryTarget.Injectable }); }
4942
5113
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvy, providedIn: 'root' }); }
4943
5114
  }
4944
5115
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvy, decorators: [{
@@ -4946,7 +5117,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImpo
4946
5117
  args: [{
4947
5118
  providedIn: 'root'
4948
5119
  }]
4949
- }], ctorParameters: function () { return [{ type: BXRestNavvyUser }, { type: BXRestNavvyLists }, { type: BXRestNavvyTask }, { type: BXRestNavvyTasks }, { type: BXRestNavvyDisk }, { type: BXRestNavvyBizProc }, { type: BXRestNavvyLog }, { type: BXRestNavvyCalendar }, { type: BXRestNavvySonetGroup }, { type: BXRestNavvyServer }, { type: BXRestNavvyDepartment }, { type: BXRestNavvyIm }, { type: BXRestNavvyApp }, { type: BXRest }, { type: BXRestMaps }]; } });
5120
+ }], ctorParameters: function () { return [{ type: BXRestNavvyUser }, { type: BXRestNavvyLists }, { type: BXRestNavvyTask }, { type: BXRestNavvyTasks }, { type: BXRestNavvyDisk }, { type: BXRestNavvyBizProc }, { type: BXRestNavvyLog }, { type: BXRestNavvyCalendar }, { type: BXRestNavvySonetGroup }, { type: BXRestNavvyServer }, { type: BXRestNavvyDepartment }, { type: BXRestNavvyIm }, { type: BXRestNavvyApp }, { type: BXRestNavvyTimeMan }, { type: BXRest }, { type: BXRestMaps }]; } });
4950
5121
  class BXRestMap {
4951
5122
  constructor(lists) {
4952
5123
  this.lists = lists;