bx-rest 0.0.13 → 0.0.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/consts/part-name-metods.d.ts +63 -0
- package/esm2020/consts/part-name-metods.mjs +64 -1
- package/esm2020/functions/mapResult.mjs +7 -0
- package/esm2020/map/base.mjs +14 -0
- package/esm2020/map/lists/element.mjs +22 -0
- package/esm2020/public-api.mjs +4 -3
- package/esm2020/request/lists/element.mjs +64 -0
- package/esm2020/request/lists.mjs +46 -0
- package/esm2020/request/user.mjs +227 -0
- package/esm2020/services/base.mjs +2 -2
- package/esm2020/services/map/rest/user.mjs +2 -2
- package/esm2020/typification/rest/lists/element/get.mjs +2 -0
- package/fesm2015/bx-rest.mjs +469 -326
- package/fesm2015/bx-rest.mjs.map +1 -1
- package/fesm2020/bx-rest.mjs +466 -323
- package/fesm2020/bx-rest.mjs.map +1 -1
- package/functions/mapResult.d.ts +2 -0
- package/map/base.d.ts +6 -0
- package/map/lists/element.d.ts +8 -0
- package/package.json +1 -1
- package/public-api.d.ts +3 -2
- package/request/lists/element.d.ts +29 -0
- package/request/lists.d.ts +18 -0
- package/request/user.d.ts +59 -0
- package/services/base.d.ts +1 -1
- package/typification/rest/lists/element/get.d.ts +28 -0
- package/esm2020/request/user/user.mjs +0 -279
- package/esm2020/typification/rest/user/CustomUserFieldInfo.mjs +0 -2
- package/esm2020/typification/rest/user/userFilter.mjs +0 -2
- package/request/user/user.d.ts +0 -63
- package/typification/rest/user/CustomUserFieldInfo.d.ts +0 -56
- package/typification/rest/user/userFilter.d.ts +0 -13
|
@@ -9,3 +9,66 @@ export declare const $calendar = "calendar";
|
|
|
9
9
|
export declare const $meeting = "meeting";
|
|
10
10
|
export declare const $list = "list";
|
|
11
11
|
export declare const $search = "search";
|
|
12
|
+
export declare const $accessibility = "accessibility";
|
|
13
|
+
export declare const $delete = "delete";
|
|
14
|
+
export declare const $nearest = "nearest";
|
|
15
|
+
export declare const $params = "params";
|
|
16
|
+
export declare const $status = "status";
|
|
17
|
+
export declare const $resource = "resource";
|
|
18
|
+
export declare const $booking = "booking";
|
|
19
|
+
export declare const $section = "section";
|
|
20
|
+
export declare const $settings = "settings";
|
|
21
|
+
export declare const $tasks = "tasks";
|
|
22
|
+
export declare const $elapseditem = "elapseditem";
|
|
23
|
+
export declare const $getlist = "getlist";
|
|
24
|
+
export declare const $approve = "approve";
|
|
25
|
+
export declare const $complete = "complete";
|
|
26
|
+
export declare const $counters = "counters";
|
|
27
|
+
export declare const $deger = "deger";
|
|
28
|
+
export declare const $delegate = "delegate";
|
|
29
|
+
export declare const $disapprove = "disapprove";
|
|
30
|
+
export declare const $favorite = "favorite";
|
|
31
|
+
export declare const $files = "files";
|
|
32
|
+
export declare const $file = "file";
|
|
33
|
+
export declare const $attach = "attach";
|
|
34
|
+
export declare const $field = "field";
|
|
35
|
+
export declare const $getFields: string;
|
|
36
|
+
export declare const $getaccess = "getaccess";
|
|
37
|
+
export declare const $history = "history";
|
|
38
|
+
export declare const $pause = "pause";
|
|
39
|
+
export declare const $renew = "renew";
|
|
40
|
+
export declare const $start = "start";
|
|
41
|
+
export declare const $result = "result";
|
|
42
|
+
export declare const $planner = "planner";
|
|
43
|
+
export declare const $disk = "disk";
|
|
44
|
+
export declare const $rename = "rename";
|
|
45
|
+
export declare const $markdeleted = "markdeleted";
|
|
46
|
+
export declare const $restore = "restore";
|
|
47
|
+
export declare const $folder = "folder";
|
|
48
|
+
export declare const $getchildren = "getchildren";
|
|
49
|
+
export declare const $copyto = "copyto";
|
|
50
|
+
export declare const $moveto = "moveto";
|
|
51
|
+
export declare const $uploadfile = "uploadfile";
|
|
52
|
+
export declare const $storage = "storage";
|
|
53
|
+
export declare const $getTypes = "getTypes";
|
|
54
|
+
export declare const $stages = "stages";
|
|
55
|
+
export declare const $getmanifest = "getmanifest";
|
|
56
|
+
export declare const $isactionallowed = "isactionallowed";
|
|
57
|
+
export declare const $commentitem = "commentitem";
|
|
58
|
+
export declare const $department = "department";
|
|
59
|
+
export declare const $sonet_group = "sonet_group";
|
|
60
|
+
export declare const $create = "create";
|
|
61
|
+
export declare const $feature = "feature";
|
|
62
|
+
export declare const $access = "access";
|
|
63
|
+
export declare const $request = "request";
|
|
64
|
+
export declare const $socialnetwork = "socialnetwork";
|
|
65
|
+
export declare const $api = "api";
|
|
66
|
+
export declare const $workgroup = "workgroup";
|
|
67
|
+
export declare const $log = "log";
|
|
68
|
+
export declare const $blogpost = "blogpost";
|
|
69
|
+
export declare const $lists = "lists";
|
|
70
|
+
export declare const $iblock = "iblock";
|
|
71
|
+
export declare const $type = "type";
|
|
72
|
+
export declare const $id = "id";
|
|
73
|
+
export declare const $element = "element";
|
|
74
|
+
export declare const $url = "url";
|
|
@@ -9,4 +9,67 @@ export const $calendar = 'calendar';
|
|
|
9
9
|
export const $meeting = 'meeting';
|
|
10
10
|
export const $list = 'list';
|
|
11
11
|
export const $search = 'search';
|
|
12
|
-
|
|
12
|
+
export const $accessibility = 'accessibility';
|
|
13
|
+
export const $delete = 'delete';
|
|
14
|
+
export const $nearest = 'nearest';
|
|
15
|
+
export const $params = 'params';
|
|
16
|
+
export const $status = 'status';
|
|
17
|
+
export const $resource = 'resource';
|
|
18
|
+
export const $booking = 'booking';
|
|
19
|
+
export const $section = 'section';
|
|
20
|
+
export const $settings = 'settings';
|
|
21
|
+
export const $tasks = 'tasks';
|
|
22
|
+
export const $elapseditem = 'elapseditem';
|
|
23
|
+
export const $getlist = 'getlist';
|
|
24
|
+
export const $approve = 'approve';
|
|
25
|
+
export const $complete = 'complete';
|
|
26
|
+
export const $counters = 'counters';
|
|
27
|
+
export const $deger = 'deger';
|
|
28
|
+
export const $delegate = 'delegate';
|
|
29
|
+
export const $disapprove = 'disapprove';
|
|
30
|
+
export const $favorite = 'favorite';
|
|
31
|
+
export const $files = 'files';
|
|
32
|
+
export const $file = 'file';
|
|
33
|
+
export const $attach = 'attach';
|
|
34
|
+
export const $field = 'field';
|
|
35
|
+
export const $getFields = 'get' + $field + 's';
|
|
36
|
+
export const $getaccess = 'getaccess';
|
|
37
|
+
export const $history = 'history';
|
|
38
|
+
export const $pause = 'pause';
|
|
39
|
+
export const $renew = 'renew';
|
|
40
|
+
export const $start = 'start';
|
|
41
|
+
export const $result = 'result';
|
|
42
|
+
export const $planner = 'planner';
|
|
43
|
+
export const $disk = 'disk';
|
|
44
|
+
export const $rename = 'rename';
|
|
45
|
+
export const $markdeleted = 'markdeleted';
|
|
46
|
+
export const $restore = 'restore';
|
|
47
|
+
export const $folder = 'folder';
|
|
48
|
+
export const $getchildren = 'getchildren';
|
|
49
|
+
export const $copyto = 'copyto';
|
|
50
|
+
export const $moveto = 'moveto';
|
|
51
|
+
export const $uploadfile = 'uploadfile';
|
|
52
|
+
export const $storage = 'storage';
|
|
53
|
+
export const $getTypes = 'getTypes';
|
|
54
|
+
export const $stages = 'stages';
|
|
55
|
+
export const $getmanifest = 'getmanifest';
|
|
56
|
+
export const $isactionallowed = 'isactionallowed';
|
|
57
|
+
export const $commentitem = 'commentitem';
|
|
58
|
+
export const $department = 'department';
|
|
59
|
+
export const $sonet_group = 'sonet_group';
|
|
60
|
+
export const $create = 'create';
|
|
61
|
+
export const $feature = 'feature';
|
|
62
|
+
export const $access = 'access';
|
|
63
|
+
export const $request = 'request';
|
|
64
|
+
export const $socialnetwork = 'socialnetwork';
|
|
65
|
+
export const $api = 'api';
|
|
66
|
+
export const $workgroup = 'workgroup';
|
|
67
|
+
export const $log = 'log';
|
|
68
|
+
export const $blogpost = 'blogpost';
|
|
69
|
+
export const $lists = 'lists';
|
|
70
|
+
export const $iblock = 'iblock';
|
|
71
|
+
export const $type = 'type';
|
|
72
|
+
export const $id = 'id';
|
|
73
|
+
export const $element = 'element';
|
|
74
|
+
export const $url = 'url';
|
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFydC1uYW1lLW1ldG9kcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2J4LXJlc3Qvc3JjL2NvbnN0cy9wYXJ0LW5hbWUtbWV0b2RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLElBQUksR0FBRyxLQUFLLENBQUE7QUFDekIsTUFBTSxDQUFDLE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQTtBQUN6QixNQUFNLENBQUMsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFBO0FBQ3pCLE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUE7QUFDN0IsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLFFBQVEsQ0FBQTtBQUMvQixNQUFNLENBQUMsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFBO0FBQzNCLE1BQU0sQ0FBQyxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUE7QUFDM0IsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLFVBQVUsQ0FBQTtBQUNuQyxNQUFNLENBQUMsTUFBTSxRQUFRLEdBQUcsU0FBUyxDQUFBO0FBQ2pDLE1BQU0sQ0FBQyxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUE7QUFDM0IsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLFFBQVEsQ0FBQTtBQUMvQixNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsZUFBZSxDQUFBO0FBQzdDLE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxRQUFRLENBQUE7QUFDL0IsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLFNBQVMsQ0FBQTtBQUNqQyxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsUUFBUSxDQUFBO0FBQy9CLE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxRQUFRLENBQUE7QUFDL0IsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLFVBQVUsQ0FBQTtBQUNuQyxNQUFNLENBQUMsTUFBTSxRQUFRLEdBQUcsU0FBUyxDQUFBO0FBQ2pDLE1B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T0FBTyxHQUFHLFFBQVEsQ0FBQTtBQUMvQixNQUFNLENBQUMsTUFBTSxRQUFRLEdBQUcsU0FBUyxDQUFBO0FBQ2pDLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxlQUFlLENBQUE7QUFDN0MsTUFBTSxDQUFDLE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQTtBQUN6QixNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsV0FBVyxDQUFBO0FBQ3JDLE1BQU0sQ0FBQyxNQUFNLElBQUksR0FBRyxLQUFLLENBQUE7QUFDekIsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLFVBQVUsQ0FBQTtBQUNuQyxNQUFNLENBQUMsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFBO0FBQzdCLE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxRQUFRLENBQUE7QUFDL0IsTUFBTSxDQUFDLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQTtBQUMzQixNQUFNLENBQUMsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFBO0FBQ3ZCLE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxTQUFTLENBQUE7QUFDakMsTUFBTSxDQUFDLE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCAkZ2V0ID0gJ2dldCdcclxuZXhwb3J0IGNvbnN0ICRhZGQgPSAnYWRkJ1xyXG5leHBvcnQgY29uc3QgJHNldCA9ICdzZXQnXHJcbmV4cG9ydCBjb25zdCAkZXZlbnQgPSAnZXZlbnQnXHJcbmV4cG9ydCBjb25zdCAkdXBkYXRlID0gJ3VwZGF0ZSdcclxuZXhwb3J0IGNvbnN0ICR1c2VyID0gJ3VzZXInXHJcbmV4cG9ydCBjb25zdCAkdGFzayA9ICd0YXNrJ1xyXG5leHBvcnQgY29uc3QgJGNhbGVuZGFyID0gJ2NhbGVuZGFyJ1xyXG5leHBvcnQgY29uc3QgJG1lZXRpbmcgPSAnbWVldGluZydcclxuZXhwb3J0IGNvbnN0ICRsaXN0ID0gJ2xpc3QnXHJcbmV4cG9ydCBjb25zdCAkc2VhcmNoID0gJ3NlYXJjaCdcclxuZXhwb3J0IGNvbnN0ICRhY2Nlc3NpYmlsaXR5ID0gJ2FjY2Vzc2liaWxpdHknXHJcbmV4cG9ydCBjb25zdCAkZGVsZXRlID0gJ2RlbGV0ZSdcclxuZXhwb3J0IGNvbnN0ICRuZWFyZXN0ID0gJ25lYXJlc3QnXHJcbmV4cG9ydCBjb25zdCAkcGFyYW1zID0gJ3BhcmFtcydcclxuZXhwb3J0IGNvbnN0ICRzdGF0dXMgPSAnc3RhdHVzJ1xyXG5leHBvcnQgY29uc3QgJHJlc291cmNlID0gJ3Jlc291cmNlJ1xyXG5leHBvcnQgY29uc3QgJGJvb2tpbmcgPSAnYm9va2luZydcclxuZXhwb3J0IGNvbnN0ICRzZWN0aW9uID0gJ3NlY3Rpb24nXHJcbmV4cG9ydCBjb25zdCAkc2V0dGluZ3MgPSAnc2V0dGluZ3MnXHJcbmV4cG9ydCBjb25zdCAkdGFza3MgPSAndGFza3MnXHJcbmV4cG9ydCBjb25zdCAkZWxhcHNlZGl0ZW0gPSAnZWxhcHNlZGl0ZW0nXHJcbmV4cG9ydCBjb25zdCAkZ2V0bGlzdCA9ICdnZXRsaXN0J1xyXG5leHBvcnQgY29uc3QgJGFwcHJvdmUgPSAnYXBwcm92ZSdcclxuZXhwb3J0IGNvbnN0ICRjb21wbGV0ZSA9ICdjb21wbGV0ZSdcclxuZXhwb3J0IGNvbnN0ICRjb3VudGVycyA9ICdjb3VudGVycydcclxuZXhwb3J0IGNvbnN0ICRkZWdlciA9ICdkZWdlcidcclxuZXhwb3J0IGNvbnN0ICRkZWxlZ2F0ZSA9ICdkZWxlZ2F0ZSdcclxuZXhwb3J0IGNvbnN0ICRkaXNhcHByb3ZlID0gJ2Rpc2FwcHJvdmUnXHJcbmV4cG9ydCBjb25zdCAkZmF2b3JpdGUgPSAnZmF2b3JpdGUnXHJcbmV4cG9ydCBjb25zdCAkZmlsZXMgPSAnZmlsZXMnXHJcbmV4cG9ydCBjb25zdCAkZmlsZSA9ICdmaWxlJ1xyXG5leHBvcnQgY29uc3QgJGF0dGFjaCA9ICdhdHRhY2gnXHJcbmV4cG9ydCBjb25zdCAkZmllbGQgPSAnZmllbGQnXHJcbmV4cG9ydCBjb25zdCAkZ2V0RmllbGRzID0gJ2dldCcgKyAkZmllbGQgKyAncydcclxuZXhwb3J0IGNvbnN0ICRnZXRhY2Nlc3MgPSAnZ2V0YWNjZXNzJ1xyXG5leHBvcnQgY29uc3QgJGhpc3RvcnkgPSAnaGlzdG9yeSdcclxuZXhwb3J0IGNvbnN0ICRwYXVzZSA9ICdwYXVzZSdcclxuZXhwb3J0IGNvbnN0ICRyZW5ldyA9ICdyZW5ldydcclxuZXhwb3J0IGNvbnN0ICRzdGFydCA9ICdzdGFydCdcclxuZXhwb3J0IGNvbnN0ICRyZXN1bHQgPSAncmVzdWx0J1xyXG5leHBvcnQgY29uc3QgJHBsYW5uZXIgPSAncGxhbm5lcidcclxuZXhwb3J0IGNvbnN0ICRkaXNrID0gJ2Rpc2snXHJcbmV4cG9ydCBjb25zdCAkcmVuYW1lID0gJ3JlbmFtZSdcclxuZXhwb3J0IGNvbnN0ICRtYXJrZGVsZXRlZCA9ICdtYXJrZGVsZXRlZCdcclxuZXhwb3J0IGNvbnN0ICRyZXN0b3JlID0gJ3Jlc3RvcmUnXHJcbmV4cG9ydCBjb25zdCAkZm9sZGVyID0gJ2ZvbGRlcidcclxuZXhwb3J0IGNvbnN0ICRnZXRjaGlsZHJlbiA9ICdnZXRjaGlsZHJlbidcclxuZXhwb3J0IGNvbnN0ICRjb3B5dG8gPSAnY29weXRvJ1xyXG5leHBvcnQgY29uc3QgJG1vdmV0byA9ICdtb3ZldG8nXHJcbmV4cG9ydCBjb25zdCAkdXBsb2FkZmlsZSA9ICd1cGxvYWRmaWxlJ1xyXG5leHBvcnQgY29uc3QgJHN0b3JhZ2UgPSAnc3RvcmFnZSdcclxuZXhwb3J0IGNvbnN0ICRnZXRUeXBlcyA9ICdnZXRUeXBlcydcclxuZXhwb3J0IGNvbnN0ICRzdGFnZXMgPSAnc3RhZ2VzJ1xyXG5leHBvcnQgY29uc3QgJGdldG1hbmlmZXN0ID0gJ2dldG1hbmlmZXN0J1xyXG5leHBvcnQgY29uc3QgJGlzYWN0aW9uYWxsb3dlZCA9ICdpc2FjdGlvbmFsbG93ZWQnXHJcbmV4cG9ydCBjb25zdCAkY29tbWVudGl0ZW0gPSAnY29tbWVudGl0ZW0nXHJcbmV4cG9ydCBjb25zdCAkZGVwYXJ0bWVudCA9ICdkZXBhcnRtZW50J1xyXG5leHBvcnQgY29uc3QgJHNvbmV0X2dyb3VwID0gJ3NvbmV0X2dyb3VwJ1xyXG5leHBvcnQgY29uc3QgJGNyZWF0ZSA9ICdjcmVhdGUnXHJcbmV4cG9ydCBjb25zdCAkZmVhdHVyZSA9ICdmZWF0dXJlJ1xyXG5leHBvcnQgY29uc3QgJGFjY2VzcyA9ICdhY2Nlc3MnXHJcbmV4cG9ydCBjb25zdCAkcmVxdWVzdCA9ICdyZXF1ZXN0J1xyXG5leHBvcnQgY29uc3QgJHNvY2lhbG5ldHdvcmsgPSAnc29jaWFsbmV0d29yaydcclxuZXhwb3J0IGNvbnN0ICRhcGkgPSAnYXBpJ1xyXG5leHBvcnQgY29uc3QgJHdvcmtncm91cCA9ICd3b3JrZ3JvdXAnXHJcbmV4cG9ydCBjb25zdCAkbG9nID0gJ2xvZydcclxuZXhwb3J0IGNvbnN0ICRibG9ncG9zdCA9ICdibG9ncG9zdCdcclxuZXhwb3J0IGNvbnN0ICRsaXN0cyA9ICdsaXN0cydcclxuZXhwb3J0IGNvbnN0ICRpYmxvY2sgPSAnaWJsb2NrJ1xyXG5leHBvcnQgY29uc3QgJHR5cGUgPSAndHlwZSdcclxuZXhwb3J0IGNvbnN0ICRpZCA9ICdpZCdcclxuZXhwb3J0IGNvbnN0ICRlbGVtZW50ID0gJ2VsZW1lbnQnXHJcbmV4cG9ydCBjb25zdCAkdXJsID0gJ3VybCdcclxuIl19
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export function mapResult(v) {
|
|
2
|
+
if (v && (v.result || typeof v.result === 'boolean')) {
|
|
3
|
+
return v.result;
|
|
4
|
+
}
|
|
5
|
+
return undefined;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwUmVzdWx0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYngtcmVzdC9zcmMvZnVuY3Rpb25zL21hcFJlc3VsdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLFVBQVUsU0FBUyxDQUFJLENBQStCO0lBQzFELElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sSUFBSSxPQUFPLENBQUMsQ0FBQyxNQUFNLEtBQUssU0FBUyxDQUFDLEVBQUU7UUFDcEQsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFBO0tBQ2hCO0lBQ0QsT0FBTyxTQUFTLENBQUE7QUFDbEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBpSHR0cEFuc3dlckJYIGZyb20gJy4uL3R5cGlmaWNhdGlvbi9yZXN0L2Jhc2UvaHR0cEFuc3dlckJYJztcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBtYXBSZXN1bHQ8VD4odjogaUh0dHBBbnN3ZXJCWDxUPiB8IHVuZGVmaW5lZCk6IFQgfCB1bmRlZmluZWQge1xyXG4gIGlmICh2ICYmICh2LnJlc3VsdCB8fCB0eXBlb2Ygdi5yZXN1bHQgPT09ICdib29sZWFuJykpIHtcclxuICAgIHJldHVybiB2LnJlc3VsdFxyXG4gIH1cclxuICByZXR1cm4gdW5kZWZpbmVkXHJcbn1cclxuIl19
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { BaseServices } from '../services/base';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export default class BaseMapServices extends BaseServices {
|
|
5
|
+
}
|
|
6
|
+
BaseMapServices.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BaseMapServices, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
7
|
+
BaseMapServices.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BaseMapServices, providedIn: 'root' });
|
|
8
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BaseMapServices, decorators: [{
|
|
9
|
+
type: Injectable,
|
|
10
|
+
args: [{
|
|
11
|
+
providedIn: 'root'
|
|
12
|
+
}]
|
|
13
|
+
}] });
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2J4LXJlc3Qvc3JjL21hcC9iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDMUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFBOztBQUsvQyxNQUFNLENBQUMsT0FBTyxPQUFPLGVBQWdCLFNBQVEsWUFBWTs7NEdBQXBDLGVBQWU7Z0hBQWYsZUFBZSxjQUZ0QixNQUFNOzJGQUVDLGVBQWU7a0JBSG5DLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXHJcbmltcG9ydCB7IEJhc2VTZXJ2aWNlcyB9IGZyb20gJy4uL3NlcnZpY2VzL2Jhc2UnXHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEJhc2VNYXBTZXJ2aWNlcyBleHRlbmRzIEJhc2VTZXJ2aWNlc3tcclxuXHJcbn1cclxuIl19
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import BaseMapServices from '../base';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export default class BXRestListsElementMap extends BaseMapServices {
|
|
5
|
+
get(item) {
|
|
6
|
+
return Object.assign(item, {
|
|
7
|
+
BP_PUBLISHED: item.BP_PUBLISHED === 'Y',
|
|
8
|
+
CREATED_BY: this.toNum(item.CREATED_BY),
|
|
9
|
+
IBLOCK_ID: this.toNum(item.IBLOCK_ID),
|
|
10
|
+
ID: this.toNum(item.ID)
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
BXRestListsElementMap.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestListsElementMap, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
15
|
+
BXRestListsElementMap.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestListsElementMap, providedIn: 'root' });
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestListsElementMap, decorators: [{
|
|
17
|
+
type: Injectable,
|
|
18
|
+
args: [{
|
|
19
|
+
providedIn: 'root'
|
|
20
|
+
}]
|
|
21
|
+
}] });
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2J4LXJlc3Qvc3JjL21hcC9saXN0cy9lbGVtZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDMUMsT0FBTyxlQUFlLE1BQU0sU0FBUyxDQUFBOztBQVNyQyxNQUFNLENBQUMsT0FBTyxPQUFPLHFCQUFzQixTQUFRLGVBQWU7SUFFaEUsR0FBRyxDQUFDLElBQTZCO1FBRS9CLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUM7WUFDeEIsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZLEtBQUssR0FBRztZQUN2QyxVQUFVLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO1lBQ3ZDLFNBQVMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7WUFDckMsRUFBRSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztTQUN4QixDQUFDLENBQUE7SUFDSixDQUFDOztrSEFWa0IscUJBQXFCO3NIQUFyQixxQkFBcUIsY0FGNUIsTUFBTTsyRkFFQyxxQkFBcUI7a0JBSHpDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXHJcbmltcG9ydCBCYXNlTWFwU2VydmljZXMgZnJvbSAnLi4vYmFzZSdcclxuaW1wb3J0IHtcclxuICBpQlhSZXN0SHR0cExpc3RzRWxlbWVudCxcclxuICBpQlhSZXN0TGlzdHNFbGVtZW50XHJcbn0gZnJvbSAnLi4vLi4vdHlwaWZpY2F0aW9uL3Jlc3QvbGlzdHMvZWxlbWVudC9nZXQnXHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEJYUmVzdExpc3RzRWxlbWVudE1hcCBleHRlbmRzIEJhc2VNYXBTZXJ2aWNlcyB7XHJcblxyXG4gIGdldChpdGVtOiBpQlhSZXN0SHR0cExpc3RzRWxlbWVudCk6IGlCWFJlc3RMaXN0c0VsZW1lbnRcclxuICB7XHJcbiAgICByZXR1cm4gT2JqZWN0LmFzc2lnbihpdGVtLHtcclxuICAgICAgQlBfUFVCTElTSEVEOiBpdGVtLkJQX1BVQkxJU0hFRCA9PT0gJ1knLFxyXG4gICAgICBDUkVBVEVEX0JZOiB0aGlzLnRvTnVtKGl0ZW0uQ1JFQVRFRF9CWSksXHJcbiAgICAgIElCTE9DS19JRDogdGhpcy50b051bShpdGVtLklCTE9DS19JRCksXHJcbiAgICAgIElEOiB0aGlzLnRvTnVtKGl0ZW0uSUQpXHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbn1cclxuIl19
|
package/esm2020/public-api.mjs
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* Public API Surface of bx-rest
|
|
3
3
|
*/
|
|
4
4
|
// export * from './request/bx-rest.module'
|
|
5
|
-
export * from './
|
|
6
|
-
export * from './request/
|
|
7
|
-
|
|
5
|
+
export * from './request/user';
|
|
6
|
+
export * from './request/lists';
|
|
7
|
+
export * from './request/lists/element';
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2J4LXJlc3Qvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCwyQ0FBMkM7QUFDM0MsY0FBYyxnQkFBZ0IsQ0FBQTtBQUM5QixjQUFjLGlCQUFpQixDQUFBO0FBQy9CLGNBQWMseUJBQXlCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIGJ4LXJlc3RcbiAqL1xuXG4vLyBleHBvcnQgKiBmcm9tICcuL3JlcXVlc3QvYngtcmVzdC5tb2R1bGUnXG5leHBvcnQgKiBmcm9tICcuL3JlcXVlc3QvdXNlcidcbmV4cG9ydCAqIGZyb20gJy4vcmVxdWVzdC9saXN0cydcbmV4cG9ydCAqIGZyb20gJy4vcmVxdWVzdC9saXN0cy9lbGVtZW50J1xuIl19
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { $add, $delete, $element, $file, $get, $lists, $update, $url } from '../../consts/part-name-metods';
|
|
2
|
+
import { Injectable } from '@angular/core';
|
|
3
|
+
import { Observable } from 'rxjs';
|
|
4
|
+
import { map } from 'rxjs/operators';
|
|
5
|
+
import { mapResult } from '../../functions/mapResult';
|
|
6
|
+
import HttpBXServices from '../../services/http/HttpBX';
|
|
7
|
+
import BXRestListsElementMap from '../../map/lists/element';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
class BXRestListsElementBase {
|
|
10
|
+
constructor(http, mapResult) {
|
|
11
|
+
this.http = http;
|
|
12
|
+
this.mapResult = mapResult;
|
|
13
|
+
this.url = {
|
|
14
|
+
add: [$lists, $element, $add],
|
|
15
|
+
delete: [$lists, $element, $delete],
|
|
16
|
+
get: [$lists, $element, $get],
|
|
17
|
+
update: [$lists, $element, $update],
|
|
18
|
+
getFileUrl: [$lists, $element, $get, $file, $url] // Метод возвращает путь к файлу
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
get(pram) {
|
|
22
|
+
return this.http.post(this.url.get, pram)
|
|
23
|
+
.pipe(map(v => (v && v.result)
|
|
24
|
+
? Object.assign(v, { result: v.result.map(i => this.mapResult.get(i)) })
|
|
25
|
+
: undefined));
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
BXRestListsElementBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestListsElementBase, deps: [{ token: HttpBXServices }, { token: BXRestListsElementMap }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
29
|
+
BXRestListsElementBase.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestListsElementBase, providedIn: 'root' });
|
|
30
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestListsElementBase, decorators: [{
|
|
31
|
+
type: Injectable,
|
|
32
|
+
args: [{
|
|
33
|
+
providedIn: 'root'
|
|
34
|
+
}]
|
|
35
|
+
}], ctorParameters: function () { return [{ type: HttpBXServices }, { type: BXRestListsElementMap }]; } });
|
|
36
|
+
export class BXRestListsElement extends new Proxy(BXRestListsElementBase, {
|
|
37
|
+
get(target, prop, receiver) {
|
|
38
|
+
const res = Reflect.get(target, prop, receiver);
|
|
39
|
+
console.log('res', res);
|
|
40
|
+
if (res in Observable) {
|
|
41
|
+
let mapRes = new BXRestListsElementMap();
|
|
42
|
+
console.log('res', res);
|
|
43
|
+
return Reflect.get(target, prop, receiver).pipe(
|
|
44
|
+
// @ts-ignore
|
|
45
|
+
map(v => (v && v.result)
|
|
46
|
+
// @ts-ignore
|
|
47
|
+
? Object.assign(v, { result: v.result.map(i => mapRes.get(i)) })
|
|
48
|
+
: undefined),
|
|
49
|
+
// @ts-ignore
|
|
50
|
+
map(v => mapResult(v)));
|
|
51
|
+
}
|
|
52
|
+
return res;
|
|
53
|
+
}
|
|
54
|
+
}) {
|
|
55
|
+
}
|
|
56
|
+
BXRestListsElement.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestListsElement, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
57
|
+
BXRestListsElement.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestListsElement, providedIn: 'root' });
|
|
58
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestListsElement, decorators: [{
|
|
59
|
+
type: Injectable,
|
|
60
|
+
args: [{
|
|
61
|
+
providedIn: 'root'
|
|
62
|
+
}]
|
|
63
|
+
}] });
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2J4LXJlc3Qvc3JjL3JlcXVlc3QvbGlzdHMvZWxlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLCtCQUErQixDQUFBO0FBQzNHLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDMUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUNqQyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDcEMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDJCQUEyQixDQUFBO0FBRXJELE9BQU8sY0FBYyxNQUFNLDRCQUE0QixDQUFBO0FBQ3ZELE9BQU8scUJBQXFCLE1BQU0seUJBQXlCLENBQUE7O0FBSTNELE1BR00sc0JBQXNCO0lBUzFCLFlBQ1UsSUFBb0IsRUFDcEIsU0FBZ0M7UUFEaEMsU0FBSSxHQUFKLElBQUksQ0FBZ0I7UUFDcEIsY0FBUyxHQUFULFNBQVMsQ0FBdUI7UUFWMUMsUUFBRyxHQUFHO1lBQ0osR0FBRyxFQUFFLENBQUMsTUFBTSxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUM7WUFDN0IsTUFBTSxFQUFFLENBQUMsTUFBTSxFQUFFLFFBQVEsRUFBRSxPQUFPLENBQUM7WUFDbkMsR0FBRyxFQUFFLENBQUMsTUFBTSxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUM7WUFDN0IsTUFBTSxFQUFFLENBQUMsTUFBTSxFQUFFLFFBQVEsRUFBRSxPQUFPLENBQUM7WUFDbkMsVUFBVSxFQUFFLENBQUMsTUFBTSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFFLGdDQUFnQztTQUNwRixDQUFBO0lBTUQsQ0FBQztJQUVELEdBQUcsQ0FBQyxJQUFpQztRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUEyQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUM7YUFDaEYsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUM7WUFDdEIsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEVBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBQyxDQUFDO1lBQ3RFLENBQUMsQ0FBQyxTQUFTLENBQ1osQ0FDRixDQUFBO0lBQ0wsQ0FBQzs7bUhBdkJHLHNCQUFzQixrQkFSckIsY0FBYyxhQUNkLHFCQUFxQjt1SEFPdEIsc0JBQXNCLGNBRmQsTUFBTTsyRkFFZCxzQkFBc0I7a0JBSDNCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzBEQVBNLGNBQWMsWUFDZCxxQkFBcUI7QUF3QzVCLE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxJQUFJLEtBQUssQ0FBQyxzQkFBc0IsRUFBRTtJQUN4RSxHQUFHLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxRQUFRO1FBQ3hCLE1BQU0sR0FBRyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQTtRQUMvQyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQTtRQUN2QixJQUFJLEdBQUcsSUFBSSxVQUFVLEVBQUU7WUFDckIsSUFBSSxNQUFNLEdBQUcsSUFBSSxxQkFBcUIsRUFBRSxDQUFBO1lBQ3hDLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFBO1lBQ3ZCLE9BQU8sT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDLElBQUk7WUFDN0MsYUFBYTtZQUNiLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUM7Z0JBQ3RCLGFBQWE7Z0JBQ2IsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEVBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFDLENBQUM7Z0JBQzlELENBQUMsQ0FBQyxTQUFTLENBQ1o7WUFDRCxhQUFhO1lBQ2IsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQ3ZCLENBQUE7U0FDRjtRQUNELE9BQU8sR0FBRyxDQUFBO0lBQ1osQ0FBQztDQUNGLENBQUM7OytHQXBCVyxrQkFBa0I7bUhBQWxCLGtCQUFrQixjQUZqQixNQUFNOzJGQUVQLGtCQUFrQjtrQkFIOUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyAkYWRkLCAkZGVsZXRlLCAkZWxlbWVudCwgJGZpbGUsICRnZXQsICRsaXN0cywgJHVwZGF0ZSwgJHVybCB9IGZyb20gJy4uLy4uL2NvbnN0cy9wYXJ0LW5hbWUtbWV0b2RzJ1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnXHJcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xyXG5pbXBvcnQgeyBtYXBSZXN1bHQgfSBmcm9tICcuLi8uLi9mdW5jdGlvbnMvbWFwUmVzdWx0J1xyXG5pbXBvcnQgaUh0dHBBbnN3ZXJCWCBmcm9tICcuLi8uLi90eXBpZmljYXRpb24vcmVzdC9iYXNlL2h0dHBBbnN3ZXJCWCdcclxuaW1wb3J0IEh0dHBCWFNlcnZpY2VzIGZyb20gJy4uLy4uL3NlcnZpY2VzL2h0dHAvSHR0cEJYJ1xyXG5pbXBvcnQgQlhSZXN0TGlzdHNFbGVtZW50TWFwIGZyb20gJy4uLy4uL21hcC9saXN0cy9lbGVtZW50J1xyXG5pbXBvcnQgeyBpQlhSZXN0SHR0cExpc3RzRWxlbWVudCwgaUJYUmVzdFBhcmFtTGlzdHNFbGVtZW50R2V0IH0gZnJvbSAnLi4vLi4vdHlwaWZpY2F0aW9uL3Jlc3QvbGlzdHMvZWxlbWVudC9nZXQnXHJcblxyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5jbGFzcyBCWFJlc3RMaXN0c0VsZW1lbnRCYXNlIHtcclxuICB1cmwgPSB7XHJcbiAgICBhZGQ6IFskbGlzdHMsICRlbGVtZW50LCAkYWRkXSwgLy8g0JzQtdGC0L7QtCDRgdC+0LfQtNCw0ZHRgiDRjdC70LXQvNC10L3RgiDRgdC/0LjRgdC60LBcclxuICAgIGRlbGV0ZTogWyRsaXN0cywgJGVsZW1lbnQsICRkZWxldGVdLCAvLyDQnNC10YLQvtC0INGD0LTQsNC70Y/QtdGCINGN0LvQtdC80LXQvdGCINGB0L/QuNGB0LrQsFxyXG4gICAgZ2V0OiBbJGxpc3RzLCAkZWxlbWVudCwgJGdldF0sIC8vINCc0LXRgtC+0LQg0LLQvtC30LLRgNCw0YnQsNC10YIg0YHQv9C40YHQvtC6INGN0LvQtdC80LXQvdGC0L7QsiDQuNC70Lgg0Y3Qu9C10LzQtdC90YJcclxuICAgIHVwZGF0ZTogWyRsaXN0cywgJGVsZW1lbnQsICR1cGRhdGVdLCAvL1x00JzQtdGC0L7QtCDQvtCx0L3QvtCy0LvRj9C10YIg0Y3Qu9C10LzQtdC90YIg0YHQv9C40YHQutCwXHJcbiAgICBnZXRGaWxlVXJsOiBbJGxpc3RzLCAkZWxlbWVudCwgJGdldCwgJGZpbGUsICR1cmxdICAvLyDQnNC10YLQvtC0INCy0L7Qt9Cy0YDQsNGJ0LDQtdGCINC/0YPRgtGMINC6INGE0LDQudC70YNcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQlhTZXJ2aWNlcyxcclxuICAgIHByaXZhdGUgbWFwUmVzdWx0OiBCWFJlc3RMaXN0c0VsZW1lbnRNYXBcclxuICApIHtcclxuICB9XHJcblxyXG4gIGdldChwcmFtOiBpQlhSZXN0UGFyYW1MaXN0c0VsZW1lbnRHZXQpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxpSHR0cEFuc3dlckJYPGlCWFJlc3RIdHRwTGlzdHNFbGVtZW50W10+Pih0aGlzLnVybC5nZXQsIHByYW0pXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIG1hcCh2ID0+ICh2ICYmIHYucmVzdWx0KVxyXG4gICAgICAgICAgPyBPYmplY3QuYXNzaWduKHYsIHtyZXN1bHQ6IHYucmVzdWx0Lm1hcChpID0+IHRoaXMubWFwUmVzdWx0LmdldChpKSl9KVxyXG4gICAgICAgICAgOiB1bmRlZmluZWRcclxuICAgICAgICApXHJcbiAgICAgIClcclxuICB9XHJcblxyXG4gIC8vIGFkZChwYXJhbTogaVJlc3RCWFBhcmFtTGlzdHNFbGVtZW50QWRkKSB7XHJcbiAgLy8gICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8aUh0dHBBbnN3ZXJCWDxudW1iZXI+Pih0aGlzLnVybC5hZGQsIHBhcmFtKVxyXG4gIC8vIH1cclxufVxyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQlhSZXN0TGlzdHNFbGVtZW50IGV4dGVuZHMgbmV3IFByb3h5KEJYUmVzdExpc3RzRWxlbWVudEJhc2UsIHtcclxuICBnZXQodGFyZ2V0LCBwcm9wLCByZWNlaXZlcikge1xyXG4gICAgY29uc3QgcmVzID0gUmVmbGVjdC5nZXQodGFyZ2V0LCBwcm9wLCByZWNlaXZlcilcclxuICAgIGNvbnNvbGUubG9nKCdyZXMnLCByZXMpXHJcbiAgICBpZiAocmVzIGluIE9ic2VydmFibGUpIHtcclxuICAgICAgbGV0IG1hcFJlcyA9IG5ldyBCWFJlc3RMaXN0c0VsZW1lbnRNYXAoKVxyXG4gICAgICBjb25zb2xlLmxvZygncmVzJywgcmVzKVxyXG4gICAgICByZXR1cm4gUmVmbGVjdC5nZXQodGFyZ2V0LCBwcm9wLCByZWNlaXZlcikucGlwZShcclxuICAgICAgICAvLyBAdHMtaWdub3JlXHJcbiAgICAgICAgbWFwKHYgPT4gKHYgJiYgdi5yZXN1bHQpXHJcbiAgICAgICAgICAvLyBAdHMtaWdub3JlXHJcbiAgICAgICAgICA/IE9iamVjdC5hc3NpZ24odiwge3Jlc3VsdDogdi5yZXN1bHQubWFwKGkgPT4gbWFwUmVzLmdldChpKSl9KVxyXG4gICAgICAgICAgOiB1bmRlZmluZWRcclxuICAgICAgICApLFxyXG4gICAgICAgIC8vIEB0cy1pZ25vcmVcclxuICAgICAgICBtYXAodiA9PiBtYXBSZXN1bHQodikpXHJcbiAgICAgIClcclxuICAgIH1cclxuICAgIHJldHVybiByZXNcclxuICB9XHJcbn0pIHtcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { $add, $delete, $get, $iblock, $id, $lists, $type, $update } from '../consts/part-name-metods';
|
|
2
|
+
import { Injectable } from '@angular/core';
|
|
3
|
+
import { Observable } from 'rxjs';
|
|
4
|
+
import { map } from 'rxjs/operators';
|
|
5
|
+
import { mapResult } from '../functions/mapResult';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
export default class BXRestLists {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.url = {
|
|
10
|
+
add: [$lists, $add],
|
|
11
|
+
delete: [$lists, $delete],
|
|
12
|
+
get: [$lists, $get],
|
|
13
|
+
update: [$lists, $update],
|
|
14
|
+
getIblockTypeId: [$lists, $get, $iblock, $type, $id], // Метод возвращает id типа инфоблока
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
BXRestLists.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestLists, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
19
|
+
BXRestLists.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestLists, providedIn: 'root' });
|
|
20
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestLists, decorators: [{
|
|
21
|
+
type: Injectable,
|
|
22
|
+
args: [{
|
|
23
|
+
providedIn: 'root'
|
|
24
|
+
}]
|
|
25
|
+
}] });
|
|
26
|
+
export class BXRestListsRes extends new Proxy(BXRestLists, {
|
|
27
|
+
get(target, prop, receiver) {
|
|
28
|
+
const res = Reflect.get(target, prop, receiver);
|
|
29
|
+
if (res in Observable) {
|
|
30
|
+
return Reflect.get(target, prop, receiver).pipe(
|
|
31
|
+
// @ts-ignore
|
|
32
|
+
map(v => mapResult(v)));
|
|
33
|
+
}
|
|
34
|
+
return res;
|
|
35
|
+
}
|
|
36
|
+
}) {
|
|
37
|
+
}
|
|
38
|
+
BXRestListsRes.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestListsRes, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
39
|
+
BXRestListsRes.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestListsRes, providedIn: 'root' });
|
|
40
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestListsRes, decorators: [{
|
|
41
|
+
type: Injectable,
|
|
42
|
+
args: [{
|
|
43
|
+
providedIn: 'root'
|
|
44
|
+
}]
|
|
45
|
+
}] });
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9ieC1yZXN0L3NyYy9yZXF1ZXN0L2xpc3RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxJQUFJLEVBQ0osT0FBTyxFQUNQLElBQUksRUFDSixPQUFPLEVBQ1AsR0FBRyxFQUNILE1BQU0sRUFDTixLQUFLLEVBQ0wsT0FBTyxFQUNSLE1BQU0sNEJBQTRCLENBQUE7QUFDbkMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUMxQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQ2pDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUNwQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sd0JBQXdCLENBQUE7O0FBTWxELE1BQU0sQ0FBQyxPQUFPLE9BQU8sV0FBVztJQUhoQztRQUlJLFFBQUcsR0FBRztZQUNGLEdBQUcsRUFBRSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUM7WUFDbkIsTUFBTSxFQUFFLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQztZQUN6QixHQUFHLEVBQUUsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDO1lBQ25CLE1BQU0sRUFBRSxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUM7WUFDekIsZUFBZSxFQUFFLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEdBQUcsQ0FBQyxFQUFFLHFDQUFxQztTQUM5RixDQUFBO0tBZ0RKOzt3R0F2RG9CLFdBQVc7NEdBQVgsV0FBVyxjQUZoQixNQUFNOzJGQUVELFdBQVc7a0JBSC9CLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCOztBQTZERCxNQUFNLE9BQU8sY0FBZSxTQUFRLElBQUksS0FBSyxDQUFDLFdBQVcsRUFBRTtJQUN6RCxHQUFHLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxRQUFRO1FBQ3hCLE1BQU0sR0FBRyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQTtRQUMvQyxJQUFHLEdBQUcsSUFBSSxVQUFVLEVBQUM7WUFDbkIsT0FBTyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUMsSUFBSTtZQUM3QyxhQUFhO1lBQ2IsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQ3ZCLENBQUE7U0FDRjtRQUNELE9BQU8sR0FBRyxDQUFBO0lBQ1osQ0FBQztDQUNGLENBQUM7OzJHQVhXLGNBQWM7K0dBQWQsY0FBYyxjQUZiLE1BQU07MkZBRVAsY0FBYztrQkFIMUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICRhZGQsXHJcbiAgJGRlbGV0ZSxcclxuICAkZ2V0LFxyXG4gICRpYmxvY2ssXHJcbiAgJGlkLFxyXG4gICRsaXN0cyxcclxuICAkdHlwZSxcclxuICAkdXBkYXRlXHJcbn0gZnJvbSAnLi4vY29uc3RzL3BhcnQtbmFtZS1tZXRvZHMnXHJcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcydcclxuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXHJcbmltcG9ydCB7IG1hcFJlc3VsdCB9IGZyb20gJy4uL2Z1bmN0aW9ucy9tYXBSZXN1bHQnXHJcblxyXG5cclxuQEluamVjdGFibGUoe1xyXG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEJYUmVzdExpc3RzIHtcclxuICAgIHVybCA9IHtcclxuICAgICAgICBhZGQ6IFskbGlzdHMsICRhZGRdLCAvLyDQnNC10YLQvtC0INGB0L7Qt9C00LDRkdGCINGB0L/QuNGB0L7QulxyXG4gICAgICAgIGRlbGV0ZTogWyRsaXN0cywgJGRlbGV0ZV0sIC8vINCc0LXRgtC+0LQg0YPQtNCw0LvRj9C10YIg0YHQv9C40YHQvtC6XHJcbiAgICAgICAgZ2V0OiBbJGxpc3RzLCAkZ2V0XSwgLy8g0JzQtdGC0L7QtCDQstC+0LfQstGA0LDRidCw0LXRgiDQtNCw0L3QvdGL0LUg0L/QviDRgdC/0LjRgdC60LDQvFxyXG4gICAgICAgIHVwZGF0ZTogWyRsaXN0cywgJHVwZGF0ZV0sIC8vINCc0LXRgtC+0LQg0L7QsdC90L7QstC70Y/QtdGCINGB0YPRidC10YHRgtCy0YPRjtGJ0LjQuSDRgdC/0LjRgdC+0LpcclxuICAgICAgICBnZXRJYmxvY2tUeXBlSWQ6IFskbGlzdHMsICRnZXQsICRpYmxvY2ssICR0eXBlLCAkaWRdLCAvLyDQnNC10YLQvtC0INCy0L7Qt9Cy0YDQsNGJ0LDQtdGCIGlkINGC0LjQv9CwINC40L3RhNC+0LHQu9C+0LrQsFxyXG4gICAgfVxyXG5cclxuICAgIC8vIGNvbnN0cnVjdG9yKFxyXG4gICAgLy8gICAgIHByaXZhdGUgaHR0cDogSHR0cEJYU2VydmljZXMsXHJcbiAgICAvLyAgICAgcHJpdmF0ZSBsaXN0c01hcDogTGlzdHNNYXBTZXJ2aWNlc1xyXG4gICAgLy8gKSB7XHJcbiAgICAvLyB9XHJcblxyXG4gICAgLy8gZ2V0KHByYW06IGlCWFJlc3RQYXJhbUxpc3RHZXQpOiBPYnNlcnZhYmxlPEl0ZW1MaXN0c1tdIHwgdW5kZWZpbmVkPiB7XHJcbiAgICAvLyAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PGlIdHRwQW5zd2VyQlg8SXRlbUxpc3RzQlhbXT4+KHRoaXMudXJsLmdldCwgcHJhbSlcclxuICAgIC8vICAgICAgICAgLnBpcGUoXHJcbiAgICAvLyAgICAgICAgICAgICBtYXAodiA9PiAodiAmJiB2Lmxlbmd0aCkgPyB2Lm1hcChpID0+IHRoaXMubGlzdHNNYXAubWFwSXRlbUxpc3RzKGkpKSA6IFtdKVxyXG4gICAgLy8gICAgICAgICApXHJcbiAgICAvLyB9XHJcblxyXG4gICAgLy8gZ2V0QWxsKHByYW06IGdldExpc3RQYXJhbSk6IE9ic2VydmFibGU8SXRlbUxpc3RzQlhbXSB8IHVuZGVmaW5lZD4ge1xyXG4gICAgLy8gICAgIHJldHVybiB0aGlzLmdldEJhc2UocHJhbSlcclxuICAgIC8vICAgICAgICAgLnBpcGUoXHJcbiAgICAvLyAgICAgICAgICAgICBtZXJnZU1hcChpdGVtcyA9PiB7XHJcbiAgICAvLyAgICAgICAgICAgICAgICAgaWYgKGl0ZW1zICYmIGl0ZW1zLnJlc3VsdCkge1xyXG4gICAgLy8gICAgICAgICAgICAgICAgICAgICBpZiAoaXRlbXMubmV4dCkge1xyXG4gICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgcHJhbS5zdGFydCA9IGl0ZW1zLm5leHRcclxuICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmdldEFsbChwcmFtKS5waXBlKFxyXG4gICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcCh2RW5kID0+IHtcclxuICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHZFbmQgJiYgaXRlbXMucmVzdWx0KSB7XHJcbiAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gWy4uLml0ZW1zLnJlc3VsdCwgLi4udkVuZF1cclxuICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gKGl0ZW1zLnJlc3VsdCkgPyBpdGVtcy5yZXN1bHQgOiBbXVxyXG4gICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKVxyXG4gICAgLy8gICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAvLyAgICAgICAgICAgICAgICAgICAgIHJldHVybiBvZihpdGVtcy5yZXN1bHQpXHJcbiAgICAvLyAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgIC8vICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFtdXHJcbiAgICAvLyAgICAgICAgICAgICAgICAgfVxyXG4gICAgLy8gICAgICAgICAgICAgfSlcclxuICAgIC8vICAgICAgICAgKVxyXG4gICAgLy8gfVxyXG5cclxuICAgIC8vIGdldEFsbFdpdGhNYXAocHJhbTogZ2V0TGlzdFBhcmFtKTogT2JzZXJ2YWJsZTxJdGVtTGlzdHNbXSB8IHVuZGVmaW5lZD4ge1xyXG4gICAgLy8gICAgIHJldHVybiB0aGlzLmdldEFsbChwcmFtKVxyXG4gICAgLy8gICAgICAgICAucGlwZShcclxuICAgIC8vICAgICAgICAgICAgIG1hcCh2ID0+ICh2ICYmIHYubGVuZ3RoKSA/IHYubWFwKGkgPT4gdGhpcy5saXN0c01hcC5tYXBJdGVtTGlzdHMoaSkpIDogW10pXHJcbiAgICAvLyAgICAgICAgIClcclxuICAgIC8vIH1cclxuXHJcbiAgICAvLyBnZXRGaWVsZChwcmFtOiBnZXRMaXN0RmllbGRQYXJhbSk6IE9ic2VydmFibGU8aUh0dHBBbnN3ZXJCWDxGaWVsZEl0ZW1MaXN0c1tdPiB8IHVuZGVmaW5lZD4ge1xyXG4gICAgLy8gICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxpSHR0cEFuc3dlckJYPHsgW2tleTogc3RyaW5nXTogRmllbGRJdGVtTGlzdHMgfT4+KHRoaXMudXJsLmZpZWxkLmdldCwgcHJhbSlcclxuICAgIC8vIH1cclxufVxyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQlhSZXN0TGlzdHNSZXMgZXh0ZW5kcyBuZXcgUHJveHkoQlhSZXN0TGlzdHMsIHtcclxuICBnZXQodGFyZ2V0LCBwcm9wLCByZWNlaXZlcikge1xyXG4gICAgY29uc3QgcmVzID0gUmVmbGVjdC5nZXQodGFyZ2V0LCBwcm9wLCByZWNlaXZlcilcclxuICAgIGlmKHJlcyBpbiBPYnNlcnZhYmxlKXtcclxuICAgICAgcmV0dXJuIFJlZmxlY3QuZ2V0KHRhcmdldCwgcHJvcCwgcmVjZWl2ZXIpLnBpcGUoXHJcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxyXG4gICAgICAgIG1hcCh2ID0+IG1hcFJlc3VsdCh2KSlcclxuICAgICAgKVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlc1xyXG4gIH1cclxufSl7fVxyXG4iXX0=
|
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
import { Observable, of } from 'rxjs';
|
|
2
|
+
import { first, map, mergeMap, tap } from 'rxjs/operators';
|
|
3
|
+
import clone from 'just-clone';
|
|
4
|
+
import HttpBXServices from '../services/http/HttpBX';
|
|
5
|
+
import { saveArr, saveSelf } from '../store/users';
|
|
6
|
+
// import DateTrace from 'bx-rest/services/api/trace/metods/date'
|
|
7
|
+
import SnackBarService from '../services/snack-bar/snack-bar.service';
|
|
8
|
+
import { $get, $list, $search, $update, $user } from '../consts/part-name-metods';
|
|
9
|
+
import { Injectable } from '@angular/core';
|
|
10
|
+
import { mapResult } from '../functions/mapResult';
|
|
11
|
+
import * as i0 from "@angular/core";
|
|
12
|
+
import * as i1 from "@ngrx/store";
|
|
13
|
+
import * as i2 from "../services/map/rest/user";
|
|
14
|
+
import * as i3 from "@angular/common";
|
|
15
|
+
export class BXRestUser {
|
|
16
|
+
constructor(http, snackBar,
|
|
17
|
+
// private img: ImgServices,
|
|
18
|
+
//private dateTrace: DateTrace,
|
|
19
|
+
store, userMap, datePipe) {
|
|
20
|
+
this.http = http;
|
|
21
|
+
this.snackBar = snackBar;
|
|
22
|
+
this.store = store;
|
|
23
|
+
this.userMap = userMap;
|
|
24
|
+
this.datePipe = datePipe;
|
|
25
|
+
this.url = {
|
|
26
|
+
admin: [$user, 'admin'],
|
|
27
|
+
get: [$user, $get],
|
|
28
|
+
current: [$user, 'current'],
|
|
29
|
+
update: [$user, $update],
|
|
30
|
+
search: [$user, $search],
|
|
31
|
+
access: [$user, 'access'],
|
|
32
|
+
// AU - все авторизованные пользователи
|
|
33
|
+
// D1 - подразделение с id=1
|
|
34
|
+
// G1 - группа с id=1
|
|
35
|
+
fields: [$user, 'fields'],
|
|
36
|
+
userfield: {
|
|
37
|
+
list: [$user, 'userfield', $list]
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
this.def = {
|
|
41
|
+
params: { ACTIVE: 1, start: 0 }
|
|
42
|
+
};
|
|
43
|
+
this.user$ = this.store.select('users');
|
|
44
|
+
}
|
|
45
|
+
admin() {
|
|
46
|
+
return this.http.get(this.url.admin);
|
|
47
|
+
}
|
|
48
|
+
get(params = {}) {
|
|
49
|
+
let copyParams = clone(params);
|
|
50
|
+
this.setDefParam(copyParams);
|
|
51
|
+
return this.http.post(this.url.get, copyParams, 'Не удалось получить пользователей')
|
|
52
|
+
.pipe(tap(v => {
|
|
53
|
+
if (v && v.result) {
|
|
54
|
+
this.saveArrUser(v.result);
|
|
55
|
+
}
|
|
56
|
+
}));
|
|
57
|
+
}
|
|
58
|
+
current(update = false) {
|
|
59
|
+
if (update) {
|
|
60
|
+
return this.getSelfHttp();
|
|
61
|
+
}
|
|
62
|
+
else {
|
|
63
|
+
return this.user$.pipe(mergeMap(v => {
|
|
64
|
+
if (v && v.self) {
|
|
65
|
+
return of(v.self);
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
return this.getSelfHttp();
|
|
69
|
+
}
|
|
70
|
+
}), first());
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
getSelfHttp() {
|
|
74
|
+
return this.http.get(this.url.current, {}, 'Не удалось получить пользователя')
|
|
75
|
+
.pipe(map(v => {
|
|
76
|
+
if (v && v.result) {
|
|
77
|
+
return this.userMap.HttpToBX(v.result);
|
|
78
|
+
}
|
|
79
|
+
return undefined;
|
|
80
|
+
}), tap(v => {
|
|
81
|
+
if (v) {
|
|
82
|
+
this.store.dispatch(saveSelf({ self: v }));
|
|
83
|
+
}
|
|
84
|
+
}));
|
|
85
|
+
}
|
|
86
|
+
access(access, textError = 'Не удалось получить права') {
|
|
87
|
+
return this.http.get(this.url.access, { ACCESS: access }, textError);
|
|
88
|
+
}
|
|
89
|
+
// getAll(params: iBXGetParam = {}): Observable<iBXRestUser [] | undefined> {
|
|
90
|
+
// if (!Object.keys(params).length) {
|
|
91
|
+
// params = clone(this.def.params)
|
|
92
|
+
// }
|
|
93
|
+
//
|
|
94
|
+
// const saveAllUser = compare(params, this.def.params)
|
|
95
|
+
// return this.user$.pipe(
|
|
96
|
+
// take(1),
|
|
97
|
+
// mergeMap(v => {
|
|
98
|
+
// if (v.load.all) {
|
|
99
|
+
// if (compare(this.def.params, params)) {
|
|
100
|
+
// return of(clone(v.data))
|
|
101
|
+
// }
|
|
102
|
+
// }
|
|
103
|
+
//
|
|
104
|
+
// return this.getEndArray(params).pipe(
|
|
105
|
+
// take(1),
|
|
106
|
+
// map(v => {
|
|
107
|
+
// if (v && v.result) {
|
|
108
|
+
// let cl = clone(v.result)
|
|
109
|
+
// return this.saveArrUser(cl)
|
|
110
|
+
// }
|
|
111
|
+
// return undefined
|
|
112
|
+
// }),
|
|
113
|
+
// )
|
|
114
|
+
// }),
|
|
115
|
+
// tap(v => {
|
|
116
|
+
// if (v && v.length && saveAllUser) {
|
|
117
|
+
// this.store.dispatch(loadAll({load: true}))
|
|
118
|
+
// }
|
|
119
|
+
// params.start = this.def.params.start
|
|
120
|
+
// })
|
|
121
|
+
// )
|
|
122
|
+
// }
|
|
123
|
+
saveArrUser(users) {
|
|
124
|
+
let result = [];
|
|
125
|
+
for (const user of users) {
|
|
126
|
+
result.push(this.userMap.HttpToBX(user));
|
|
127
|
+
}
|
|
128
|
+
this.store.dispatch(saveArr({ arr: result }));
|
|
129
|
+
return result;
|
|
130
|
+
}
|
|
131
|
+
search(params) {
|
|
132
|
+
if (typeof params === 'string') {
|
|
133
|
+
params = { FIND: params };
|
|
134
|
+
}
|
|
135
|
+
if (typeof params.ACTIVE !== 'boolean') {
|
|
136
|
+
params.ACTIVE = true;
|
|
137
|
+
}
|
|
138
|
+
return this.http.get(this.url.search, params, 'Сервер не отвечает на запрос поиска');
|
|
139
|
+
}
|
|
140
|
+
fields() {
|
|
141
|
+
return this.http.get(this.url.fields);
|
|
142
|
+
}
|
|
143
|
+
update(user, fieldUpdate) {
|
|
144
|
+
if (fieldUpdate && fieldUpdate.length) {
|
|
145
|
+
let sendData = {
|
|
146
|
+
ID: user.ID,
|
|
147
|
+
};
|
|
148
|
+
const userBX = this.userMap.BXtoHttp(user);
|
|
149
|
+
for (const field of fieldUpdate) {
|
|
150
|
+
if (userBX[field]) {
|
|
151
|
+
sendData[field] = userBX[field];
|
|
152
|
+
}
|
|
153
|
+
else {
|
|
154
|
+
this.snackBar.error('Одно из указанных полей отправлено не верно');
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
return this.http.post(this.url.update, sendData, 'Не удалось обновить пользователя с ID' + user.ID);
|
|
158
|
+
}
|
|
159
|
+
else {
|
|
160
|
+
this.snackBar.error('Не указано ни одно поле для редактирования пользователя');
|
|
161
|
+
return of({});
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
// getEndArray(params: UserFilter = {}): Observable<iHttpAnswerBX<iBXRestUserHttp[]> | undefined> {
|
|
165
|
+
// return this.get(params).pipe(
|
|
166
|
+
// mergeMap(items => {
|
|
167
|
+
// if (items && items.result && typeof items.result === 'object') {
|
|
168
|
+
// if (items.next) {
|
|
169
|
+
// params.start = items.next
|
|
170
|
+
// return this.getEndArray(params).pipe(map(vEnd => {
|
|
171
|
+
// if (vEnd && items.result && vEnd.result) {
|
|
172
|
+
// return {result: [...items.result, ...vEnd.result]}
|
|
173
|
+
// }
|
|
174
|
+
// return (items) ? items : undefined
|
|
175
|
+
// }))
|
|
176
|
+
// }
|
|
177
|
+
// return of(items)
|
|
178
|
+
// } else {
|
|
179
|
+
// return of(undefined)
|
|
180
|
+
// }
|
|
181
|
+
// }),
|
|
182
|
+
// )
|
|
183
|
+
// }
|
|
184
|
+
setDefParam(params) {
|
|
185
|
+
if (!params.hasOwnProperty('ACTIVE')) {
|
|
186
|
+
params.ACTIVE = this.def.params.ACTIVE;
|
|
187
|
+
}
|
|
188
|
+
if (params.ACTIVE && params.ACTIVE === 2) {
|
|
189
|
+
delete params.ACTIVE;
|
|
190
|
+
}
|
|
191
|
+
if (!params.hasOwnProperty('start')) {
|
|
192
|
+
params.start = this.def.params.start;
|
|
193
|
+
}
|
|
194
|
+
if (params.UF_DEPARTMENT && !params.UF_DEPARTMENT.length) {
|
|
195
|
+
delete params.UF_DEPARTMENT;
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
BXRestUser.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestUser, deps: [{ token: HttpBXServices }, { token: SnackBarService }, { token: i1.Store }, { token: i2.BitrixApiUserMapServices }, { token: i3.DatePipe }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
200
|
+
BXRestUser.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestUser, providedIn: 'root' });
|
|
201
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestUser, decorators: [{
|
|
202
|
+
type: Injectable,
|
|
203
|
+
args: [{
|
|
204
|
+
providedIn: 'root'
|
|
205
|
+
}]
|
|
206
|
+
}], ctorParameters: function () { return [{ type: HttpBXServices }, { type: SnackBarService }, { type: i1.Store }, { type: i2.BitrixApiUserMapServices }, { type: i3.DatePipe }]; } });
|
|
207
|
+
export class BXRestUserRes extends new Proxy(BXRestUser, {
|
|
208
|
+
get(target, prop, receiver) {
|
|
209
|
+
const res = Reflect.get(target, prop, receiver);
|
|
210
|
+
if (res in Observable) {
|
|
211
|
+
return Reflect.get(target, prop, receiver).pipe(
|
|
212
|
+
// @ts-ignore
|
|
213
|
+
map(v => mapResult(v)));
|
|
214
|
+
}
|
|
215
|
+
return res;
|
|
216
|
+
}
|
|
217
|
+
}) {
|
|
218
|
+
}
|
|
219
|
+
BXRestUserRes.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestUserRes, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
220
|
+
BXRestUserRes.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestUserRes, providedIn: 'root' });
|
|
221
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestUserRes, decorators: [{
|
|
222
|
+
type: Injectable,
|
|
223
|
+
args: [{
|
|
224
|
+
providedIn: 'root'
|
|
225
|
+
}]
|
|
226
|
+
}] });
|
|
227
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2J4LXJlc3Qvc3JjL3JlcXVlc3QvdXNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUNyQyxPQUFPLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDMUQsT0FBTyxLQUFLLE1BQU0sWUFBWSxDQUFBO0FBRTlCLE9BQU8sY0FBYyxNQUFNLHlCQUF5QixDQUFBO0FBR3BELE9BQU8sRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFjLE1BQU0sZ0JBQWdCLENBQUE7QUFHOUQsaUVBQWlFO0FBQ2pFLE9BQU8sZUFBZSxNQUFNLHlDQUF5QyxDQUFBO0FBR3JFLE9BQU8sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sNEJBQTRCLENBQUE7QUFDakYsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUMxQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sd0JBQXdCLENBQUE7Ozs7O0FBS2xELE1BQU0sT0FBTyxVQUFVO0lBd0JyQixZQUNVLElBQW9CLEVBQ3BCLFFBQXlCO0lBQ2pDLDRCQUE0QjtJQUM1QiwrQkFBK0I7SUFDdkIsS0FBbUMsRUFDbkMsT0FBaUMsRUFDakMsUUFBa0I7UUFObEIsU0FBSSxHQUFKLElBQUksQ0FBZ0I7UUFDcEIsYUFBUSxHQUFSLFFBQVEsQ0FBaUI7UUFHekIsVUFBSyxHQUFMLEtBQUssQ0FBOEI7UUFDbkMsWUFBTyxHQUFQLE9BQU8sQ0FBMEI7UUFDakMsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQTdCNUIsUUFBRyxHQUFHO1lBQ0osS0FBSyxFQUFFLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQztZQUN2QixH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QVVULFVBQVUsY0FGVCxNQUFNOzJGQUVQLFVBQVU7a0JBSHRCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzBEQWhCTSxjQUFjLFlBT2QsZUFBZTtBQXNPdEIsTUFBTSxPQUFPLGFBQWMsU0FBUSxJQUFJLEtBQUssQ0FBQyxVQUFVLEVBQUU7SUFDdkQsR0FBRyxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsUUFBUTtRQUN4QixNQUFNLEdBQUcsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUE7UUFDL0MsSUFBRyxHQUFHLElBQUksVUFBVSxFQUFDO1lBQ25CLE9BQU8sT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDLElBQUk7WUFDN0MsYUFBYTtZQUNiLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUN2QixDQUFBO1NBQ0Y7UUFFRCxPQUFPLEdBQUcsQ0FBQTtJQUNaLENBQUM7Q0FDRixDQUFDOzswR0FaVyxhQUFhOzhHQUFiLGFBQWEsY0FGWixNQUFNOzJGQUVQLGFBQWE7a0JBSHpCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgZmlyc3QsIG1hcCwgbWVyZ2VNYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuaW1wb3J0IGNsb25lIGZyb20gJ2p1c3QtY2xvbmUnXG5pbXBvcnQgeyBpQlhHZXRQYXJhbSB9IGZyb20gJy4uL3R5cGlmaWNhdGlvbi9yZXN0L3VzZXIvZ2V0J1xuaW1wb3J0IEh0dHBCWFNlcnZpY2VzIGZyb20gJy4uL3NlcnZpY2VzL2h0dHAvSHR0cEJYJ1xuaW1wb3J0IFVzZXJGaWx0ZXJTZWFyY2ggZnJvbSAnLi4vdHlwaWZpY2F0aW9uL3Jlc3QvdXNlci9Vc2VyRmlsdGVyU2VhcmNoJ1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSdcbmltcG9ydCB7IHNhdmVBcnIsIHNhdmVTZWxmLCBzdG9yZVVzZXJzIH0gZnJvbSAnLi4vc3RvcmUvdXNlcnMnXG5pbXBvcnQgeyBEYXRlUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7IEJpdHJpeEFwaVVzZXJNYXBTZXJ2aWNlcyB9IGZyb20gJy4uL3NlcnZpY2VzL21hcC9yZXN0L3VzZXInXG4vLyBpbXBvcnQgRGF0ZVRyYWNlIGZyb20gJ2J4LXJlc3Qvc2VydmljZXMvYXBpL3RyYWNlL21ldG9kcy9kYXRlJ1xuaW1wb3J0IFNuYWNrQmFyU2VydmljZSBmcm9tICcuLi9zZXJ2aWNlcy9zbmFjay1iYXIvc25hY2stYmFyLnNlcnZpY2UnXG5pbXBvcnQgaUh0dHBBbnN3ZXJCWCBmcm9tICcuLi90eXBpZmljYXRpb24vcmVzdC9iYXNlL2h0dHBBbnN3ZXJCWCdcbmltcG9ydCB7IGlCWFJlc3RVc2VyLCBpQlhSZXN0VXNlckh0dHAsIGlCWFJlc3RVc2VySHR0cEZpZWxkIH0gZnJvbSAnLi4vdHlwaWZpY2F0aW9uL3Jlc3QvdXNlci91c2VyJ1xuaW1wb3J0IHsgJGdldCwgJGxpc3QsICRzZWFyY2gsICR1cGRhdGUsICR1c2VyIH0gZnJvbSAnLi4vY29uc3RzL3BhcnQtbmFtZS1tZXRvZHMnXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IG1hcFJlc3VsdCB9IGZyb20gJy4uL2Z1bmN0aW9ucy9tYXBSZXN1bHQnXG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEJYUmVzdFVzZXIge1xuXG4gIHVybCA9IHtcbiAgICBhZG1pbjogWyR1c2VyLCAnYWRtaW4nXSxcbiAgICBnZXQ6IFskdXNlciwgJGdldF0sXG4gICAgY3VycmVudDogWyR1c2VyLCAnY3VycmVudCddLFxuICAgIHVwZGF0ZTogWyR1c2VyLCAkdXBkYXRlXSxcbiAgICBzZWFyY2g6IFskdXNlciwgJHNlYXJjaF0sXG4gICAgYWNjZXNzOiBbJHVzZXIsICdhY2Nlc3MnXSwgLy8gVTEgLSDQv9C+0LvRjNC30L7QstCw0YLQtdC70Ywg0YEgaWQgPTFcbiAgICAvLyBBVSAtINCy0YHQtSDQsNCy0YLQvtGA0LjQt9C+0LLQsNC90L3Ri9C1INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvQuFxuICAgIC8vIEQxIC0g0L/QvtC00YDQsNC30LTQtdC70LXQvdC40LUg0YEgaWQ9MVxuICAgIC8vIEcxIC0g0LPRgNGD0L/Qv9CwINGBIGlkPTFcbiAgICBmaWVsZHM6IFskdXNlciwgJ2ZpZWxkcyddLFxuICAgIHVzZXJmaWVsZDoge1xuICAgICAgbGlzdDogWyR1c2VyLCAndXNlcmZpZWxkJywgJGxpc3RdXG4gICAgfVxuICB9XG5cbiAgZGVmOiB7IHBhcmFtczogeyBBQ1RJVkU6IDEsIHN0YXJ0OiAwIH0gfSA9IHtcbiAgICBwYXJhbXM6IHtBQ1RJVkU6IDEsIHN0YXJ0OiAwfVxuICB9XG5cbiAgdXNlciQ6IE9ic2VydmFibGU8c3RvcmVVc2Vycz5cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBCWFNlcnZpY2VzLFxuICAgIHByaXZhdGUgc25hY2tCYXI6IFNuYWNrQmFyU2VydmljZSxcbiAgICAvLyBwcml2YXRlIGltZzogSW1nU2VydmljZXMsXG4gICAgLy9wcml2YXRlIGRhdGVUcmFjZTogRGF0ZVRyYWNlLFxuICAgIHByaXZhdGUgc3RvcmU6IFN0b3JlPHsgdXNlcnM6IHN0b3JlVXNlcnMgfT4sXG4gICAgcHJpdmF0ZSB1c2VyTWFwOiBCaXRyaXhBcGlVc2VyTWFwU2VydmljZXMsXG4gICAgcHJpdmF0ZSBkYXRlUGlwZTogRGF0ZVBpcGVcbiAgKSB7XG4gICAgdGhpcy51c2VyJCA9IHRoaXMuc3RvcmUuc2VsZWN0KCd1c2VycycpXG4gIH1cblxuICBhZG1pbigpIHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxpSHR0cEFuc3dlckJYPGJvb2xlYW4+Pih0aGlzLnVybC5hZG1pbilcbiAgfVxuXG4gIGdldChwYXJhbXM6IGlCWEdldFBhcmFtID0ge30pOiBPYnNlcnZhYmxlPGlIdHRwQW5zd2VyQlg8aUJYUmVzdFVzZXJIdHRwW10+IHwgdW5kZWZpbmVkPiB7XG4gICAgbGV0IGNvcHlQYXJhbXMgPSBjbG9uZShwYXJhbXMpXG4gICAgdGhpcy5zZXREZWZQYXJhbShjb3B5UGFyYW1zKVxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxpSHR0cEFuc3dlckJYPGlCWFJlc3RVc2VySHR0cFtdPiB8IHVuZGVmaW5lZD5cbiAgICAodGhpcy51cmwuZ2V0LCBjb3B5UGFyYW1zLCAn0J3QtSDRg9C00LDQu9C+0YHRjCDQv9C+0LvRg9GH0LjRgtGMINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvQtdC5JylcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAodiA9PiB7XG4gICAgICAgICAgaWYgKHYgJiYgdi5yZXN1bHQpIHtcbiAgICAgICAgICAgIHRoaXMuc2F2ZUFyclVzZXIodi5yZXN1bHQpXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgKVxuICB9XG5cbiAgY3VycmVudCh1cGRhdGUgPSBmYWxzZSkge1xuICAgIGlmICh1cGRhdGUpIHtcbiAgICAgIHJldHVybiB0aGlzLmdldFNlbGZIdHRwKClcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHRoaXMudXNlciQucGlwZShcbiAgICAgICAgbWVyZ2VNYXAodiA9PiB7XG4gICAgICAgICAgaWYgKHYgJiYgdi5zZWxmKSB7XG4gICAgICAgICAgICByZXR1cm4gb2Yodi5zZWxmKVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5nZXRTZWxmSHR0cCgpXG4gICAgICAgICAgfVxuICAgICAgICB9KSxcbiAgICAgICAgZmlyc3QoKVxuICAgICAgKVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0U2VsZkh0dHAoKSB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8aUh0dHBBbnN3ZXJCWDxpQlhSZXN0VXNlckh0dHA+PlxuICAgICh0aGlzLnVybC5jdXJyZW50LCB7fSwgJ9Cd0LUg0YPQtNCw0LvQvtGB0Ywg0L/QvtC70YPRh9C40YLRjCDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8nKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCh2ID0+IHtcbiAgICAgICAgICBpZiAodiAmJiB2LnJlc3VsdCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMudXNlck1hcC5IdHRwVG9CWCh2LnJlc3VsdClcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZFxuICAgICAgICB9KSxcbiAgICAgICAgdGFwKHYgPT4ge1xuICAgICAgICAgIGlmICh2KSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKHNhdmVTZWxmKHtzZWxmOiB2fSkpXG4gICAgICAgICAgfVxuICAgICAgICB9KSxcbiAgICAgIClcbiAgfVxuXG4gIGFjY2VzcyhhY2Nlc3M6IHN0cmluZ1tdLCB0ZXh0RXJyb3IgPSAn0J3QtSDRg9C00LDQu9C+0YHRjCDQv9C+0LvRg9GH0LjRgtGMINC/0YDQsNCy0LAnKSB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8aUh0dHBBbnN3ZXJCWDxib29sZWFuPiB8IHVuZGVmaW5lZD4odGhpcy51cmwuYWNjZXNzLCB7QUNDRVNTOiBhY2Nlc3N9LCB0ZXh0RXJyb3IpXG4gIH1cblxuICAvLyBnZXRBbGwocGFyYW1zOiBpQlhHZXRQYXJhbSA9IHt9KTogT2JzZXJ2YWJsZTxpQlhSZXN0VXNlciBbXSB8IHVuZGVmaW5lZD4ge1xuICAvLyAgIGlmICghT2JqZWN0LmtleXMocGFyYW1zKS5sZW5ndGgpIHtcbiAgLy8gICAgIHBhcmFtcyA9IGNsb25lKHRoaXMuZGVmLnBhcmFtcylcbiAgLy8gICB9XG4gIC8vXG4gIC8vICAgY29uc3Qgc2F2ZUFsbFVzZXIgPSBjb21wYXJlKHBhcmFtcywgdGhpcy5kZWYucGFyYW1zKVxuICAvLyAgIHJldHVybiB0aGlzLnVzZXIkLnBpcGUoXG4gIC8vICAgICB0YWtlKDEpLFxuICAvLyAgICAgbWVyZ2VNYXAodiA9PiB7XG4gIC8vICAgICAgIGlmICh2LmxvYWQuYWxsKSB7XG4gIC8vICAgICAgICAgaWYgKGNvbXBhcmUodGhpcy5kZWYucGFyYW1zLCBwYXJhbXMpKSB7XG4gIC8vICAgICAgICAgICByZXR1cm4gb2YoY2xvbmUodi5kYXRhKSlcbiAgLy8gICAgICAgICB9XG4gIC8vICAgICAgIH1cbiAgLy9cbiAgLy8gICAgICAgcmV0dXJuIHRoaXMuZ2V0RW5kQXJyYXkocGFyYW1zKS5waXBlKFxuICAvLyAgICAgICAgIHRha2UoMSksXG4gIC8vICAgICAgICAgbWFwKHYgPT4ge1xuICAvLyAgICAgICAgICAgaWYgKHYgJiYgdi5yZXN1bHQpIHtcbiAgLy8gICAgICAgICAgICAgbGV0IGNsID0gY2xvbmUodi5yZXN1bHQpXG4gIC8vICAgICAgICAgICAgIHJldHVybiB0aGlzLnNhdmVBcnJVc2VyKGNsKVxuICAvLyAgICAgICAgICAgfVxuICAvLyAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZFxuICAvLyAgICAgICAgIH0pLFxuICAvLyAgICAgICApXG4gIC8vICAgICB9KSxcbiAgLy8gICAgIHRhcCh2ID0+IHtcbiAgLy8gICAgICAgaWYgKHYgJiYgdi5sZW5ndGggJiYgc2F2ZUFsbFVzZXIpIHtcbiAgLy8gICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKGxvYWRBbGwoe2xvYWQ6IHRydWV9KSlcbiAgLy8gICAgICAgfVxuICAvLyAgICAgICBwYXJhbXMuc3RhcnQgPSB0aGlzLmRlZi5wYXJhbXMuc3RhcnRcbiAgLy8gICAgIH0pXG4gIC8vICAgKVxuICAvLyB9XG5cbiAgcHJpdmF0ZSBzYXZlQXJyVXNlcih1c2VyczogaUJYUmVzdFVzZXJIdHRwW10pIHtcbiAgICBsZXQgcmVzdWx0OiBpQlhSZXN0VXNlciBbXSA9IFtdXG4gICAgZm9yIChjb25zdCB1c2VyIG9mIHVzZXJzKSB7XG4gICAgICByZXN1bHQucHVzaCh0aGlzLnVzZXJNYXAuSHR0cFRvQlgodXNlcikpXG4gICAgfVxuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goc2F2ZUFycih7YXJyOiByZXN1bHR9KSlcblxuICAgIHJldHVybiByZXN1bHRcbiAgfVxuXG4gIHNlYXJjaChwYXJhbXM6IHN0cmluZyB8IFVzZXJGaWx0ZXJTZWFyY2gpIHtcbiAgICBpZiAodHlwZW9mIHBhcmFtcyA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHBhcmFtcyA9IHtGSU5EOiBwYXJhbXN9XG4gICAgfVxuICAgIGlmICh0eXBlb2YgcGFyYW1zLkFDVElWRSAhPT0gJ2Jvb2xlYW4nKSB7XG4gICAgICBwYXJhbXMuQUNUSVZFID0gdHJ1ZVxuICAgIH1cbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxpSHR0cEFuc3dlckJYPGlCWFJlc3RVc2VySHR0cFtdPj4oXG4gICAgICB0aGlzLnVybC5zZWFyY2gsXG4gICAgICBwYXJhbXMsXG4gICAgICAn0KHQtdGA0LLQtdGAINC90LUg0L7RgtCy0LXRh9Cw0LXRgiDQvdCwINC30LDQv9GA0L7RgSDQv9C+0LjRgdC60LAnXG4gICAgKVxuICB9XG5cbiAgZmllbGRzKCkge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGlIdHRwQW5zd2VyQlg8aUJYUmVzdFVzZXJIdHRwRmllbGQ+Pih0aGlzLnVybC5maWVsZHMpXG4gIH1cblxuICB1cGRhdGUodXNlcjogaUJYUmVzdFVzZXIsIGZpZWxkVXBkYXRlOiBzdHJpbmdbXSkge1xuICAgIGlmIChmaWVsZFVwZGF0ZSAmJiBmaWVsZFVwZGF0ZS5sZW5ndGgpIHtcbiAgICAgIGxldCBzZW5kRGF0YTogYW55ID0ge1xuICAgICAgICBJRDogdXNlci5JRCxcbiAgICAgIH1cbiAgICAgIGNvbnN0IHVzZXJCWCA9IHRoaXMudXNlck1hcC5CWHRvSHR0cCh1c2VyKVxuICAgICAgZm9yIChjb25zdCBmaWVsZCBvZiBmaWVsZFVwZGF0ZSkge1xuICAgICAgICBpZiAodXNlckJYW2ZpZWxkXSkge1xuICAgICAgICAgIHNlbmREYXRhW2ZpZWxkXSA9IHVzZXJCWFtmaWVsZF1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLnNuYWNrQmFyLmVycm9yKCfQntC00L3QviDQuNC3INGD0LrQsNC30LDQvdC90YvRhSDQv9C+0LvQtdC5INC+0YLQv9GA0LDQstC70LXQvdC+INC90LUg0LLQtdGA0L3QvicpXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxpSHR0cEFuc3dlckJYPGlCWFJlc3RVc2VySHR0cFtdPj4oXG4gICAgICAgIHRoaXMudXJsLnVwZGF0ZSwgc2VuZERhdGEsXG4gICAgICAgICfQndC1INGD0LTQsNC70L7RgdGMINC+0LHQvdC+0LLQuNGC0Ywg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPINGBIElEJyArIHVzZXIuSURcbiAgICAgIClcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zbmFja0Jhci5lcnJvcign0J3QtSDRg9C60LDQt9Cw0L3QviDQvdC4INC+0LTQvdC+INC/0L7Qu9C1INC00LvRjyDRgNC10LTQsNC60YLQuNGA0L7QstCw0L3QuNGPINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjycpXG4gICAgICByZXR1cm4gb2Yoe30pXG4gICAgfVxuICB9XG5cbiAgLy8gZ2V0RW5kQXJyYXkocGFyYW1zOiBVc2VyRmlsdGVyID0ge30pOiBPYnNlcnZhYmxlPGlIdHRwQW5zd2VyQlg8aUJYUmVzdFVzZXJIdHRwW10+IHwgdW5kZWZpbmVkPiB7XG4gIC8vICAgcmV0dXJuIHRoaXMuZ2V0KHBhcmFtcykucGlwZShcbiAgLy8gICAgIG1lcmdlTWFwKGl0ZW1zID0+IHtcbiAgLy8gICAgICAgaWYgKGl0ZW1zICYmIGl0ZW1zLnJlc3VsdCAmJiB0eXBlb2YgaXRlbXMucmVzdWx0ID09PSAnb2JqZWN0Jykge1xuICAvLyAgICAgICAgIGlmIChpdGVtcy5uZXh0KSB7XG4gIC8vICAgICAgICAgICBwYXJhbXMuc3RhcnQgPSBpdGVtcy5uZXh0XG4gIC8vICAgICAgICAgICByZXR1cm4gdGhpcy5nZXRFbmRBcnJheShwYXJhbXMpLnBpcGUobWFwKHZFbmQgPT4ge1xuICAvLyAgICAgICAgICAgICBpZiAodkVuZCAmJiBpdGVtcy5yZXN1bHQgJiYgdkVuZC5yZXN1bHQpIHtcbiAgLy8gICAgICAgICAgICAgICByZXR1cm4ge3Jlc3VsdDogWy4uLml0ZW1zLnJlc3VsdCwgLi4udkVuZC5yZXN1bHRdfVxuICAvLyAgICAgICAgICAgICB9XG4gIC8vICAgICAgICAgICAgIHJldHVybiAoaXRlbXMpID8gaXRlbXMgOiB1bmRlZmluZWRcbiAgLy8gICAgICAgICAgIH0pKVxuICAvLyAgICAgICAgIH1cbiAgLy8gICAgICAgICByZXR1cm4gb2YoaXRlbXMpXG4gIC8vICAgICAgIH0gZWxzZSB7XG4gIC8vICAgICAgICAgcmV0dXJuIG9mKHVuZGVmaW5lZClcbiAgLy8gICAgICAgfVxuICAvLyAgICAgfSksXG4gIC8vICAgKVxuICAvLyB9XG5cbiAgIHByaXZhdGUgc2V0RGVmUGFyYW0ocGFyYW1zOiBpQlhHZXRQYXJhbSkge1xuICAgIGlmICghcGFyYW1zLmhhc093blByb3BlcnR5KCdBQ1RJVkUnKSkge1xuICAgICAgcGFyYW1zLkFDVElWRSA9IHRoaXMuZGVmLnBhcmFtcy5BQ1RJVkVcbiAgICB9XG4gICAgaWYgKHBhcmFtcy5BQ1RJVkUgJiYgcGFyYW1zLkFDVElWRSA9PT0gMikge1xuICAgICAgZGVsZXRlIHBhcmFtcy5BQ1RJVkVcbiAgICB9XG4gICAgaWYgKCFwYXJhbXMuaGFzT3duUHJvcGVydHkoJ3N0YXJ0JykpIHtcbiAgICAgIHBhcmFtcy5zdGFydCA9IHRoaXMuZGVmLnBhcmFtcy5zdGFydFxuICAgIH1cblxuICAgIGlmIChwYXJhbXMuVUZfREVQQVJUTUVOVCAmJiAhcGFyYW1zLlVGX0RFUEFSVE1FTlQubGVuZ3RoKSB7XG4gICAgICBkZWxldGUgcGFyYW1zLlVGX0RFUEFSVE1FTlRcbiAgICB9XG4gIH1cbn1cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQlhSZXN0VXNlclJlcyBleHRlbmRzIG5ldyBQcm94eShCWFJlc3RVc2VyLCB7XG4gIGdldCh0YXJnZXQsIHByb3AsIHJlY2VpdmVyKSB7XG4gICAgY29uc3QgcmVzID0gUmVmbGVjdC5nZXQodGFyZ2V0LCBwcm9wLCByZWNlaXZlcilcbiAgICBpZihyZXMgaW4gT2JzZXJ2YWJsZSl7XG4gICAgICByZXR1cm4gUmVmbGVjdC5nZXQodGFyZ2V0LCBwcm9wLCByZWNlaXZlcikucGlwZShcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICBtYXAodiA9PiBtYXBSZXN1bHQodikpXG4gICAgICApXG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc1xuICB9XG59KXt9XG5cbiJdfQ==
|