bx-rest 0.9.3 → 0.9.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.
Files changed (87) hide show
  1. package/README.md +56 -11
  2. package/consts/part-name-methods.d.ts +1 -1
  3. package/esm2022/consts/part-name-methods.mjs +2 -2
  4. package/esm2022/map/im/recent.mjs +1 -1
  5. package/esm2022/public-api.mjs +2 -6
  6. package/esm2022/request/app.mjs +2 -3
  7. package/esm2022/request/bizproc/activity.mjs +1 -1
  8. package/esm2022/request/bizproc/event.mjs +1 -1
  9. package/esm2022/request/bizproc/robot.mjs +1 -1
  10. package/esm2022/request/bizproc/task.mjs +1 -1
  11. package/esm2022/request/bizproc/workflow/instance.mjs +1 -1
  12. package/esm2022/request/bizproc/workflow/template.mjs +1 -1
  13. package/esm2022/request/department.mjs +8 -3
  14. package/esm2022/request/disk/attachedObject.mjs +5 -3
  15. package/esm2022/request/disk/file.mjs +6 -3
  16. package/esm2022/request/disk/folder.mjs +16 -3
  17. package/esm2022/request/lists/element.mjs +6 -3
  18. package/esm2022/request/log/blogcomment.mjs +1 -1
  19. package/esm2022/request/log/blogpost.mjs +6 -3
  20. package/esm2022/request/server.mjs +5 -3
  21. package/esm2022/request/socialnetwork/api/contentview.mjs +5 -3
  22. package/esm2022/request/socialnetwork/api/livefeed/blogpost/important.mjs +5 -3
  23. package/esm2022/request/socialnetwork.mjs +1 -2
  24. package/esm2022/request/sonet_group.mjs +5 -3
  25. package/esm2022/request/task/elapseditem.mjs +9 -3
  26. package/esm2022/request/task/item/userfield.mjs +5 -3
  27. package/esm2022/request/task/planner.mjs +3 -3
  28. package/esm2022/request/tasks/task/result.mjs +7 -3
  29. package/esm2022/request/tasks/task.mjs +13 -3
  30. package/esm2022/request/user/userfield.mjs +5 -3
  31. package/esm2022/request/user.mjs +11 -3
  32. package/esm2022/request-navvy/bizproc/task.mjs +26 -0
  33. package/esm2022/request-navvy/bizproc/workflow.mjs +20 -2
  34. package/esm2022/request-navvy/bizproc.mjs +3 -1
  35. package/esm2022/request-navvy/crm.mjs +1 -1
  36. package/esm2022/request-navvy/disk/attachedObject.mjs +3 -3
  37. package/esm2022/request-navvy/socialnetwork/api/contentview.mjs +3 -3
  38. package/esm2022/request-navvy/task/commentitem.mjs +9 -3
  39. package/esm2022/request-navvy/task/operation/elapseditem.mjs +1 -2
  40. package/esm2022/request-navvy/timeman.mjs +1 -25
  41. package/esm2022/rest/base.mjs +1 -3
  42. package/esm2022/services/http/HttpBX.mjs +21 -14
  43. package/esm2022/services/http/http.mjs +52 -53
  44. package/esm2022/services/http/sessionKey.mjs +152 -52
  45. package/esm2022/typification/rest/bizproc/task/complete.mjs +2 -0
  46. package/esm2022/typification/rest/bizproc/task/delegate.mjs +2 -0
  47. package/esm2022/typification/rest/bizproc/task/list.mjs +2 -0
  48. package/esm2022/typification/rest/bizproc/workflow/instances.mjs +2 -0
  49. package/esm2022/typification/rest/bizproc/workflow/kill.mjs +2 -0
  50. package/esm2022/typification/rest/bizproc/workflow/terminate.mjs +2 -0
  51. package/esm2022/typification/rest/bizproc.mjs +7 -1
  52. package/fesm2022/bx-rest.mjs +518 -1074
  53. package/fesm2022/bx-rest.mjs.map +1 -1
  54. package/package.json +13 -7
  55. package/public-api.d.ts +1 -5
  56. package/request/department.d.ts +6 -1
  57. package/request/disk/attachedObject.d.ts +3 -1
  58. package/request/disk/file.d.ts +4 -1
  59. package/request/disk/folder.d.ts +14 -1
  60. package/request/lists/element.d.ts +4 -1
  61. package/request/log/blogpost.d.ts +4 -1
  62. package/request/server.d.ts +3 -1
  63. package/request/sonet_group.d.ts +3 -1
  64. package/request/task/elapseditem.d.ts +7 -1
  65. package/request/tasks/task/result.d.ts +5 -1
  66. package/request/tasks/task.d.ts +11 -1
  67. package/request/user/userfield.d.ts +3 -1
  68. package/request/user.d.ts +9 -1
  69. package/request-navvy/bizproc/task.d.ts +16 -0
  70. package/request-navvy/bizproc/workflow.d.ts +13 -1
  71. package/request-navvy/bizproc.d.ts +2 -0
  72. package/request-navvy/task/commentitem.d.ts +7 -1
  73. package/request-navvy/task/operation/elapseditem.d.ts +9 -10
  74. package/rest/base.d.ts +0 -2
  75. package/services/http/http.d.ts +1 -1
  76. package/services/http/sessionKey.d.ts +16 -2
  77. package/typification/rest/bizproc/task/complete.d.ts +7 -0
  78. package/typification/rest/bizproc/task/delegate.d.ts +5 -0
  79. package/typification/rest/bizproc/task/list.d.ts +52 -0
  80. package/typification/rest/bizproc/workflow/instances.d.ts +20 -0
  81. package/typification/rest/bizproc/workflow/kill.d.ts +3 -0
  82. package/typification/rest/bizproc/workflow/terminate.d.ts +4 -0
  83. package/typification/rest/bizproc.d.ts +6 -0
  84. package/esm2022/request/timeman.mjs +0 -57
  85. package/esm2022/typification/base/methods.mjs +0 -700
  86. package/request/timeman.d.ts +0 -11
  87. package/typification/base/methods.d.ts +0 -6
package/package.json CHANGED
@@ -1,19 +1,25 @@
1
1
  {
2
2
  "name": "bx-rest",
3
- "version": "0.9.3",
4
- "description": "Bitrix24 REST API client angular, vue or typescript",
3
+ "version": "0.9.6",
4
+ "description": "Bitrix24 REST API client and TypeScript SDK for Angular, Vue and browser apps",
5
5
  "keywords": [
6
6
  "bitrix",
7
7
  "bitrix24",
8
- "rest",
9
- "api",
10
- "client",
8
+ "bitrix24-rest",
9
+ "bitrix24-api",
10
+ "bitrix24-sdk",
11
+ "bitrix-rest",
12
+ "bitrix-rest-client",
13
+ "bx24",
14
+ "bx24-rest",
15
+ "bx24-api",
11
16
  "rest-client",
12
17
  "api-client",
13
- "bx24",
14
18
  "typescript",
15
19
  "angular",
16
- "vue"
20
+ "vue",
21
+ "oauth2",
22
+ "sessid"
17
23
  ],
18
24
  "author": "Aricatofuka",
19
25
  "license": "MIT",
package/public-api.d.ts CHANGED
@@ -3,15 +3,11 @@
3
3
  */
4
4
  export { BXRestSettings } from './settings';
5
5
  export { BXRestMapResult } from './functions/mapResult';
6
- /**
7
- * @deprecated
8
- * use BXRestNavvy
9
- */
10
- export { BXRest } from './rest/base';
11
6
  export { BXRestNavvy } from './rest/navvy';
12
7
  export { BXRestMap } from './rest/map';
13
8
  export { Navvy } from './services/navvy';
14
9
  export { HttpBXServices as BXRestRequest } from './services/http/HttpBX';
10
+ export { SessionKeyServices, SessionKeyError } from './services/http/sessionKey';
15
11
  export { instanceOfiBXRestAnswerSuccess as isBXRestAnswerSuccess } from './functions/mapResult';
16
12
  export { HttpNavvyServices } from './services/http/httpNavvy';
17
13
  export * as partNameMethods from './consts/part-name-methods';
@@ -4,7 +4,12 @@ import { iBXRestParamDepartmentAdd } from '../typification/rest/department/add';
4
4
  import { iBXRestParamDepartmentDel } from '../typification/rest/department/del';
5
5
  import { iBXRestDepartmentUpdate } from '../typification/rest/department/update';
6
6
  export declare class BXRestDepartment {
7
- protected url: import("../typification/base/workpiece/methods-list").iBXRestWorkpieceMethodsDepartment<string[], string[], string[], string[]>;
7
+ protected url: {
8
+ get: string[];
9
+ del: string[];
10
+ add: string[];
11
+ update: string[];
12
+ };
8
13
  private readonly http;
9
14
  get(param?: iBXRestParamDepartmentGet): import("rxjs").Observable<import("../typification/rest/base").iBXRestAnswer<iBXRestDepartmentHttp[]> | undefined>;
10
15
  add(param: iBXRestParamDepartmentAdd): import("rxjs").Observable<import("../typification/rest/base").iBXRestAnswer<number> | undefined>;
@@ -1,6 +1,8 @@
1
1
  import { iBXRestDiskAttachedObjectHttp, iBXRestParamRestDiskAttachedObject } from '../../typification/rest/disk/AttachedObject';
2
2
  export declare class BXRestDiskAttachedObject {
3
- protected url: import("../../typification/base/workpiece/methods-list").iBXRestWorkpieceMethodsDiskAttachedObject<string[]>;
3
+ protected url: {
4
+ get: string[];
5
+ };
4
6
  private readonly http;
5
7
  get(param: iBXRestParamRestDiskAttachedObject): import("rxjs").Observable<import("../../typification/rest/base").iBXRestAnswer<iBXRestDiskAttachedObjectHttp> | undefined>;
6
8
  }
@@ -1,6 +1,9 @@
1
1
  import { iBXRestDiskFileHttp, iBXRestParamDiskFileGet, iBXRestParamDiskFileMarkDeleted } from '../../typification/rest/disk/file';
2
2
  export declare class BXRestDiskFile {
3
- protected url: import("../../typification/base/workpiece/methods-list").iBXRestWorkpieceMethodsDiskFile<string[], string[]>;
3
+ protected url: {
4
+ get: string[];
5
+ markDeleted: string[];
6
+ };
4
7
  private readonly http;
5
8
  get(param: iBXRestParamDiskFileGet): import("rxjs").Observable<import("../../typification/rest/base").iBXRestAnswer<iBXRestDiskFileHttp> | undefined>;
6
9
  markDeleted(param: iBXRestParamDiskFileMarkDeleted): import("rxjs").Observable<import("../../typification/rest/base").iBXRestAnswer<iBXRestDiskFileHttp> | undefined>;
@@ -7,7 +7,20 @@ import { iBXRestDiskFolderCopyToParam } from '../../typification/rest/disk/folde
7
7
  import { iBXRestDiskFolderMoveToParam } from '../../typification/rest/disk/folder/moveTo';
8
8
  import { iBXRestDiskFolderRenameParam } from '../../typification/rest/disk/folder/rename';
9
9
  export declare class BXRestDiskFolder {
10
- protected url: import("../../typification/base/workpiece/methods-list").iBXRestWorkpieceMethodsDiskFolder<string[], string[], string[], string[], string[], string[], string[], string[], string[], string[], string[], string[]>;
10
+ protected url: {
11
+ getFields: string[];
12
+ get: string[];
13
+ getChildren: string[];
14
+ addSubFolder: string[];
15
+ copyTo: string[];
16
+ moveTo: string[];
17
+ rename: string[];
18
+ deleteTree: string[];
19
+ markDeleted: string[];
20
+ restore: string[];
21
+ uploadFile: string[];
22
+ getExternalLink: string[];
23
+ };
11
24
  private readonly http;
12
25
  /**
13
26
  * Возвращает папку по идентификатору
@@ -1,7 +1,10 @@
1
1
  import { iBXRestHttpListsElement, iBXRestParamListsElementGet } from '../../typification/rest/lists/element/get';
2
2
  import { iBXRestParamListsElementAdd } from '../../typification/rest/lists/element/add';
3
3
  export declare class BXRestListsElement {
4
- protected readonly url: import("../../typification/base/workpiece/methods-list").iBXRestWorkpieceMethodsListsElement<string[], string[]>;
4
+ protected readonly url: {
5
+ add: string[];
6
+ get: string[];
7
+ };
5
8
  private readonly http;
6
9
  get(pram: iBXRestParamListsElementGet): import("rxjs").Observable<import("../../typification/rest/base").iBXRestAnswer<iBXRestHttpListsElement[]> | undefined>;
7
10
  add(param: iBXRestParamListsElementAdd): import("rxjs").Observable<import("../../typification/rest/base").iBXRestAnswer<number> | undefined>;
@@ -1,7 +1,10 @@
1
1
  import { iBXRestParamLogBlogPostAdd } from '../../typification/rest/log/blogpost/add';
2
2
  import { iBXRestBlogPostHttp, iBXRestParamBlogPostGet } from '../../typification/rest/log/blogpost/get';
3
3
  export declare class BXRestLogBlogPost {
4
- protected url: import("../../typification/base/workpiece/methods-list").iBXRestWorkpieceMethodsLogBlogpost<string[], string[]>;
4
+ protected url: {
5
+ add: string[];
6
+ get: string[];
7
+ };
5
8
  private readonly http;
6
9
  add(param: iBXRestParamLogBlogPostAdd): import("rxjs").Observable<import("../../typification/rest/base").iBXRestAnswer<boolean> | undefined>;
7
10
  get(param?: iBXRestParamBlogPostGet): import("rxjs").Observable<import("../../typification/rest/base").iBXRestAnswer<iBXRestBlogPostHttp[]> | undefined>;
@@ -1,5 +1,7 @@
1
1
  export declare class BXRestServer {
2
2
  private readonly http;
3
- protected url: import("../typification/base/workpiece/methods-list").iBXRestWorkpieceMethodsServer<string[]>;
3
+ protected url: {
4
+ time: string[];
5
+ };
4
6
  time(): import("rxjs").Observable<import("../typification/rest/base").iBXRestAnswer<string> | undefined>;
5
7
  }
@@ -1,6 +1,8 @@
1
1
  import { iBXRestParamSonetGroupGet, iBXRestSonetGroupGetHttp } from '../typification/rest/sonet_group/get';
2
2
  export declare class BXRestSonetGroup {
3
- protected url: import("../typification/base/workpiece/methods-list").iBXRestWorkpieceMethodsSonetGroup<string[]>;
3
+ protected url: {
4
+ get: string[];
5
+ };
4
6
  private http;
5
7
  get(param?: iBXRestParamSonetGroupGet): import("rxjs").Observable<import("../typification/rest/base").iBXRestAnswer<iBXRestSonetGroupGetHttp[]> | undefined>;
6
8
  }
@@ -1,6 +1,12 @@
1
1
  import { iBXRestParamElapseditemGet, iBXRestTaskElapsedItemHttp, iBXRestParamAddElapseditem, iBXRestParamUpdateElapseditem, iBXRestParamDelElapseditem, iIsActionAllowedParam } from '../../typification/rest/task';
2
2
  export declare class BXRestTaskElapsedItem {
3
- protected url: import("../../typification/base/workpiece/methods-list").iBXRestWorkpieceMethodsTaskElapsedItem<string[], string[], string[], string[], string[]>;
3
+ protected url: {
4
+ getList: string[];
5
+ add: string[];
6
+ delete: string[];
7
+ isActionAllowed: string[];
8
+ update: string[];
9
+ };
4
10
  private readonly http;
5
11
  getList(param?: iBXRestParamElapseditemGet): import("rxjs").Observable<import("../../typification/rest/base").iBXRestAnswer<iBXRestTaskElapsedItemHttp[]> | undefined>;
6
12
  add(param: iBXRestParamAddElapseditem): import("rxjs").Observable<import("../../typification/rest/base").iBXRestAnswer<number> | undefined>;
@@ -1,7 +1,11 @@
1
1
  import { iBXParamRestTasksTaskResultAdd, iBXRestTasksTaskResultHttp } from '../../../typification/rest/tasks/task/result/result';
2
2
  import { iBXRestParamTasksTaskResultList } from '../../../typification/rest/tasks/result/list';
3
3
  export declare class BXRestTasksTaskResult {
4
- protected url: import("../../../typification/base/workpiece/methods-list").iBXRestWorkpieceMethodsTasksTaskResult<string[], string[], string[]>;
4
+ protected url: {
5
+ list: string[];
6
+ addFromComment: string[];
7
+ deleteFromComment: string[];
8
+ };
5
9
  private readonly http;
6
10
  deleteFromComment(commentID: number): import("rxjs").Observable<import("../../../typification/rest/base").iBXRestAnswer<null> | undefined>;
7
11
  addFromComment(param: iBXParamRestTasksTaskResultAdd): import("rxjs").Observable<import("../../../typification/rest/base").iBXRestAnswer<iBXRestTasksTaskResultHttp> | undefined>;
@@ -12,7 +12,17 @@ import { iBXRestParamTasksTaskUpdate } from '../../typification/rest/tasks/task/
12
12
  import { iBXRestTaskFieldsName } from '../../typification/rest/tasks/base/fields-name';
13
13
  import { iBXRestTasksTaskBaseAnswer } from '../../typification/rest/tasks/task/base';
14
14
  export declare class BXRestTasksTask {
15
- protected url: import("../../typification/base/workpiece/methods-list").iBXRestWorkpieceMethodsTasksTask<string[], string[], string[], string[], string[], string[], string[], string[], string[], string[], import("../../typification/base/workpiece/methods-list").iBXRestWorkpieceMethodsTasksTaskResult<string[], string[], string[]>>;
15
+ protected url: {
16
+ add: string[];
17
+ approve: string[];
18
+ complete: string[];
19
+ defer: string[];
20
+ get: string[];
21
+ getFields: string[];
22
+ getAccess: string[];
23
+ list: string[];
24
+ update: string[];
25
+ };
16
26
  readonly result: BXRestTasksTaskResult;
17
27
  private readonly http;
18
28
  add<CustomFields extends object = object>(param: iBXRestParamTaskAdd<CustomFields>): import("rxjs").Observable<import("../../typification/rest/base").iBXRestAnswer<iBXRestTasksTaskBaseAnswer<iBXRestTasksTaskGetHttpDefault>> | undefined>;
@@ -1,6 +1,8 @@
1
1
  import { iBXRestUserUserField } from '../../typification/rest/user/userfield/list';
2
2
  export declare class BXRestUserUserfield {
3
- protected url: import("../../typification/base/workpiece/methods-list").iBXRestWorkpieceMethodsUserField<string[], string[], string[], string[], import("../../typification/base/workpiece/methods-list").iBXRestWorkpieceMethodsUserFieldList<string[]>>;
3
+ protected url: {
4
+ list: string[];
5
+ };
4
6
  private readonly http;
5
7
  list(): import("rxjs").Observable<import("../../typification/rest/base").iBXRestAnswer<iBXRestUserUserField[]> | undefined>;
6
8
  }
package/request/user.d.ts CHANGED
@@ -5,7 +5,15 @@ import { BXRestUserUserfield } from './user/userfield';
5
5
  export declare class BXRestUser {
6
6
  private readonly http;
7
7
  readonly userfield: BXRestUserUserfield;
8
- protected url: import("../typification/base/workpiece/methods-list").iBXRestWorkpieceMethodsUser<string[], string[], string[], string[], string[], string[], string[], import("../typification/base/workpiece/methods-list").iBXRestWorkpieceMethodsUserField<string[], string[], string[], string[], import("../typification/base/workpiece/methods-list").iBXRestWorkpieceMethodsUserFieldList<string[]>>>;
8
+ protected url: {
9
+ admin: string[];
10
+ get: string[];
11
+ current: string[];
12
+ update: string[];
13
+ search: string[];
14
+ access: string[];
15
+ fields: string[];
16
+ };
9
17
  admin(): import("rxjs").Observable<import("../typification/rest/base").iBXRestAnswer<boolean> | undefined>;
10
18
  get(params?: iBXRestParamUserGet): import("rxjs").Observable<import("../typification/rest/base").iBXRestAnswer<iBXRestUserHttp[]> | undefined>;
11
19
  current(): import("rxjs").Observable<import("../typification/rest/base").iBXRestAnswer<iBXRestUserHttp> | undefined>;
@@ -0,0 +1,16 @@
1
+ import { iBXRestBizprocTask, iBXRestParamBizprocTaskComplete, iBXRestParamBizprocTaskDelegate, iBXRestParamBizprocTaskList } from '../../typification/rest/bizproc';
2
+ export declare class BXRestNavvyBizProcTask {
3
+ private readonly Navvy;
4
+ /**
5
+ * Возвращает список заданий бизнес-процессов
6
+ */
7
+ list(param?: iBXRestParamBizprocTaskList): import("../../services/navvy").NavvyPag<iBXRestBizprocTask, iBXRestBizprocTask, iBXRestParamBizprocTaskList>;
8
+ /**
9
+ * Выполняет задание бизнес-процесса
10
+ */
11
+ complete(param: iBXRestParamBizprocTaskComplete): import("../../services/navvy").NavvySimple<boolean, boolean, iBXRestParamBizprocTaskComplete | undefined>;
12
+ /**
13
+ * Делегирует задания бизнес-процесса другому пользователю
14
+ */
15
+ delegate(param: iBXRestParamBizprocTaskDelegate): import("../../services/navvy").NavvySimple<boolean, boolean, iBXRestParamBizprocTaskDelegate | undefined>;
16
+ }
@@ -1,8 +1,20 @@
1
- import { iBXRestParamBizprocWorkflowStart } from '../../typification/rest/bizproc';
1
+ import { iBXRestBizprocWorkflowInstance, iBXRestParamBizprocWorkflowInstances, iBXRestParamBizprocWorkflowKill, iBXRestParamBizprocWorkflowStart, iBXRestParamBizprocWorkflowTerminate } from '../../typification/rest/bizproc';
2
2
  export declare class BXRestNavvyBXRestBizProcWorkflow {
3
3
  private readonly Navvy;
4
4
  /**
5
5
  * Запускает Бизнес-процесс
6
6
  */
7
7
  start(param: iBXRestParamBizprocWorkflowStart): import("../../services/navvy").NavvySimple<unknown, unknown, iBXRestParamBizprocWorkflowStart | undefined>;
8
+ /**
9
+ * Возвращает список запущенных бизнес-процессов
10
+ */
11
+ instances(param?: iBXRestParamBizprocWorkflowInstances): import("../../services/navvy").NavvyPag<iBXRestBizprocWorkflowInstance, iBXRestBizprocWorkflowInstance, iBXRestParamBizprocWorkflowInstances>;
12
+ /**
13
+ * Останавливает активный бизнес-процесс с сохранением его данных
14
+ */
15
+ terminate(param: iBXRestParamBizprocWorkflowTerminate): import("../../services/navvy").NavvySimple<boolean, boolean, iBXRestParamBizprocWorkflowTerminate | undefined>;
16
+ /**
17
+ * Удаляет запущенный бизнес-процесс вместе со всеми его данными
18
+ */
19
+ kill(param: iBXRestParamBizprocWorkflowKill): import("../../services/navvy").NavvySimple<boolean, boolean, iBXRestParamBizprocWorkflowKill | undefined>;
8
20
  }
@@ -1,6 +1,8 @@
1
1
  import { Observable } from 'rxjs';
2
+ import { BXRestNavvyBizProcTask } from './bizproc/task';
2
3
  import { BXRestNavvyBXRestBizProcWorkflow } from './bizproc/workflow';
3
4
  export declare class BXRestNavvyBizProc {
5
+ readonly task: BXRestNavvyBizProcTask;
4
6
  readonly workflow: BXRestNavvyBXRestBizProcWorkflow;
5
7
  private readonly BXRestNavvyLists;
6
8
  /**
@@ -1,6 +1,12 @@
1
1
  import { iBXRestParamTaskCommentItemGet, iBXRestTaskCommentItemUpdate, iBXRestCommentTaskAdd, BXRestTaskCommentItemGetList, BXRestTaskCommentItemDelete, iBXRestTaskComment, iBXRestTaskCommentHtml } from '../../typification/rest/task';
2
2
  export declare class BXRestNavvyTaskCommentItem {
3
- protected url: import("../../typification/base/workpiece/methods-list").iBXRestWorkpieceMethodsTaskCommentItem<string[], string[], string[], string[], string[]>;
3
+ protected url: {
4
+ getList: string[];
5
+ get: string[];
6
+ add: string[];
7
+ update: string[];
8
+ delete: string[];
9
+ };
4
10
  private readonly Navvy;
5
11
  add(param: iBXRestCommentTaskAdd): import("../../services/navvy").NavvySimple<number, number, iBXRestCommentTaskAdd | undefined>;
6
12
  update(param: iBXRestTaskCommentItemUpdate): import("../../services/navvy").NavvySimple<boolean, boolean, iBXRestTaskCommentItemUpdate | undefined>;
@@ -1,5 +1,4 @@
1
1
  import { iBXRestParamElapseditemGet, iBXRestTaskElapsedItemHttp, iIsActionAllowedParam, iBXRestParamAddElapseditem, iBXRestParamUpdateElapseditem, iBXRestParamDelElapseditem } from '../../../typification/rest/task';
2
- import { Observable } from 'rxjs';
3
2
  import { iBXRestUser } from '../../../typification/rest/user';
4
3
  import { BXRestNavvyElapsedItem } from '../elapseditem';
5
4
  export declare class BXRestNavvyOperationElapsedItem {
@@ -10,8 +9,8 @@ export declare class BXRestNavvyOperationElapsedItem {
10
9
  private readonly BXRestNavvyTasks;
11
10
  constructor(BXRestNavvyElapsedItem: BXRestNavvyElapsedItem);
12
11
  getByInterval(idsUsers: number[], dateStart: Date, dateEnd: Date): import("../../../services/navvy").NavvyAlterPagNav<iBXRestTaskElapsedItemHttp, import("../../../typification/rest/task").iBXRestTaskElapsedItem, iBXRestParamElapseditemGet>;
13
- getListByIDTask(ids: number[]): Observable<import("../../../typification/rest/task").iBXRestTaskElapsedItem[] | undefined>;
14
- checkPermissionAddElapsedTimeToTaskArr(tasks: number[], userCurrent?: iBXRestUser | undefined): Observable<{
12
+ getListByIDTask(ids: number[]): import("rxjs").Observable<import("../../../typification/rest/task").iBXRestTaskElapsedItem[] | undefined>;
13
+ checkPermissionAddElapsedTimeToTaskArr(tasks: number[], userCurrent?: iBXRestUser | undefined): import("rxjs").Observable<{
15
14
  id: number;
16
15
  value: boolean;
17
16
  }[] | undefined>;
@@ -21,29 +20,29 @@ export declare class BXRestNavvyOperationElapsedItem {
21
20
  * @param idTask
22
21
  * @param userCurrent
23
22
  */
24
- checkPermissionAddElapsedTimeToTask(idTask: number, userCurrent?: iBXRestUser | undefined): Observable<boolean | undefined>;
23
+ checkPermissionAddElapsedTimeToTask(idTask: number, userCurrent?: iBXRestUser | undefined): import("rxjs").Observable<boolean | undefined>;
25
24
  /**
26
25
  * Проверка на возможность прочтения такски
27
26
  *
28
27
  * @param idTask
29
28
  * @param userCurrent
30
29
  */
31
- checkPermissionReadTask(idTask: number, userCurrent?: iBXRestUser | undefined): Observable<boolean | undefined>;
30
+ checkPermissionReadTask(idTask: number, userCurrent?: iBXRestUser | undefined): import("rxjs").Observable<boolean | undefined>;
32
31
  /**
33
32
  * Законченный метод добавления записи с предварительной проверкой прав
34
33
  *
35
34
  * TODO: добавить сохранение предварительно проверенных записей
36
35
  * @param param
37
36
  */
38
- add(param: iBXRestParamAddElapseditem): Observable<number | undefined>;
37
+ add(param: iBXRestParamAddElapseditem): import("rxjs").Observable<number | undefined>;
39
38
  /**
40
39
  * Законченный метод обновления записи с предварительной проверкой прав
41
40
  *
42
41
  * TODO: добавить сохранение предварительно проверенных записей
43
42
  * @param param
44
43
  */
45
- update(param: iBXRestParamUpdateElapseditem): Observable<null | undefined>;
46
- isAllowedModify(idTask: number, idItem: number): Observable<boolean | undefined>;
44
+ update(param: iBXRestParamUpdateElapseditem): import("rxjs").Observable<null | undefined>;
45
+ isAllowedModify(idTask: number, idItem: number): import("rxjs").Observable<boolean | undefined>;
47
46
  /**
48
47
  * isActionAllowed с фиксом на проверку возможности чтения задачи записи
49
48
  * (без проверки даёт ошибку)
@@ -54,12 +53,12 @@ export declare class BXRestNavvyOperationElapsedItem {
54
53
  * 3 - ACTION_ELAPSED_TIME_REMOVE
55
54
  * @param param
56
55
  */
57
- isActionAllowed(param: iIsActionAllowedParam): Observable<boolean | undefined>;
56
+ isActionAllowed(param: iIsActionAllowedParam): import("rxjs").Observable<boolean | undefined>;
58
57
  /**
59
58
  * Полноценный метод удаления
60
59
  *
61
60
  * @param param
62
61
  */
63
- del(param: iBXRestParamDelElapseditem): Observable<null | undefined>;
62
+ del(param: iBXRestParamDelElapseditem): import("rxjs").Observable<null | undefined>;
64
63
  private isAllowedRemove;
65
64
  }
package/rest/base.d.ts CHANGED
@@ -9,7 +9,6 @@ import { BXRestSonetGroup } from '../request/sonet_group';
9
9
  import { BXRestServer } from '../request/server';
10
10
  import { BXRestDepartment } from '../request/department';
11
11
  import { BXRestApp } from '../request/app';
12
- import { BXRestTimeMan } from '../request/timeman';
13
12
  import { iBXRestProfileHttp } from '../typification/rest/profile';
14
13
  import { iBXRestBatch, iBXRestParamBatch } from '../typification/rest/batch';
15
14
  import { BXRestSocialNetWork } from '../request/socialnetwork';
@@ -27,7 +26,6 @@ export declare class BXRest {
27
26
  readonly server: BXRestServer;
28
27
  readonly department: BXRestDepartment;
29
28
  readonly app: BXRestApp;
30
- readonly timeMan: BXRestTimeMan;
31
29
  readonly socialNetWork: BXRestSocialNetWork;
32
30
  readonly pull: BXRestPull;
33
31
  profile(): import("rxjs").Observable<import("../typification/rest/base").iBXRestAnswer<iBXRestProfileHttp> | undefined>;
@@ -1,6 +1,6 @@
1
1
  import { Observable } from 'rxjs';
2
2
  import { AxiosInstance } from 'axios';
3
- import SessionKeyServices from '../../services/http/sessionKey';
3
+ import { SessionKeyServices } from '../../services/http/sessionKey';
4
4
  import { iHttpParamSettings } from '../../typification/rest/settings';
5
5
  import { BaseHttp } from './base/base';
6
6
  export declare class HttpServices extends BaseHttp {
@@ -1,7 +1,10 @@
1
1
  import { Observable, Subscription } from 'rxjs';
2
2
  import { iBXRestAuth } from '../../typification/auth/save';
3
3
  type IKeyAuth = 'sessid' | 'auth' | string;
4
- export default class SessionKeyServices {
4
+ export declare class SessionKeyError extends Error {
5
+ constructor(message: string);
6
+ }
7
+ export declare class SessionKeyServices {
5
8
  authHave: boolean;
6
9
  authData: iBXRestAuth | undefined;
7
10
  subscribe: {
@@ -12,9 +15,20 @@ export default class SessionKeyServices {
12
15
  subscribeAll(): void;
13
16
  getAuth(): string;
14
17
  getKeyAuth(): IKeyAuth;
15
- getSessid(): any;
18
+ getSessid(): string;
16
19
  getAuthParams(): string | undefined;
17
20
  getCheckAuthParamsIsOn(): boolean;
21
+ getAuthError(operation?: string): SessionKeyError;
18
22
  getBaseUrl(): Observable<string | undefined>;
23
+ getBaseUrlError(operation?: string): SessionKeyError;
24
+ private getAuthCheckedPlaces;
25
+ private getBxSessid;
26
+ private getSearchParam;
27
+ private getCookie;
28
+ private getLocalStorage;
29
+ private setLocalStorage;
30
+ private getSessionItem;
31
+ private getStorageItem;
32
+ private normalizeValue;
19
33
  }
20
34
  export {};
@@ -0,0 +1,7 @@
1
+ export type iBXRestBizprocTaskCompleteStatus = 1 | 2 | 3 | 4 | 'yes' | 'no' | 'ok' | 'cancel';
2
+ export interface iBXRestParamBizprocTaskComplete {
3
+ TASK_ID: number;
4
+ STATUS: iBXRestBizprocTaskCompleteStatus;
5
+ COMMENT?: string;
6
+ FIELDS?: Record<string, unknown>;
7
+ }
@@ -0,0 +1,5 @@
1
+ export interface iBXRestParamBizprocTaskDelegate {
2
+ TASK_IDS: number[];
3
+ FROM_USER_ID: number;
4
+ TO_USER_ID: number;
5
+ }
@@ -0,0 +1,52 @@
1
+ import { iBXRestPagination } from '../../base/api-pagination-bx';
2
+ import { iBXRestParamSort } from '../../base/sort';
3
+ export type iBXRestBizprocTaskField = 'ID' | 'WORKFLOW_ID' | 'DOCUMENT_NAME' | 'DESCRIPTION' | 'NAME' | 'MODIFIED' | 'WORKFLOW_STARTED' | 'WORKFLOW_STARTED_BY' | 'OVERDUE_DATE' | 'WORKFLOW_TEMPLATE_ID' | 'WORKFLOW_TEMPLATE_NAME' | 'WORKFLOW_STATE' | 'STATUS' | 'USER_ID' | 'USER_STATUS' | 'MODULE_ID' | 'ENTITY' | 'DOCUMENT_ID' | 'ACTIVITY' | 'ACTIVITY_NAME' | 'DOCUMENT_URL' | 'PARAMETERS';
4
+ export interface iBXRestParamBizprocTaskList extends iBXRestPagination {
5
+ select?: iBXRestBizprocTaskField[];
6
+ filter?: Partial<Record<iBXRestBizprocTaskField, string | number | null>>;
7
+ order?: Partial<Record<iBXRestBizprocTaskField, iBXRestParamSort>>;
8
+ }
9
+ export interface iBXRestBizprocTaskParameterField {
10
+ Id: string;
11
+ Type: string;
12
+ Name: string | Record<string, string>;
13
+ Description: string | Record<string, string>;
14
+ Multiple: boolean;
15
+ Required: boolean;
16
+ Options: Record<string, unknown> | null;
17
+ Settings: Record<string, unknown> | null;
18
+ Default: unknown;
19
+ }
20
+ export interface iBXRestBizprocTaskParameters {
21
+ CommentLabel?: string;
22
+ CommentRequired?: 'N' | 'Y' | 'YA' | 'YR';
23
+ ShowComment?: 'N' | 'Y';
24
+ StatusOkLabel?: string;
25
+ StatusYesLabel?: string;
26
+ StatusNoLabel?: string;
27
+ Fields?: iBXRestBizprocTaskParameterField[];
28
+ }
29
+ export interface iBXRestBizprocTask {
30
+ ID: string;
31
+ WORKFLOW_ID?: string;
32
+ DOCUMENT_NAME?: string;
33
+ DESCRIPTION?: string;
34
+ NAME?: string;
35
+ MODIFIED?: string;
36
+ WORKFLOW_STARTED?: string;
37
+ WORKFLOW_STARTED_BY?: string;
38
+ OVERDUE_DATE?: string | null;
39
+ WORKFLOW_TEMPLATE_ID?: string;
40
+ WORKFLOW_TEMPLATE_NAME?: string;
41
+ WORKFLOW_STATE?: string;
42
+ STATUS?: string;
43
+ USER_ID?: string;
44
+ USER_STATUS?: string;
45
+ MODULE_ID?: string;
46
+ ENTITY?: string;
47
+ DOCUMENT_ID?: string;
48
+ ACTIVITY?: string;
49
+ ACTIVITY_NAME?: string;
50
+ DOCUMENT_URL?: string;
51
+ PARAMETERS?: iBXRestBizprocTaskParameters;
52
+ }
@@ -0,0 +1,20 @@
1
+ import { iBXRestFilterGenerator } from '../../base/filter-generator';
2
+ import { iBXRestPagination } from '../../base/api-pagination-bx';
3
+ import { iBXRestParamSort } from '../../base/sort';
4
+ export type iBXRestBizprocWorkflowInstanceField = 'ID' | 'MODIFIED' | 'OWNED_UNTIL' | 'MODULE_ID' | 'ENTITY' | 'DOCUMENT_ID' | 'STARTED' | 'STARTED_BY' | 'TEMPLATE_ID';
5
+ export interface iBXRestParamBizprocWorkflowInstances extends iBXRestPagination {
6
+ select?: iBXRestBizprocWorkflowInstanceField[];
7
+ filter?: iBXRestFilterGenerator<Record<iBXRestBizprocWorkflowInstanceField, string | number | null>>;
8
+ order?: Partial<Record<iBXRestBizprocWorkflowInstanceField, iBXRestParamSort>>;
9
+ }
10
+ export interface iBXRestBizprocWorkflowInstance {
11
+ ID: string;
12
+ MODIFIED?: string;
13
+ OWNED_UNTIL?: string | null;
14
+ MODULE_ID?: string;
15
+ ENTITY?: string;
16
+ DOCUMENT_ID?: string;
17
+ STARTED?: string;
18
+ STARTED_BY?: string;
19
+ TEMPLATE_ID?: string;
20
+ }
@@ -0,0 +1,3 @@
1
+ export interface iBXRestParamBizprocWorkflowKill {
2
+ ID: string;
3
+ }
@@ -0,0 +1,4 @@
1
+ export interface iBXRestParamBizprocWorkflowTerminate {
2
+ ID: string;
3
+ STATUS?: string;
4
+ }
@@ -2,5 +2,11 @@
2
2
  * Файл для возможности импорта интерфейсов данного пакета в локальные проекты
3
3
  */
4
4
  export * from './bizproc/base/filedEnum';
5
+ export * from './bizproc/task/complete';
6
+ export * from './bizproc/task/delegate';
7
+ export * from './bizproc/task/list';
8
+ export * from './bizproc/workflow/instances';
9
+ export * from './bizproc/workflow/kill';
5
10
  export * from './bizproc/workflow/start';
11
+ export * from './bizproc/workflow/terminate';
6
12
  export * from './bizproc/workflow/template/list';
@@ -1,57 +0,0 @@
1
- import { HttpBXServices } from '../services/http/HttpBX';
2
- import { $status, $timeMan } from '../consts/part-name-methods';
3
- export class BXRestTimeMan {
4
- constructor() {
5
- this.url = {
6
- // /**
7
- // * Получение настроек рабочего времени пользователя
8
- // */
9
- // settings: [$timeMan, $settings],
10
- /**
11
- * Получение информации о текущем рабочем дне пользователя
12
- */
13
- status: [$timeMan, $status],
14
- // /**
15
- // * Начать новый рабочий день либо возобновить закрытый или приостановленный
16
- // */
17
- // open: [$timeMan, 'open'],
18
- // /**
19
- // * Закрыть рабочий день
20
- // */
21
- // close: [$timeMan, 'close'],
22
- // /**
23
- // * Приостановить рабочий день
24
- // */
25
- // pause: [$timeMan, $pause],
26
- // networkrange: {
27
- // check: this.baseUrl + 'networkrange.check', // Метод для проверки IP-адреса на вхождение в диапазоны сетевых адресов офисной сети
28
- // get: this.baseUrl + 'networkrange.get', // Метод для получения диапазонов сетевых адресов, входящих в офисную сеть
29
- // set: this.baseUrl + 'networkrange.set' // Метод для установки диапазонов сетевых адресов, входящих в офисную сеть. 18.5.0
30
- // },
31
- // timecontrol: {
32
- // report: {
33
- // add: this.baseUrl + 'timecontrol.report.add', // Метод для отправки отчета о выявленном отсутствии
34
- // get: this.baseUrl + 'timecontrol.reports.get', // Метод для получения отчета о выявленных отсутствиях
35
- // settings: {
36
- // get: this.baseUrl + 'timecontrol.reports.settings.get' // Метод для получения пользовательских настроек для построения интерфейса отчетов инструмента контроля времени
37
- // },
38
- // users: {
39
- // get: this.baseUrl + 'timecontrol.reports.users.get' // Метод для получения списка пользователей, относящихся к указанному подразделению. 18.5.0
40
- // }
41
- // },
42
- // settings: {
43
- // get: this.baseUrl + 'timecontrol.settings.get', // Метод для получения настроек инструмента контроля времени
44
- // set: this.baseUrl + 'timecontrol.settings.set' // Метод для установки настроек инструмента контроля времени
45
- // },
46
- // },
47
- // schedule: {
48
- // get: this.baseUrl + 'schedule.get' // Метод позволяет получить рабочий график по его идентификатору
49
- // }
50
- };
51
- this.http = new HttpBXServices();
52
- }
53
- status(param = undefined) {
54
- return this.http.post(this.url.status, param);
55
- }
56
- }
57
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZW1hbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2J4LXJlc3Qvc3JjL3JlcXVlc3QvdGltZW1hbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUE7QUFDeEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQTtBQUUvRCxNQUFNLE9BQU8sYUFBYTtJQUExQjtRQUNxQixRQUFHLEdBQUc7WUFDdkIsTUFBTTtZQUNOLHNEQUFzRDtZQUN0RCxNQUFNO1lBQ04sbUNBQW1DO1lBQ25DOztlQUVHO1lBQ0gsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQztZQUMzQixNQUFNO1lBQ04sOEVBQThFO1lBQzlFLE1BQU07WUFDTiw0QkFBNEI7WUFDNUIsTUFBTTtZQUNOLDBCQUEwQjtZQUMxQixNQUFNO1lBQ04sOEJBQThCO1lBQzlCLE1BQU07WUFDTixnQ0FBZ0M7WUFDaEMsTUFBTTtZQUNOLDZCQUE2QjtZQUM3QixrQkFBa0I7WUFDbEIsc0lBQXNJO1lBQ3RJLHVIQUF1SDtZQUN2SCw4SEFBOEg7WUFDOUgsS0FBSztZQUNMLGlCQUFpQjtZQUNqQixjQUFjO1lBQ2QseUdBQXlHO1lBQ3pHLDRHQUE0RztZQUM1RyxrQkFBa0I7WUFDbEIsK0tBQStLO1lBQy9LLFNBQVM7WUFDVCxlQUFlO1lBQ2Ysd0pBQXdKO1lBQ3hKLFFBQVE7WUFDUixPQUFPO1lBQ1AsZ0JBQWdCO1lBQ2hCLG1IQUFtSDtZQUNuSCxrSEFBa0g7WUFDbEgsT0FBTztZQUNQLEtBQUs7WUFDTCxjQUFjO1lBQ2Qsd0dBQXdHO1lBQ3hHLElBQUk7U0FDTCxDQUFBO1FBQ2dCLFNBQUksR0FBRyxJQUFJLGNBQWMsRUFBRSxDQUFBO0lBSzlDLENBQUM7SUFIQyxNQUFNLENBQUMsUUFBK0MsU0FBUztRQUM3RCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUEyQixJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQTtJQUN6RSxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpQlhSZXN0UGFyYW1UaW1lTWFuU3RhdHVzLCBpQlhSZXN0VGltZU1hblN0YXR1c0h0dHAgfSBmcm9tICcuLi90eXBpZmljYXRpb24vcmVzdC90aW1lbWFuL3N0YXR1cydcclxuaW1wb3J0IHsgSHR0cEJYU2VydmljZXMgfSBmcm9tICcuLi9zZXJ2aWNlcy9odHRwL0h0dHBCWCdcclxuaW1wb3J0IHsgJHN0YXR1cywgJHRpbWVNYW4gfSBmcm9tICcuLi9jb25zdHMvcGFydC1uYW1lLW1ldGhvZHMnXHJcblxyXG5leHBvcnQgY2xhc3MgQlhSZXN0VGltZU1hbiB7XHJcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHVybCA9IHtcclxuICAgIC8vIC8qKlxyXG4gICAgLy8gICog0J/QvtC70YPRh9C10L3QuNC1INC90LDRgdGC0YDQvtC10Log0YDQsNCx0L7Rh9C10LPQviDQstGA0LXQvNC10L3QuCDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y9cclxuICAgIC8vICAqL1xyXG4gICAgLy8gc2V0dGluZ3M6IFskdGltZU1hbiwgJHNldHRpbmdzXSxcclxuICAgIC8qKlxyXG4gICAgICog0J/QvtC70YPRh9C10L3QuNC1INC40L3RhNC+0YDQvNCw0YbQuNC4INC+INGC0LXQutGD0YnQtdC8INGA0LDQsdC+0YfQtdC8INC00L3QtSDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y9cclxuICAgICAqL1xyXG4gICAgc3RhdHVzOiBbJHRpbWVNYW4sICRzdGF0dXNdLFxyXG4gICAgLy8gLyoqXHJcbiAgICAvLyAgKiDQndCw0YfQsNGC0Ywg0L3QvtCy0YvQuSDRgNCw0LHQvtGH0LjQuSDQtNC10L3RjCDQu9C40LHQviDQstC+0LfQvtCx0L3QvtCy0LjRgtGMINC30LDQutGA0YvRgtGL0Lkg0LjQu9C4INC/0YDQuNC+0YHRgtCw0L3QvtCy0LvQtdC90L3Ri9C5XHJcbiAgICAvLyAgKi9cclxuICAgIC8vIG9wZW46IFskdGltZU1hbiwgJ29wZW4nXSxcclxuICAgIC8vIC8qKlxyXG4gICAgLy8gICog0JfQsNC60YDRi9GC0Ywg0YDQsNCx0L7Rh9C40Lkg0LTQtdC90YxcclxuICAgIC8vICAqL1xyXG4gICAgLy8gY2xvc2U6IFskdGltZU1hbiwgJ2Nsb3NlJ10sXHJcbiAgICAvLyAvKipcclxuICAgIC8vICAqINCf0YDQuNC+0YHRgtCw0L3QvtCy0LjRgtGMINGA0LDQsdC+0YfQuNC5INC00LXQvdGMXHJcbiAgICAvLyAgKi9cclxuICAgIC8vIHBhdXNlOiBbJHRpbWVNYW4sICRwYXVzZV0sXHJcbiAgICAvLyBuZXR3b3JrcmFuZ2U6IHtcclxuICAgIC8vICAgY2hlY2s6IHRoaXMuYmFzZVVybCArICduZXR3b3JrcmFuZ2UuY2hlY2snLCAvLyDQnNC10YLQvtC0INC00LvRjyDQv9GA0L7QstC10YDQutC4IElQLdCw0LTRgNC10YHQsCDQvdCwINCy0YXQvtC20LTQtdC90LjQtSDQsiDQtNC40LDQv9Cw0LfQvtC90Ysg0YHQtdGC0LXQstGL0YUg0LDQtNGA0LXRgdC+0LIg0L7RhNC40YHQvdC+0Lkg0YHQtdGC0LhcclxuICAgIC8vICAgZ2V0OiB0aGlzLmJhc2VVcmwgKyAnbmV0d29ya3JhbmdlLmdldCcsIC8vINCc0LXRgtC+0LQg0LTQu9GPINC/0L7Qu9GD0YfQtdC90LjRjyDQtNC40LDQv9Cw0LfQvtC90L7QsiDRgdC10YLQtdCy0YvRhSDQsNC00YDQtdGB0L7Qsiwg0LLRhdC+0LTRj9GJ0LjRhSDQsiDQvtGE0LjRgdC90YPRjiDRgdC10YLRjFxyXG4gICAgLy8gICBzZXQ6IHRoaXMuYmFzZVVybCArICduZXR3b3JrcmFuZ2Uuc2V0J1x0Ly8g0JzQtdGC0L7QtCDQtNC70Y8g0YPRgdGC0LDQvdC+0LLQutC4INC00LjQsNC/0LDQt9C+0L3QvtCyINGB0LXRgtC10LLRi9GFINCw0LTRgNC10YHQvtCyLCDQstGF0L7QtNGP0YnQuNGFINCyINC+0YTQuNGB0L3Rg9GOINGB0LXRgtGMLlx0MTguNS4wXHJcbiAgICAvLyB9LFxyXG4gICAgLy8gdGltZWNvbnRyb2w6IHtcclxuICAgIC8vICAgcmVwb3J0OiB7XHJcbiAgICAvLyAgICAgYWRkOiB0aGlzLmJhc2VVcmwgKyAndGltZWNvbnRyb2wucmVwb3J0LmFkZCcsIC8vINCc0LXRgtC+0LQg0LTQu9GPINC+0YLQv9GA0LDQstC60Lgg0L7RgtGH0LXRgtCwINC+INCy0YvRj9Cy0LvQtdC90L3QvtC8INC+0YLRgdGD0YLRgdGC0LLQuNC4XHJcbiAgICAvLyAgICAgZ2V0OiB0aGlzLmJhc2VVcmwgKyAndGltZWNvbnRyb2wucmVwb3J0cy5nZXQnLCAvLyDQnNC10YLQvtC0INC00LvRjyDQv9C+0LvRg9GH0LXQvdC40Y8g0L7RgtGH0LXRgtCwINC+INCy0YvRj9Cy0LvQtdC90L3Ri9GFINC+0YLRgdGD0YLRgdGC0LLQuNGP0YVcclxuICAgIC8vICAgICBzZXR0aW5nczoge1xyXG4gICAgLy8gICAgICAgZ2V0OiB0aGlzLmJhc2VVcmwgKyAndGltZWNvbnRyb2wucmVwb3J0cy5zZXR0aW5ncy5nZXQnIC8vINCc0LXRgtC+0LQg0LTQu9GPINC/0L7Qu9GD0YfQtdC90LjRjyDQv9C+0LvRjNC30L7QstCw0YLQtdC70YzRgdC60LjRhSDQvdCw0YHRgtGA0L7QtdC6INC00LvRjyDQv9C+0YHRgtGA0L7QtdC90LjRjyDQuNC90YLQtdGA0YTQtdC50YHQsCDQvtGC0YfQtdGC0L7QsiDQuNC90YHRgtGA0YPQvNC10L3RgtCwINC60L7QvdGC0YDQvtC70Y8g0LLRgNC10LzQtdC90LhcclxuICAgIC8vICAgICB9LFxyXG4gICAgLy8gICAgIHVzZXJzOiB7XHJcbiAgICAvLyAgICAgICBnZXQ6IHRoaXMuYmFzZVVybCArICd0aW1lY29udHJvbC5yZXBvcnRzLnVzZXJzLmdldCdcdC8vINCc0LXRgtC+0LQg0LTQu9GPINC/0L7Qu9GD0YfQtdC90LjRjyDRgdC/0LjRgdC60LAg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9C10LksINC+0YLQvdC+0YHRj9GJ0LjRhdGB0Y8g0Log0YPQutCw0LfQsNC90L3QvtC80YMg0L/QvtC00YDQsNC30LTQtdC70LXQvdC40Y4uXHQxOC41LjBcclxuICAgIC8vICAgICB9XHJcbiAgICAvLyAgIH0sXHJcbiAgICAvLyAgIHNldHRpbmdzOiB7XHJcbiAgICAvLyAgICAgZ2V0OiB0aGlzLmJhc2VVcmwgKyAndGltZWNvbnRyb2wuc2V0dGluZ3MuZ2V0JywgLy8g0JzQtdGC0L7QtCDQtNC70Y8g0L/QvtC70YPRh9C10L3QuNGPINC90LDRgdGC0YDQvtC10Log0LjQvdGB0YLRgNGD0LzQtdC90YLQsCDQutC+0L3RgtGA0L7Qu9GPINCy0YDQtdC80LXQvdC4XHJcbiAgICAvLyAgICAgc2V0OiB0aGlzLmJhc2VVcmwgKyAndGltZWNvbnRyb2wuc2V0dGluZ3Muc2V0J1x0Ly8g0JzQtdGC0L7QtCDQtNC70Y8g0YPRgdGC0LDQvdC+0LLQutC4INC90LDRgdGC0YDQvtC10Log0LjQvdGB0YLRgNGD0LzQtdC90YLQsCDQutC+0L3RgtGA0L7Qu9GPINCy0YDQtdC80LXQvdC4XHJcbiAgICAvLyAgIH0sXHJcbiAgICAvLyB9LFxyXG4gICAgLy8gc2NoZWR1bGU6IHtcclxuICAgIC8vICAgZ2V0OiB0aGlzLmJhc2VVcmwgKyAnc2NoZWR1bGUuZ2V0J1x0Ly8g0JzQtdGC0L7QtCDQv9C+0LfQstC+0LvRj9C10YIg0L/QvtC70YPRh9C40YLRjCDRgNCw0LHQvtGH0LjQuSDQs9GA0LDRhNC40Log0L/QviDQtdCz0L4g0LjQtNC10L3RgtC40YTQuNC60LDRgtC+0YDRg1xyXG4gICAgLy8gfVxyXG4gIH1cclxuICBwcml2YXRlIHJlYWRvbmx5IGh0dHAgPSBuZXcgSHR0cEJYU2VydmljZXMoKVxyXG5cclxuICBzdGF0dXMocGFyYW06IGlCWFJlc3RQYXJhbVRpbWVNYW5TdGF0dXMgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQpe1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PGlCWFJlc3RUaW1lTWFuU3RhdHVzSHR0cD4odGhpcy51cmwuc3RhdHVzLCBwYXJhbSlcclxuICB9XHJcbn1cclxuXHJcbiJdfQ==