bx-rest 0.9.3 → 0.9.4

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 (58) hide show
  1. package/esm2022/map/im/recent.mjs +1 -1
  2. package/esm2022/public-api.mjs +2 -6
  3. package/esm2022/request/app.mjs +2 -3
  4. package/esm2022/request/bizproc/activity.mjs +1 -1
  5. package/esm2022/request/bizproc/event.mjs +1 -1
  6. package/esm2022/request/bizproc/robot.mjs +1 -1
  7. package/esm2022/request/bizproc/task.mjs +1 -1
  8. package/esm2022/request/bizproc/workflow/instance.mjs +1 -1
  9. package/esm2022/request/bizproc/workflow/template.mjs +1 -1
  10. package/esm2022/request/department.mjs +8 -3
  11. package/esm2022/request/disk/attachedObject.mjs +5 -3
  12. package/esm2022/request/disk/file.mjs +6 -3
  13. package/esm2022/request/disk/folder.mjs +16 -3
  14. package/esm2022/request/lists/element.mjs +6 -3
  15. package/esm2022/request/log/blogcomment.mjs +1 -1
  16. package/esm2022/request/log/blogpost.mjs +6 -3
  17. package/esm2022/request/server.mjs +5 -3
  18. package/esm2022/request/socialnetwork/api/contentview.mjs +5 -3
  19. package/esm2022/request/socialnetwork/api/livefeed/blogpost/important.mjs +5 -3
  20. package/esm2022/request/socialnetwork.mjs +1 -2
  21. package/esm2022/request/sonet_group.mjs +5 -3
  22. package/esm2022/request/task/elapseditem.mjs +9 -3
  23. package/esm2022/request/task/item/userfield.mjs +5 -3
  24. package/esm2022/request/task/planner.mjs +3 -3
  25. package/esm2022/request/tasks/task/result.mjs +7 -3
  26. package/esm2022/request/tasks/task.mjs +13 -3
  27. package/esm2022/request/user/userfield.mjs +5 -3
  28. package/esm2022/request/user.mjs +11 -3
  29. package/esm2022/request-navvy/disk/attachedObject.mjs +3 -3
  30. package/esm2022/request-navvy/socialnetwork/api/contentview.mjs +3 -3
  31. package/esm2022/request-navvy/task/commentitem.mjs +9 -3
  32. package/esm2022/request-navvy/task/operation/elapseditem.mjs +1 -2
  33. package/esm2022/services/http/HttpBX.mjs +21 -14
  34. package/esm2022/services/http/http.mjs +52 -53
  35. package/esm2022/services/http/sessionKey.mjs +152 -52
  36. package/fesm2022/bx-rest.mjs +525 -1044
  37. package/fesm2022/bx-rest.mjs.map +1 -1
  38. package/package.json +1 -1
  39. package/public-api.d.ts +1 -5
  40. package/request/department.d.ts +6 -1
  41. package/request/disk/attachedObject.d.ts +3 -1
  42. package/request/disk/file.d.ts +4 -1
  43. package/request/disk/folder.d.ts +14 -1
  44. package/request/lists/element.d.ts +4 -1
  45. package/request/log/blogpost.d.ts +4 -1
  46. package/request/server.d.ts +3 -1
  47. package/request/sonet_group.d.ts +3 -1
  48. package/request/task/elapseditem.d.ts +7 -1
  49. package/request/tasks/task/result.d.ts +5 -1
  50. package/request/tasks/task.d.ts +11 -1
  51. package/request/user/userfield.d.ts +3 -1
  52. package/request/user.d.ts +9 -1
  53. package/request-navvy/task/commentitem.d.ts +7 -1
  54. package/request-navvy/task/operation/elapseditem.d.ts +9 -10
  55. package/services/http/http.d.ts +1 -1
  56. package/services/http/sessionKey.d.ts +16 -2
  57. package/esm2022/typification/base/methods.mjs +0 -700
  58. package/typification/base/methods.d.ts +0 -6
@@ -1,8 +1,8 @@
1
+ import { DateTime } from 'luxon';
2
+ import { switchMap, map, catchError, take, mergeMap as mergeMap$1 } from 'rxjs/operators';
1
3
  import { Subscription, of, throwError, from, forkJoin, last, shareReplay, mergeMap, concatMap, toArray, tap } from 'rxjs';
2
4
  import clone from 'just-clone';
3
- import { switchMap, map, catchError, take, mergeMap as mergeMap$1 } from 'rxjs/operators';
4
5
  import axios from 'axios';
5
- import { DateTime } from 'luxon';
6
6
  import flatten from 'just-flatten-it';
7
7
  import * as qs from 'qs';
8
8
  import values from 'just-values';
@@ -47,39 +47,6 @@ function instanceOfiBXRestAnswerSuccess(object) {
47
47
  return 'result' in object;
48
48
  }
49
49
 
50
- class CookiesServices {
51
- static get(name) {
52
- const results = document.cookie.match('(^|;) ?' + name + '=([^;]*)(;|$)');
53
- if (results)
54
- return results[2];
55
- else
56
- return '';
57
- }
58
- static set(name, value, age = 0) {
59
- let string = name + '=' + value + ';';
60
- if (age) {
61
- string += ' max-age=' + age;
62
- }
63
- string += '; SameSite=None; Secure';
64
- document.cookie = string;
65
- }
66
- static setObj(name, value, age = 0) {
67
- let string = name + '=' + JSON.stringify(value) + ';';
68
- if (age) {
69
- string += ' max-age=' + age;
70
- }
71
- string += '; SameSite=None; Secure';
72
- document.cookie = string;
73
- }
74
- static getObj(name) {
75
- const results = document.cookie.match('(^|;) ?' + name + '=([^;]*)(;|$)');
76
- if (results) {
77
- return JSON.parse(results[2]);
78
- }
79
- return false;
80
- }
81
- }
82
-
83
50
  /**
84
51
  * Преобразует значение в строку
85
52
  *
@@ -300,6 +267,45 @@ var base = /*#__PURE__*/Object.freeze({
300
267
  toStr: toStr
301
268
  });
302
269
 
270
+ let BXRestMap$1 = class BXRestMap {
271
+ static profile(user) {
272
+ return (user) ? { ...user, ...{ ID: toNum(user.ID) } } : undefined;
273
+ }
274
+ };
275
+
276
+ class CookiesServices {
277
+ static get(name) {
278
+ const results = document.cookie.match('(^|;) ?' + name + '=([^;]*)(;|$)');
279
+ if (results)
280
+ return results[2];
281
+ else
282
+ return '';
283
+ }
284
+ static set(name, value, age = 0) {
285
+ let string = name + '=' + value + ';';
286
+ if (age) {
287
+ string += ' max-age=' + age;
288
+ }
289
+ string += '; SameSite=None; Secure';
290
+ document.cookie = string;
291
+ }
292
+ static setObj(name, value, age = 0) {
293
+ let string = name + '=' + JSON.stringify(value) + ';';
294
+ if (age) {
295
+ string += ' max-age=' + age;
296
+ }
297
+ string += '; SameSite=None; Secure';
298
+ document.cookie = string;
299
+ }
300
+ static getObj(name) {
301
+ const results = document.cookie.match('(^|;) ?' + name + '=([^;]*)(;|$)');
302
+ if (results) {
303
+ return JSON.parse(results[2]);
304
+ }
305
+ return false;
306
+ }
307
+ }
308
+
303
309
  class LocalStorageServices {
304
310
  static get(name) {
305
311
  return localStorage.getItem(name);
@@ -338,6 +344,12 @@ class SessionStorage {
338
344
  }
339
345
  }
340
346
 
347
+ class SessionKeyError extends Error {
348
+ constructor(message) {
349
+ super(message);
350
+ this.name = 'SessionKeyError';
351
+ }
352
+ }
341
353
  class SessionKeyServices {
342
354
  constructor() {
343
355
  this.authHave = false;
@@ -345,41 +357,8 @@ class SessionKeyServices {
345
357
  authData: new Subscription()
346
358
  };
347
359
  this.BX_REST_SETTINGS = BXRestSettings.date;
348
- const authData = SessionStorage.getItem(this.constructor.name);
349
- if ((authData && !authData.access_token.length) || !authData) {
350
- // получаем токен по собственным каналом (в битриксе приложение trace:apps.trace)
351
- window.addEventListener('message', (event) => {
352
- if (event.origin !== window.origin) { // проверяем что это не наше сообщение (с текущего приложения)
353
- if (event.data && event.data.param) {
354
- if (typeof event.data.param === 'string') {
355
- event.data.param = JSON.parse(event.data.param);
356
- }
357
- if (event.data.param.access_token) {
358
- const param = event.data.param;
359
- const save = {
360
- access_token: (param.access_token) ? param.access_token : undefined,
361
- client_endpoint: (param.client_endpoint) ? param.client_endpoint : undefined,
362
- domain: (param.domain) ? param.domain : undefined,
363
- expires: (param.expires) ? param.expires : undefined,
364
- expires_in: (param.expires_in) ? param.expires_in : undefined,
365
- member_id: (param.member_id) ? param.member_id : undefined,
366
- refresh_token: (param.refresh_token) ? param.refresh_token : undefined,
367
- scope: (param.scope) ? param.scope : undefined,
368
- server_endpoint: (param.server_endpoint) ? param.server_endpoint : undefined,
369
- status: (param.status) ? param.status : undefined,
370
- user_id: (param.user_id) ? param.user_id : undefined,
371
- type: (param.type) ? param.type : undefined,
372
- };
373
- if (Object.keys(save).length && save.access_token) {
374
- SessionStorage.setItem(this.constructor.name, save);
375
- this.subscribeAll();
376
- }
377
- }
378
- }
379
- }
380
- });
381
- }
382
- else if (this.getAuth().length) {
360
+ const authData = this.getSessionItem(this.constructor.name);
361
+ if (this.getAuth().length > 0) {
383
362
  this.authHave = true;
384
363
  }
385
364
  this.authData = authData;
@@ -390,18 +369,20 @@ class SessionKeyServices {
390
369
  getAuth() {
391
370
  switch (this.BX_REST_SETTINGS.auth.key) {
392
371
  case 'auth':
393
- return CookiesServices.get('auth');
394
- default:
395
- if (window.BX && window.BX.bitrix_sessid()) { // чё за хуйня?
396
- return window.BX.bitrix_sessid();
372
+ return this.getCookie('auth');
373
+ default: {
374
+ const bxSessid = this.getBxSessid();
375
+ if (bxSessid) {
376
+ return bxSessid;
397
377
  }
398
- else if (this.getSessid().length) {
378
+ else if (this.getSessid().length > 0) {
399
379
  const str = this.getSessid();
400
380
  return (str) ? str : '';
401
381
  }
402
382
  else {
403
- return CookiesServices.get('auth');
383
+ return this.getCookie('auth');
404
384
  }
385
+ }
405
386
  }
406
387
  }
407
388
  getKeyAuth() {
@@ -413,33 +394,56 @@ class SessionKeyServices {
413
394
  }
414
395
  }
415
396
  getSessid() {
416
- const check = new URLSearchParams(document.location.search).get('sessid');
397
+ const check = this.getSearchParam('sessid');
417
398
  if (check) {
418
- LocalStorageServices.set('sessid', check);
399
+ this.setLocalStorage('sessid', check);
419
400
  return check;
420
401
  }
421
- else if (LocalStorageServices.get('sessid')) {
422
- return LocalStorageServices.get('sessid');
402
+ else if (this.getLocalStorage('sessid')) {
403
+ return this.getLocalStorage('sessid') || '';
423
404
  }
424
405
  return '';
425
406
  }
426
407
  getAuthParams() {
427
408
  const source = this.BX_REST_SETTINGS.auth.source;
428
409
  if (typeof source === 'function') {
429
- return source();
410
+ try {
411
+ return this.normalizeValue(source());
412
+ }
413
+ catch {
414
+ return undefined;
415
+ }
430
416
  }
431
417
  switch (source) {
432
418
  case 'cookies':
433
- return this.getAuth();
419
+ return this.normalizeValue(this.getAuth());
434
420
  case 'localStorage':
435
- return LocalStorageServices.get(this.BX_REST_SETTINGS.auth.key);
421
+ return this.normalizeValue(this.getLocalStorage(this.BX_REST_SETTINGS.auth.key));
422
+ case 'off':
423
+ return undefined;
436
424
  default:
437
- return (this.authData) ? this.authData.access_token : undefined;
425
+ return this.normalizeValue((this.authData) ? this.authData.access_token : undefined);
438
426
  }
439
427
  }
440
428
  getCheckAuthParamsIsOn() {
441
429
  return this.BX_REST_SETTINGS.auth.source !== 'off';
442
430
  }
431
+ getAuthError(operation = 'request') {
432
+ const source = this.BX_REST_SETTINGS.auth.source;
433
+ const key = this.getKeyAuth();
434
+ if (!this.getCheckAuthParamsIsOn()) {
435
+ return new SessionKeyError(`Authorization is disabled for ${operation}: BXRestSettings.auth.source is "off".`);
436
+ }
437
+ const sourceName = (typeof source === 'function') ? 'custom function' : source;
438
+ const checked = this.getAuthCheckedPlaces();
439
+ return new SessionKeyError([
440
+ `Authorization token was not found for ${operation}.`,
441
+ `auth.source: ${sourceName}.`,
442
+ `auth.key: ${key}.`,
443
+ `Checked: ${checked.join(', ')}.`,
444
+ 'Set BXRestSettings.auth.source/key correctly or save a valid token before making the request.'
445
+ ].join(' '));
446
+ }
443
447
  getBaseUrl() {
444
448
  const additional_part = (this.BX_REST_SETTINGS.urls.additional_part || this.BX_REST_SETTINGS.urls.additional_part === '')
445
449
  ? this.BX_REST_SETTINGS.urls.additional_part
@@ -447,9 +451,111 @@ class SessionKeyServices {
447
451
  if (this.BX_REST_SETTINGS.urls.source === 'string') {
448
452
  return of(prepareBaseAddress(this.BX_REST_SETTINGS.urls.key, additional_part));
449
453
  }
450
- const str = localStorage.getItem(this.BX_REST_SETTINGS.urls.key);
454
+ const str = this.getLocalStorage(this.BX_REST_SETTINGS.urls.key);
451
455
  return of(prepareBaseAddress((str) ? str : '', additional_part));
452
456
  }
457
+ getBaseUrlError(operation = 'request') {
458
+ return new SessionKeyError([
459
+ `Base URL was not resolved for ${operation}.`,
460
+ `urls.source: ${this.BX_REST_SETTINGS.urls.source}.`,
461
+ `urls.key: ${this.BX_REST_SETTINGS.urls.key || '(empty)'}.`,
462
+ 'Set BXRestSettings.urls.key to a URL or to a localStorage key containing the portal URL.'
463
+ ].join(' '));
464
+ }
465
+ getAuthCheckedPlaces() {
466
+ const source = this.BX_REST_SETTINGS.auth.source;
467
+ if (typeof source === 'function') {
468
+ return ['BXRestSettings.auth.source()'];
469
+ }
470
+ switch (source) {
471
+ case 'cookies':
472
+ return this.BX_REST_SETTINGS.auth.key === 'auth'
473
+ ? ['cookie "auth"']
474
+ : ['window.BX.bitrix_sessid()', 'URL query "sessid"', 'localStorage "sessid"', 'cookie "auth"'];
475
+ case 'localStorage':
476
+ return [`localStorage "${this.BX_REST_SETTINGS.auth.key}"`];
477
+ case 'off':
478
+ return ['authorization lookup skipped'];
479
+ default:
480
+ return [`sessionStorage "${this.constructor.name}" access_token`];
481
+ }
482
+ }
483
+ getBxSessid() {
484
+ const bx = (typeof window !== 'undefined') ? window.BX : undefined;
485
+ if (!bx || typeof bx.bitrix_sessid !== 'function') {
486
+ return '';
487
+ }
488
+ try {
489
+ return this.normalizeValue(bx.bitrix_sessid()) || '';
490
+ }
491
+ catch {
492
+ return '';
493
+ }
494
+ }
495
+ getSearchParam(name) {
496
+ if (typeof document === 'undefined') {
497
+ return undefined;
498
+ }
499
+ try {
500
+ return new URLSearchParams(document.location.search).get(name) || undefined;
501
+ }
502
+ catch {
503
+ return undefined;
504
+ }
505
+ }
506
+ getCookie(name) {
507
+ if (typeof document === 'undefined') {
508
+ return '';
509
+ }
510
+ try {
511
+ return CookiesServices.get(name);
512
+ }
513
+ catch {
514
+ return '';
515
+ }
516
+ }
517
+ getLocalStorage(name) {
518
+ return this.getStorageItem('localStorage', name);
519
+ }
520
+ setLocalStorage(name, value) {
521
+ if (typeof localStorage === 'undefined') {
522
+ return;
523
+ }
524
+ try {
525
+ LocalStorageServices.set(name, value);
526
+ }
527
+ catch {
528
+ return;
529
+ }
530
+ }
531
+ getSessionItem(name) {
532
+ if (typeof sessionStorage === 'undefined') {
533
+ return undefined;
534
+ }
535
+ try {
536
+ return SessionStorage.getItem(name);
537
+ }
538
+ catch {
539
+ return undefined;
540
+ }
541
+ }
542
+ getStorageItem(kind, name) {
543
+ const storage = kind === 'localStorage'
544
+ ? (typeof localStorage !== 'undefined' ? localStorage : undefined)
545
+ : (typeof sessionStorage !== 'undefined' ? sessionStorage : undefined);
546
+ if (!storage) {
547
+ return null;
548
+ }
549
+ try {
550
+ return storage.getItem(name);
551
+ }
552
+ catch {
553
+ return null;
554
+ }
555
+ }
556
+ normalizeValue(value) {
557
+ return (value && value.length > 0) ? value : undefined;
558
+ }
453
559
  }
454
560
 
455
561
  class HttpData {
@@ -540,65 +646,64 @@ class HttpServices extends BaseHttp {
540
646
  }
541
647
  httpPost(url, params = {}, settings = this.defSettings) {
542
648
  const auth = this.session.getAuthParams();
543
- if (auth) {
544
- const paramsClone = clone(params);
649
+ const checkIsOn = this.session.getCheckAuthParamsIsOn();
650
+ const paramsClone = clone(params);
651
+ if (checkIsOn) {
652
+ if (!auth) {
653
+ return throwError(() => this.session.getAuthError('post'));
654
+ }
545
655
  paramsClone[this.session.getKeyAuth()] = auth;
546
- return this.session.getBaseUrl().pipe(switchMap((baseUrl) => {
547
- if (!baseUrl) {
548
- return throwError(() => new Error('get base url error'));
549
- }
550
- const fullUrl = prepareBaseAddress(baseUrl) + url;
551
- if (this.session.getKeyAuth() === 'sessid') {
552
- const body = this.getHttpParamsPost(paramsClone, new FormData(), [], settings);
553
- // Преобразуем параметры в формат x-www-form-urlencoded
554
- const urlEncodedBody = new URLSearchParams();
555
- Object.keys(body).forEach((key) => {
556
- const value = paramsClone[key];
557
- // если value — объект или массив, Bitrix ожидает fields[key] или array[] формат
558
- if (typeof value === 'object' && value !== null) {
559
- for (const subKey in value) {
560
- if (Object.prototype.hasOwnProperty.call(value, subKey)) {
561
- urlEncodedBody.append(`${key}[${subKey}]`, value[subKey]);
562
- }
656
+ }
657
+ return this.session.getBaseUrl().pipe(switchMap((baseUrl) => {
658
+ if (!baseUrl) {
659
+ return throwError(() => this.session.getBaseUrlError('post'));
660
+ }
661
+ const fullUrl = prepareBaseAddress(baseUrl) + url;
662
+ if (this.session.getKeyAuth() === 'sessid') {
663
+ const body = this.getHttpParamsPost(paramsClone, new FormData(), [], settings);
664
+ const urlEncodedBody = new URLSearchParams();
665
+ Object.keys(body).forEach((key) => {
666
+ const value = paramsClone[key];
667
+ if (typeof value === 'object' && value !== null) {
668
+ for (const subKey in value) {
669
+ if (Object.prototype.hasOwnProperty.call(value, subKey)) {
670
+ urlEncodedBody.append(`${key}[${subKey}]`, value[subKey]);
563
671
  }
564
672
  }
565
- else {
566
- urlEncodedBody.append(key, value);
567
- }
568
- });
569
- return from(this.axiosInstance.post(fullUrl, urlEncodedBody.toString(), {
570
- headers: {
571
- 'Content-Type': 'application/x-www-form-urlencoded',
572
- },
573
- }).then((response) => response.data));
574
- }
575
- const body = this.getHttpParamsPost(paramsClone, new FormData(), [], settings);
576
- return from(this.axiosInstance.post(fullUrl, body).then((response) => response.data));
577
- }));
578
- }
579
- else {
580
- return throwError(() => new Error('auth session not get (post)'));
581
- }
673
+ }
674
+ else {
675
+ urlEncodedBody.append(key, value);
676
+ }
677
+ });
678
+ return from(this.axiosInstance.post(fullUrl, urlEncodedBody.toString(), {
679
+ headers: {
680
+ 'Content-Type': 'application/x-www-form-urlencoded',
681
+ },
682
+ }).then((response) => response.data));
683
+ }
684
+ const body = this.getHttpParamsPost(paramsClone, new FormData(), [], settings);
685
+ return from(this.axiosInstance.post(fullUrl, body).then((response) => response.data));
686
+ }));
582
687
  }
583
- // Мб вообще не работает
584
688
  httpGet(url, params = {}) {
585
689
  const auth = this.session.getAuthParams();
586
- if (auth) {
587
- const paramsClone = clone(params);
690
+ const checkIsOn = this.session.getCheckAuthParamsIsOn();
691
+ const paramsClone = clone(params);
692
+ if (checkIsOn) {
693
+ if (!auth) {
694
+ return throwError(() => this.session.getAuthError('get'));
695
+ }
588
696
  paramsClone[this.session.getKeyAuth()] = auth;
589
- return this.session.getBaseUrl().pipe(switchMap((baseUrl) => {
590
- if (!baseUrl) {
591
- return throwError(() => new Error('get base url error'));
592
- }
593
- const fullUrl = prepareBaseAddress(baseUrl) + url;
594
- const queryString = new URLSearchParams(paramsClone).toString();
595
- const finalUrl = `${fullUrl}?${queryString}`;
596
- return from(this.axiosInstance.get(finalUrl).then((response) => response.data));
597
- }));
598
- }
599
- else {
600
- return throwError(() => new Error('auth session not get (get)'));
601
697
  }
698
+ return this.session.getBaseUrl().pipe(switchMap((baseUrl) => {
699
+ if (!baseUrl) {
700
+ return throwError(() => this.session.getBaseUrlError('get'));
701
+ }
702
+ const fullUrl = prepareBaseAddress(baseUrl) + url;
703
+ const queryString = new URLSearchParams(paramsClone).toString();
704
+ const finalUrl = `${fullUrl}?${queryString}`;
705
+ return from(this.axiosInstance.get(finalUrl).then((response) => response.data));
706
+ }));
602
707
  }
603
708
  }
604
709
 
@@ -665,19 +770,19 @@ class HttpBXServices extends HttpServices {
665
770
  httpPost(url, params = {}) {
666
771
  const paramsClone = clone(params);
667
772
  const key = this.session.getKeyAuth();
668
- let auth = this.session.getAuthParams();
773
+ const auth = this.session.getAuthParams();
669
774
  const checkIsOn = this.session.getCheckAuthParamsIsOn();
670
- if (checkIsOn && key === 'OAuth2') {
671
- if (!auth && BXRestSettings.date.auth.source !== 'off') {
672
- throw new Error('Authorization required (post)');
775
+ if (checkIsOn) {
776
+ if (!auth) {
777
+ return throwError(() => this.session.getAuthError('post'));
778
+ }
779
+ if (key !== 'OAuth2') {
780
+ paramsClone[key] = auth;
673
781
  }
674
- }
675
- else {
676
- paramsClone[key] = auth;
677
782
  }
678
783
  return this.session.getBaseUrl().pipe(switchMap((baseUrl) => {
679
784
  if (!baseUrl) {
680
- return throwError(() => new Error('get base url error'));
785
+ return throwError(() => this.session.getBaseUrlError('post'));
681
786
  }
682
787
  const fullUrl = prepareBaseAddress(baseUrl) + url;
683
788
  if (key === 'sessid') {
@@ -743,10 +848,17 @@ class HttpBXServices extends HttpServices {
743
848
  if (params === null) {
744
849
  params = {};
745
850
  }
746
- let auth = this.session.getAuthParams();
851
+ const auth = this.session.getAuthParams();
747
852
  const paramsClone = clone(params);
748
- if (auth) {
749
- paramsClone[this.session.getKeyAuth()] = auth;
853
+ const checkIsOn = this.session.getCheckAuthParamsIsOn();
854
+ const key = this.session.getKeyAuth();
855
+ if (checkIsOn) {
856
+ if (!auth) {
857
+ return throwError(() => this.session.getAuthError('get'));
858
+ }
859
+ if (key !== 'OAuth2') {
860
+ paramsClone[key] = auth;
861
+ }
750
862
  }
751
863
  let options = {
752
864
  params: paramsClone
@@ -754,9 +866,10 @@ class HttpBXServices extends HttpServices {
754
866
  };
755
867
  return this.session.getBaseUrl().pipe(switchMap((baseUrl) => {
756
868
  if (!baseUrl) {
757
- return throwError(() => new Error('get base url error'));
869
+ return throwError(() => this.session.getBaseUrlError('get'));
758
870
  }
759
871
  return from(this.axiosInstance.post(prepareBaseAddress(baseUrl) + url, options, {
872
+ withCredentials: key === 'OAuth2',
760
873
  headers: {
761
874
  'Content-Type': 'application/json',
762
875
  }
@@ -768,6 +881,46 @@ class HttpBXServices extends HttpServices {
768
881
  }
769
882
  }
770
883
 
884
+ class NavvyPagBase {
885
+ constructor(url, param,
886
+ /// protected map: Mapper<T, R> | undefined = undefined
887
+ map = undefined) {
888
+ this.url = url;
889
+ this.param = param;
890
+ this.map = map;
891
+ this.pageSize = 50; // стандартный размер страницы
892
+ this.http = new HttpBXServices();
893
+ }
894
+ resVanilla() {
895
+ return this.http.post(this.url, this.param);
896
+ }
897
+ mapForVanilla() {
898
+ return this.resVanilla()
899
+ .pipe(map(v => {
900
+ if (v && instanceOfiBXRestAnswerSuccess(v) && this.map) {
901
+ // Применяем this.map и явно приводим тип результата
902
+ const result = this.map(v.result);
903
+ return { ...v, ...{ result: result } };
904
+ }
905
+ return v;
906
+ }));
907
+ }
908
+ res() {
909
+ return this.mapAndError(this.resVanilla()).pipe(map(v => (v && this.map)
910
+ ? this.map(v)
911
+ : v));
912
+ }
913
+ mapAndError(request) {
914
+ return request.pipe(map(v => BXRestMapResult(v)), catchError((err) => {
915
+ console.error(err);
916
+ throw new Error((err.error) ? err.error : err);
917
+ }));
918
+ }
919
+ }
920
+
921
+ class NavvySimple extends NavvyPagBase {
922
+ }
923
+
771
924
  const $get = 'get';
772
925
  const $add = 'add';
773
926
  const $set = 'set';
@@ -887,836 +1040,139 @@ const $idle = 'idle';
887
1040
  const $crm = 'crm';
888
1041
  const $lead = 'lead';
889
1042
  const $deal = 'deal';
890
- const $contact = 'contact';
891
- const $company = 'company';
892
-
893
- var partNameMethods$1 = /*#__PURE__*/Object.freeze({
894
- __proto__: null,
895
- $access: $access,
896
- $accessibility: $accessibility,
897
- $activity: $activity,
898
- $add: $add,
899
- $all: $all,
900
- $api: $api,
901
- $application: $application,
902
- $approve: $approve,
903
- $attach: $attach,
904
- $bizproc: $bizproc,
905
- $blogcomment: $blogcomment,
906
- $blogpost: $blogpost,
907
- $booking: $booking,
908
- $calendar: $calendar,
909
- $channel: $channel,
910
- $chat: $chat,
911
- $commentitem: $commentitem,
912
- $company: $company,
913
- $complete: $complete,
914
- $config: $config,
915
- $contact: $contact,
916
- $copyto: $copyto,
917
- $counters: $counters,
918
- $create: $create,
919
- $crm: $crm,
920
- $deal: $deal,
921
- $defer: $defer,
922
- $delegate: $delegate,
923
- $delete: $delete,
924
- $department: $department,
925
- $dialog: $dialog,
926
- $disapprove: $disapprove,
927
- $disk: $disk,
928
- $elapseditem: $elapseditem,
929
- $element: $element,
930
- $end: $end,
931
- $event: $event,
932
- $favorite: $favorite,
933
- $feature: $feature,
934
- $field: $field,
935
- $file: $file,
936
- $files: $files,
937
- $folder: $folder,
938
- $get: $get,
939
- $getFields: $getFields,
940
- $getTypes: $getTypes,
941
- $getaccess: $getaccess,
942
- $getchildren: $getchildren,
943
- $getlist: $getlist,
944
- $getmanifest: $getmanifest,
945
- $hide: $hide,
946
- $history: $history,
947
- $iblock: $iblock,
948
- $id: $id,
949
- $idle: $idle,
950
- $im: $im,
951
- $instances: $instances,
952
- $isactionallowed: $isactionallowed,
953
- $item: $item,
954
- $kill: $kill,
955
- $lead: $lead,
956
- $leave: $leave,
957
- $list: $list,
958
- $lists: $lists,
959
- $log: $log,
960
- $markdeleted: $markdeleted,
961
- $meeting: $meeting,
962
- $message: $message,
963
- $messages: $messages,
964
- $moveto: $moveto,
965
- $mute: $mute,
966
- $nearest: $nearest,
967
- $params: $params,
968
- $pause: $pause,
969
- $pin: $pin,
970
- $planner: $planner,
971
- $public: $public,
972
- $pull: $pull,
973
- $read: $read,
974
- $recent: $recent,
975
- $rename: $rename,
976
- $renew: $renew,
977
- $request: $request,
978
- $resource: $resource,
979
- $restore: $restore,
980
- $result: $result,
981
- $robot: $robot,
982
- $search: $search,
983
- $section: $section,
984
- $send: $send,
985
- $server: $server,
986
- $set: $set,
987
- $setOwner: $setOwner,
988
- $settings: $settings,
989
- $share: $share,
990
- $socialnetwork: $socialnetwork,
991
- $sonet_group: $sonet_group,
992
- $stages: $stages,
993
- $start: $start,
994
- $status: $status,
995
- $storage: $storage,
996
- $task: $task,
997
- $tasks: $tasks,
998
- $template: $template,
999
- $terminate: $terminate,
1000
- $time: $time,
1001
- $timeMan: $timeMan,
1002
- $type: $type,
1003
- $unread: $unread,
1004
- $update: $update,
1005
- $updateAvatar: $updateAvatar,
1006
- $updateColor: $updateColor,
1007
- $updateTitle: $updateTitle,
1008
- $uploadfile: $uploadfile,
1009
- $url: $url,
1010
- $user: $user,
1011
- $userfield: $userfield,
1012
- $users: $users,
1013
- $workflow: $workflow,
1014
- $workgroup: $workgroup,
1015
- $writing: $writing
1016
- });
1017
-
1018
- /**
1019
- * @deprecated
1020
- * в будущем будет удалён
1021
- */
1022
- const methods = {
1023
- user: {
1024
- admin: [$user, 'admin'],
1025
- get: [$user, $get],
1026
- current: [$user, 'current'],
1027
- update: [$user, $update],
1028
- search: [$user, $search],
1029
- access: [$user, 'access'], // U1 - пользователь с id =1
1030
- // AU - все авторизованные пользователи
1031
- // D1 - подразделение с id=1
1032
- // G1 - группа с id=1
1033
- fields: [$user, 'fields'],
1034
- userfield: {
1035
- /**
1036
- * Добавляет пользовательское поле
1037
- */
1038
- add: [$user, $userfield, $add],
1039
- /**
1040
- * Обновляет пользовательское поле
1041
- */
1042
- update: [$user, $userfield, $update],
1043
- /**
1044
- * Удаляет пользовательское поле
1045
- */
1046
- delete: [$user, $userfield, $delete],
1047
- /**
1048
- * Получает список пользовательских полей
1049
- */
1050
- list: [$user, $userfield, $list],
1051
- file: {
1052
- /**
1053
- * Получает файл из пользовательского поля
1054
- */
1055
- get: [$user, $userfield, $file, $get]
1056
- }
1057
- }
1058
- },
1059
- tasks: {
1060
- task: {
1061
- /**
1062
- * Создает задачу
1063
- */
1064
- add: [$tasks, $task, $add],
1065
- /**
1066
- * Позволяет принять задачу
1067
- */
1068
- approve: [$tasks, $task, $approve],
1069
- /**
1070
- * Переводит задачу в статус «завершена»
1071
- */
1072
- complete: [$tasks, $task, $complete],
1073
- // counters: {
1074
- // /**
1075
- // * Получает счетчики пользователя
1076
- // */
1077
- // get: [$tasks, $task, $counters, $get],
1078
- // },
1079
- /**
1080
- * Переводит задачу в статус «отложена»
1081
- */
1082
- defer: [$tasks, $task, $defer],
1083
- /**
1084
- * Метод для делегирования задачи
1085
- */
1086
- delegate: [$tasks, $task, $delegate],
1087
- /**
1088
- * Возвращает информацию о конкретной задаче
1089
- */
1090
- get: [$tasks, $task, $get],
1091
- // /**
1092
- // * Удаляет задачу
1093
- // */
1094
- // delete: [$tasks, $task, $delete],
1095
- // /**
1096
- // * Позволяет отклонить задачу
1097
- // */
1098
- // disapprove: [$tasks, $task, $disapprove],
1099
- // favorite: {
1100
- // /**
1101
- // * Добавляет задачи в "Избранное"
1102
- // */
1103
- // add: [$tasks, $task, $favorite, $add],
1104
- // /**
1105
- // * Удаляет задачи из "Избранного"
1106
- // */
1107
- // delete: [$tasks, $task, $favorite, $delete],
1108
- // },
1109
- // files: {
1110
- // /**
1111
- // * Прикрепляет загруженный на диск файл к задаче
1112
- // */
1113
- // attach: [$tasks, $task, $files, $attach],
1114
- // },
1115
- /**
1116
- * Возвращает все доступные поля
1117
- */
1118
- getFields: [$tasks, $task, $getFields],
1119
- /**
1120
- * Метод для проверки доступа к задаче
1121
- */
1122
- getAccess: [$tasks, $task, $getaccess],
1123
- // history: {
1124
- // /**
1125
- // * Получает историю задачи
1126
- // */
1127
- // list: [$tasks, $task, $history, $list],
1128
- // },
1129
- /**
1130
- * Возвращает массив задач, каждая из которых содержит массив полей
1131
- */
1132
- list: [$tasks, $task, $list],
1133
- // /**
1134
- // * Останавливает выполнение задачи, переводя ее в статус "ждет выполнения"
1135
- // */
1136
- // pause: [$tasks, $task, $pause],
1137
- // /**
1138
- // * Возобновляет задачу после ее завершения
1139
- // */
1140
- // renew: [$tasks, $task, $renew],
1141
- // /**
1142
- // * Переводит задачу в статус «выполняется»
1143
- // */
1144
- // start: [$tasks, $task, $start],
1145
- // /**
1146
- // * Позволяет наблюдать за задачей
1147
- // */
1148
- // startWatch: [$tasks, $task, 'startwatch'],
1149
- // /**
1150
- // * Останавливает наблюдение за задачей
1151
- // */
1152
- // stopwatch: [$tasks, $task, 'stopwatch'],
1153
- /**
1154
- * Обновляет задачу
1155
- */
1156
- update: [$tasks, $task, $update],
1157
- result: {
1158
- /**
1159
- * Просмотр списка результатов к задаче
1160
- */
1161
- list: [$tasks, $task, $result, $list],
1162
- /**
1163
- * Создание результата задачи из комментария
1164
- */
1165
- addFromComment: [$tasks, $task, $result, 'addFromComment'],
1166
- /**
1167
- * Удаление результата задачи по комментарию из которого он был создан
1168
- */
1169
- deleteFromComment: [$tasks, $task, $result, 'deleteFromComment'],
1170
- }
1171
- }
1172
- },
1173
- task: {
1174
- elapsedItem: {
1175
- // /**
1176
- // * Возвращает список методов и их описание
1177
- // */
1178
- // getManifest: [$task, $elapseditem, $getmanifest],
1179
- /**
1180
- * Возвращает список записей о затраченном времени по задаче
1181
- */
1182
- getList: [$task, $elapseditem, $getlist],
1183
- // /**
1184
- // * Возвращает запись о затраченном времени по ее идентификатору
1185
- // */
1186
- // get: [$task, $elapseditem, $get],
1187
- /**
1188
- * Добавляет затраченное время к задаче
1189
- */
1190
- add: [$task, $elapseditem, $add],
1191
- /**
1192
- * Удаляет запись о затраченном времени
1193
- */
1194
- delete: [$task, $elapseditem, $delete],
1195
- /**
1196
- * Проверяет разрешено ли действие
1197
- */
1198
- isActionAllowed: [$task, $elapseditem, $isactionallowed],
1199
- /**
1200
- * Изменяет параметры записи о затраченном времени
1201
- */
1202
- update: [$task, $elapseditem, $update],
1203
- },
1204
- commentItem: {
1205
- // /**
1206
- // * Возвращает список методов и их описание
1207
- // */
1208
- // getManifest: [$task, $commentitem, $getmanifest],
1209
- /**
1210
- * Возвращает список комментариев к задаче
1211
- */
1212
- getList: [$task, $commentitem, $getlist],
1213
- /**
1214
- * Возвращает комментарий к задаче
1215
- */
1216
- get: [$task, $commentitem, $get],
1217
- /**
1218
- * Создает новый комментарий к задаче
1219
- */
1220
- add: [$task, $commentitem, $add],
1221
- /**
1222
- * Обновляет данные комментария
1223
- */
1224
- update: [$task, $commentitem, $update],
1225
- /**
1226
- * Удаляет комментарий
1227
- */
1228
- delete: [$task, $commentitem, $delete],
1229
- // /**
1230
- // * Проверяет, разрешено ли действие
1231
- // */
1232
- // isActionAllowed: [$task, $commentitem, $isactionallowed],
1233
- },
1234
- planner: {
1235
- getList: [$task, $planner, $getlist]
1236
- },
1237
- item: {
1238
- userField: {
1239
- /**
1240
- * Получение всех доступных полей свойства
1241
- */
1242
- getFields: [$task, $item, $userfield, 'getfields'],
1243
- // /**
1244
- // * Получение всех доступных типов данных
1245
- // */
1246
- // getTypes: [$task, $item, $userfield, 'gettypes'],
1247
- // /**
1248
- // * Создание нового свойства
1249
- // */
1250
- // add: [$task, $item, $userfield, $add],
1251
- // /**
1252
- // * Получение свойства по идентификатору
1253
- // */
1254
- // get: [$task, $item, $userfield, $get],
1255
- /**
1256
- * Получение списка свойств
1257
- */
1258
- getList: [$task, $item, $userfield, 'getlist'],
1259
- // /**
1260
- // * Редактирование параметров свойства
1261
- // */
1262
- // update: [$task, $item, $userfield, $update],
1263
- // /**
1264
- // * Удаление свойства
1265
- // */
1266
- // delete: [$task, $item, $userfield, $delete]
1267
- }
1268
- },
1269
- stages: {
1270
- /**
1271
- * Метод добавляет стадии Канбана / Моего плана
1272
- */
1273
- add: [$task, $stages, $add],
1274
- /**
1275
- * Метод определяет, может ли текущий пользователь перемещать задачи в указанной сущности
1276
- */
1277
- canmovetask: [$task, $stages, 'canmovetask'],
1278
- /**
1279
- * Метод удаляет стадии Канбана / Моего плана
1280
- */
1281
- delete: [$task, $stages, $delete],
1282
- /**
1283
- * Метод получает стадии Канбана / Моего плана
1284
- */
1285
- get: [$task, $stages, $get],
1286
- /**
1287
- * Метод перемещает задачи из одной стадии в другую
1288
- */
1289
- movetask: [$task, $stages, 'movetask'], //
1290
- /**
1291
- * Метод обновляет стадии Канбана / Моего плана.
1292
- */
1293
- update: [$task, $stages, $update]
1294
- }
1295
- },
1296
- timeman: {
1297
- // /**
1298
- // * Получение настроек рабочего времени пользователя
1299
- // */
1300
- // settings: [$timeMan, $settings],
1301
- /**
1302
- * Получение информации о текущем рабочем дне пользователя
1303
- */
1304
- status: [$timeMan, $status],
1305
- // /**
1306
- // * Начать новый рабочий день либо возобновить закрытый или приостановленный
1307
- // */
1308
- // open: [$timeMan, 'open'],
1309
- // /**
1310
- // * Закрыть рабочий день
1311
- // */
1312
- // close: [$timeMan, 'close'],
1313
- // /**
1314
- // * Приостановить рабочий день
1315
- // */
1316
- // pause: [$timeMan, $pause],
1317
- // networkrange: {
1318
- // check: this.baseUrl + 'networkrange.check', // Метод для проверки IP-адреса на вхождение в диапазоны сетевых адресов офисной сети
1319
- // get: this.baseUrl + 'networkrange.get', // Метод для получения диапазонов сетевых адресов, входящих в офисную сеть
1320
- // set: this.baseUrl + 'networkrange.set' // Метод для установки диапазонов сетевых адресов, входящих в офисную сеть. 18.5.0
1321
- // },
1322
- // timecontrol: {
1323
- // report: {
1324
- // add: this.baseUrl + 'timecontrol.report.add', // Метод для отправки отчета о выявленном отсутствии
1325
- // get: this.baseUrl + 'timecontrol.reports.get', // Метод для получения отчета о выявленных отсутствиях
1326
- // settings: {
1327
- // get: this.baseUrl + 'timecontrol.reports.settings.get' // Метод для получения пользовательских настроек для построения интерфейса отчетов инструмента контроля времени
1328
- // },
1329
- // users: {
1330
- // get: this.baseUrl + 'timecontrol.reports.users.get' // Метод для получения списка пользователей, относящихся к указанному подразделению. 18.5.0
1331
- // }
1332
- // },
1333
- // settings: {
1334
- // get: this.baseUrl + 'timecontrol.settings.get', // Метод для получения настроек инструмента контроля времени
1335
- // set: this.baseUrl + 'timecontrol.settings.set' // Метод для установки настроек инструмента контроля времени
1336
- // },
1337
- // },
1338
- // schedule: {
1339
- // get: this.baseUrl + 'schedule.get' // Метод позволяет получить рабочий график по его идентификатору
1340
- // }
1341
- },
1342
- sonet_group: {
1343
- // /**
1344
- // * Создает группу соцсети, используя метод API CSocNetGroup::CreateGroup(), указывая владельцем группы текущего пользователя
1345
- // */
1346
- // create: [$sonet_group, $create],
1347
- // /**
1348
- // * Удаляет группу соцсети
1349
- // */
1350
- // delete: [$sonet_group, $delete],
1351
- // feature: {
1352
- // access: [$sonet_group, $feature, $access] // Проверяет, имеет ли текущий пользователь право на совершение операции в группе соцсети, осуществляя вызов функции CSocNetFeaturesPerms::CurrentUserCanPerformOperation()
1353
- // },
1354
- /**
1355
- * Возвращает массив групп соцсети, каждая из которых содержит массив полей, осуществляя вызов CSocNetGroup::GetList(), при этом возвращаются только те группы, которые доступны пользователю по правам
1356
- */
1357
- get: [$sonet_group, $get],
1358
- // /**
1359
- // * Изменяет владельца группы
1360
- // */
1361
- // setOwner: [$sonet_group, 'setowner'],
1362
- // /**
1363
- // * Изменяет параметры группы соцсети, используя метод API CSocNetGroup::Update()
1364
- // */
1365
- // update: [$sonet_group, $update],
1366
- // user: {
1367
- // add: [$sonet_group, $user, $add], // sonet_group.user.add Добавляет пользователей в качестве участников рабочей группы (без приглашения и подтверждения)
1368
- // delete: [$sonet_group, $user, $delete], // Удаляет пользователей из рабочей группы
1369
- // get: [$sonet_group, $user, $get], // Возвращает массив участников группы соцсети, осуществляя вызов CSocNetUserToGroup::GetList(), при этом проверяются права на доступ текущего пользователя к группе
1370
- // groups: [$sonet_group, $user, 'groups'], // Возвращает массив групп соцсети текущего пользователя, осуществляя вызов CSocNetUserToGroup::GetList()
1371
- // invite: [$sonet_group, $user, 'invite'], // Выполняет приглашение пользователей в группу соцсети от лица текущего пользователя, при этом проверяются права на доступ текущего пользователя к группе
1372
- // request: [$sonet_group, $user, $request], // Отправляет запрос текущего пользователя на вступление в группу соцсети, при этом проверяются права на доступ текущего пользователя к группе.
1373
- // update: [$sonet_group, $user, $update], // Изменяет роль пользователей в рабочей группе События при работе с группами СоцСети Список событий при добавлении, изменении и удалении группы.
1374
- // },
1375
- // workgroup: {
1376
- // list: [$socialnetwork, $api, $workgroup, $list], // Метод возвращает список групп,
1377
- // get: [$socialnetwork, $api, $workgroup, $get] // Метод возвращает данные по рабочей группе
1378
- // }
1379
- },
1380
- server: {
1381
- time: [$server, $time]
1382
- },
1383
- log: {
1384
- blogpost: {
1385
- /**
1386
- * Добавляет в Живую Ленту сообщение от имени текущего пользователя
1387
- */
1388
- add: [$log, $blogpost, $add], //
1389
- // getusers: {
1390
- // important: 'log.blogpost.getusers.important' // Отдает массив ID пользователей, прочитавших Важное сообщение
1391
- // },
1392
- /**
1393
- * Возвращает массив с доступными текущему пользователю сообщениями Живой ленты. Каждое из сообщений представляет собой массив значений полей (включая пользовательские поля)
1394
- */
1395
- get: [$log, $blogpost, $get],
1396
- // /**
1397
- // * Удаляет сообщение Живой Ленты
1398
- // */
1399
- // delete: [$log, $blogpost, $delete],
1400
- // /**
1401
- // * Добавляет получателей в сообщение Живой Ленты
1402
- // */
1403
- // share: [$log, $blogpost, $share],
1404
- // /**
1405
- // * Изменяет сообщение Живой Ленты
1406
- // */
1407
- // update: [$log, $blogpost, $update],
1408
- },
1409
- // blogcomment: {
1410
- // /**
1411
- // * Добавляет комментарий к сообщению Живой ленты
1412
- // */
1413
- // add: [$log, $blogcomment, $add],
1414
- // }
1415
- },
1416
- lists: {
1417
- // /**
1418
- // * Метод создаёт список
1419
- // */
1420
- // add: [$lists, $add],
1421
- // /**
1422
- // * Метод удаляет список
1423
- // */
1424
- // delete: [$lists, $delete],
1425
- /**
1426
- * Метод возвращает данные по спискам
1427
- */
1428
- get: [$lists, $get],
1429
- // /**
1430
- // * Метод обновляет существующий список
1431
- // */
1432
- // update: [$lists, $update],
1433
- // /**
1434
- // * Метод возвращает id типа инфоблока
1435
- // */
1436
- // getIBlockTypeId: [$lists, $get, $iblock, $type, $id],
1437
- element: {
1438
- /**
1439
- * Метод создаёт элемент списка
1440
- */
1441
- add: [$lists, $element, $add],
1442
- // /**
1443
- // * Метод удаляет элемент списка TODO: Реализовать
1444
- // */
1445
- // delete: [$lists, $element, $delete],
1446
- /**
1447
- * Метод возвращает список элементов или элемент
1448
- */
1449
- get: [$lists, $element, $get],
1450
- // /**
1451
- // * Метод обновляет элемент списка TODO: Реализовать
1452
- // */
1453
- // update: [$lists, $element, $update],
1454
- // /**
1455
- // * Метод возвращает путь к файлу TODO: Реализовать
1456
- // */
1457
- // getFileUrl: [$lists, $element, $get, $file, $url]
1458
- },
1459
- field: {
1460
- // /**
1461
- // * Метод создает поле списка
1462
- // */
1463
- // add: [$lists, $field, $add],
1464
- // /**
1465
- // * Метод удаляет поле списка
1466
- // */
1467
- // delete: [$lists, $field, $delete],
1468
- /**
1469
- * Метод возвращает данные поля
1470
- */
1471
- get: [$lists, $field, $get],
1472
- // type: {
1473
- // /**
1474
- // * Метод возвращает доступные типа полей для указанного списка
1475
- // */
1476
- // get: [$lists, $field, $type, $get],
1477
- // },
1478
- // /**
1479
- // * Метод обновляет поле списка
1480
- // */
1481
- // update: [$lists, $field, $update],
1482
- }
1483
- },
1484
- im: {
1485
- chat: {
1486
- add: [$im, $chat, $add],
1487
- // list: [$im, $chat, $user, $list],
1488
- // add: [$im, $chat, $user, $add],
1489
- // delete: [$im, $chat, $user, $delete],
1490
- // updateTitle: [$im, $chat, $updateTitle],
1491
- // updateColor: [$im, $chat, $updateColor],
1492
- // updateAvatar: [$im, $chat, $updateAvatar],
1493
- // setOwner: [$im, $chat, $setOwner],
1494
- // get: [$im, $chat, $get],
1495
- // mute: [$im, $chat, $mute],
1496
- }
1497
- },
1498
- disk: {
1499
- file: {
1500
- // /**
1501
- // * Возвращает описание полей файла
1502
- // */
1503
- // getFields: [$disk, $file, $getFields],
1504
- /**
1505
- * Возвращает файл по идентификатору
1506
- */
1507
- get: [$disk, $file, $get], //
1508
- // /**
1509
- // * Переименовывает файл
1510
- // */
1511
- // rename: [$disk, $file, $rename],
1512
- // /**
1513
- // * Копирует файл в указанную папку
1514
- // */
1515
- // copyTo: [$disk, $file, $copyto],
1516
- // /**
1517
- // * Перемещает файл в указанную папку
1518
- // */
1519
- // moveto: [$disk, $file, $moveto],
1520
- // /**
1521
- // * Уничтожает файл навсегда
1522
- // */
1523
- // delete: [$disk, $file, $delete],
1524
- /**
1525
- * Перемещает файл в корзину
1526
- */
1527
- markDeleted: [$disk, $file, $markdeleted],
1528
- // /**
1529
- // * Восстанавливает файл из корзины
1530
- // */
1531
- // restore: [$disk, $file, $restore],
1532
- // /**
1533
- // * Загружает новую версию файла
1534
- // */
1535
- // uploadVersion: [$disk, $file, 'uploadversion'],
1536
- // /**
1537
- // * Возвращает список версий файла
1538
- // */
1539
- // getVersions: [$disk, $file, 'getVersions'],
1540
- // /**
1541
- // * Восстанавливает файл из конкретной версии
1542
- // */
1543
- // restoreFromVersion: [$disk, $file, 'restoreFromVersion'],
1544
- // /**
1545
- // * Возвращает публичную ссылку на файл
1546
- // */
1547
- // getExternalLink: [$disk, $file, 'getexternallink']
1548
- },
1549
- folder: {
1550
- getFields: [$disk, $folder, $getFields],
1551
- get: [$disk, $folder, $get],
1552
- getChildren: [$disk, $folder, $getchildren],
1553
- addSubFolder: [$disk, $folder, 'addsubfolder'],
1554
- copyTo: [$disk, $folder, $copyto],
1555
- moveTo: [$disk, $folder, $moveto],
1556
- rename: [$disk, $folder, $rename],
1557
- deleteTree: [$disk, $folder, 'deletetree'],
1558
- markDeleted: [$disk, $folder, $markdeleted],
1559
- restore: [$disk, $folder, $restore],
1560
- uploadFile: [$disk, $folder, $uploadfile],
1561
- getExternalLink: [$disk, $folder, 'getExternalLink']
1562
- },
1563
- attachedObject: {
1564
- get: [$disk, 'attachedObject', $get]
1565
- }
1566
- },
1567
- department: {
1568
- get: [$department, $get],
1569
- del: [$department, $delete],
1570
- add: [$department, $add],
1571
- update: [$department, $update]
1572
- },
1573
- calendar: {
1574
- event: {
1575
- // /**
1576
- // * Добавляет новое событие
1577
- // */
1578
- // add: [$calendar, $event, $add],
1579
- // /**
1580
- // * Удаляет событие
1581
- // */
1582
- // delete: [$calendar, $event, $delete],
1583
- /**
1584
- * Возвращает список событий календаря
1585
- */
1586
- get: [$calendar, $event, $get],
1587
- // /**
1588
- // * Возвращает список будущих событий для текущего пользователя
1589
- // */
1590
- // getNearest: [$calendar, $event, $get, $nearest],
1591
- // /**
1592
- // * Редактирует существующее событие
1593
- // */
1594
- // update: [$calendar, $event, $get, $update],
1595
- }
1596
- },
1597
- bizProc: {
1598
- workflow: {
1599
- // /**
1600
- // * Возвращает список запущенных бизнес-процессов TODO: реализовать
1601
- // */
1602
- // instances: {
1603
- // /**
1604
- // * Возвращает список запущенных бизнес-процессов. Алиас bizproc.workflow.instances
1605
- // */
1606
- // list: [$bizproc, $workflow, $instances, $list]
1607
- // },
1608
- // /**
1609
- // * Останавливает активный Бизнес-процесс TODO: реализовать
1610
- // */
1611
- // terminate: {
1612
- // /**
1613
- // * Добавляет шаблон Бизнес-процесса // TODO: реализовать
1614
- // */
1615
- // add: [$bizproc, $workflow, $template, $add],
1616
- // /**
1617
- // * Удаляет шаблон Бизнес-процесса // TODO: реализовать
1618
- // */
1619
- // delete: [$bizproc, $workflow, $template, $delete],
1620
- // /**
1621
- // * Изменяет шаблон Бизнес-процесса // TODO: реализовать
1622
- // */
1623
- // update: [$bizproc, $workflow, $template, $update],
1624
- // /**
1625
- // * Возвращает список шаблонов Бизнес-процессов, установленных на сайте
1626
- // */
1627
- // list: [$bizproc, $workflow, $template, $list]
1628
- // },
1629
- /**
1630
- * Запускает Бизнес-процесс
1631
- */
1632
- start: [$bizproc, $workflow, $start],
1633
- // /**
1634
- // * Удаляет запущенный бизнес-процесс TODO: реализовать
1635
- // */
1636
- // kill: [$bizproc, $workflow, $kill],
1637
- },
1638
- // activity: {
1639
- // /**
1640
- // * Добавляет новое действие в бизнес-процесс
1641
- // */
1642
- // add: [$bizproc, $activity, $add],
1643
- // /**
1644
- // * Удаляет действие
1645
- // */
1646
- // delete: [$bizproc, $activity, $delete],
1647
- // /**
1648
- // * Возвращает список установленных приложением действий
1649
- // */
1650
- // list: [$bizproc, $activity, $list],
1651
- // /**
1652
- // * Позволяет обновить поля действия
1653
- // */
1654
- // update: [$bizproc, $activity, $update],
1655
- // /**
1656
- // * Записывает информацию в лог бизнес-процесса
1657
- // */
1658
- // log: [$bizproc, $activity, $log]
1659
- // },
1660
- // task: {
1661
- // /**
1662
- // * Осуществляет выполнение заданий БП
1663
- // */
1664
- // complete: [$bizproc, $task, $complete],
1665
- // /**
1666
- // * Возвращает список заданий бизнес-процессов
1667
- // */
1668
- // list: [$bizproc, $task, $list],
1669
- // },
1670
- // robot: {
1671
- // /**
1672
- // * Регистрирует нового робота
1673
- // */
1674
- // add: [$bizproc, $robot, $add],
1675
- // /**
1676
- // * Удаляет зарегистрированного робота
1677
- // */
1678
- // delete: [$bizproc, $robot, $delete],
1679
- // /**
1680
- // * Список зарегистрированных приложением роботов
1681
- // */
1682
- // list: [$bizproc, $robot, $list], //
1683
- // /**
1684
- // * Обновляет поля робота
1685
- // */
1686
- // update: [$bizproc, $robot, $update] //
1687
- // },
1688
- // event: {
1689
- // /**
1690
- // * Возвращает действию выходные параметры, заданные в описании действия
1691
- // */
1692
- // send: [$bizproc, $event, $send],
1693
- // }
1694
- },
1695
- socialNetWork: {
1696
- api: {
1697
- contentView: {
1698
- set: [$socialnetwork, $api, 'contentView', $set]
1699
- },
1700
- liveFeed: {
1701
- blogPost: {
1702
- important: {
1703
- vote: [$socialnetwork, $api, 'liveFeed', 'blogPost', 'important', 'vote']
1704
- }
1705
- }
1706
- }
1707
- }
1708
- },
1709
- app: {
1710
- /**
1711
- * Показ информации о приложении. Метод поддерживает безопасный вызов
1712
- */
1713
- info: ['app', 'info']
1714
- }
1715
- };
1043
+ const $contact = 'contact';
1044
+ const $company = 'company';
1045
+
1046
+ var partNameMethods$1 = /*#__PURE__*/Object.freeze({
1047
+ __proto__: null,
1048
+ $access: $access,
1049
+ $accessibility: $accessibility,
1050
+ $activity: $activity,
1051
+ $add: $add,
1052
+ $all: $all,
1053
+ $api: $api,
1054
+ $application: $application,
1055
+ $approve: $approve,
1056
+ $attach: $attach,
1057
+ $bizproc: $bizproc,
1058
+ $blogcomment: $blogcomment,
1059
+ $blogpost: $blogpost,
1060
+ $booking: $booking,
1061
+ $calendar: $calendar,
1062
+ $channel: $channel,
1063
+ $chat: $chat,
1064
+ $commentitem: $commentitem,
1065
+ $company: $company,
1066
+ $complete: $complete,
1067
+ $config: $config,
1068
+ $contact: $contact,
1069
+ $copyto: $copyto,
1070
+ $counters: $counters,
1071
+ $create: $create,
1072
+ $crm: $crm,
1073
+ $deal: $deal,
1074
+ $defer: $defer,
1075
+ $delegate: $delegate,
1076
+ $delete: $delete,
1077
+ $department: $department,
1078
+ $dialog: $dialog,
1079
+ $disapprove: $disapprove,
1080
+ $disk: $disk,
1081
+ $elapseditem: $elapseditem,
1082
+ $element: $element,
1083
+ $end: $end,
1084
+ $event: $event,
1085
+ $favorite: $favorite,
1086
+ $feature: $feature,
1087
+ $field: $field,
1088
+ $file: $file,
1089
+ $files: $files,
1090
+ $folder: $folder,
1091
+ $get: $get,
1092
+ $getFields: $getFields,
1093
+ $getTypes: $getTypes,
1094
+ $getaccess: $getaccess,
1095
+ $getchildren: $getchildren,
1096
+ $getlist: $getlist,
1097
+ $getmanifest: $getmanifest,
1098
+ $hide: $hide,
1099
+ $history: $history,
1100
+ $iblock: $iblock,
1101
+ $id: $id,
1102
+ $idle: $idle,
1103
+ $im: $im,
1104
+ $instances: $instances,
1105
+ $isactionallowed: $isactionallowed,
1106
+ $item: $item,
1107
+ $kill: $kill,
1108
+ $lead: $lead,
1109
+ $leave: $leave,
1110
+ $list: $list,
1111
+ $lists: $lists,
1112
+ $log: $log,
1113
+ $markdeleted: $markdeleted,
1114
+ $meeting: $meeting,
1115
+ $message: $message,
1116
+ $messages: $messages,
1117
+ $moveto: $moveto,
1118
+ $mute: $mute,
1119
+ $nearest: $nearest,
1120
+ $params: $params,
1121
+ $pause: $pause,
1122
+ $pin: $pin,
1123
+ $planner: $planner,
1124
+ $public: $public,
1125
+ $pull: $pull,
1126
+ $read: $read,
1127
+ $recent: $recent,
1128
+ $rename: $rename,
1129
+ $renew: $renew,
1130
+ $request: $request,
1131
+ $resource: $resource,
1132
+ $restore: $restore,
1133
+ $result: $result,
1134
+ $robot: $robot,
1135
+ $search: $search,
1136
+ $section: $section,
1137
+ $send: $send,
1138
+ $server: $server,
1139
+ $set: $set,
1140
+ $setOwner: $setOwner,
1141
+ $settings: $settings,
1142
+ $share: $share,
1143
+ $socialnetwork: $socialnetwork,
1144
+ $sonet_group: $sonet_group,
1145
+ $stages: $stages,
1146
+ $start: $start,
1147
+ $status: $status,
1148
+ $storage: $storage,
1149
+ $task: $task,
1150
+ $tasks: $tasks,
1151
+ $template: $template,
1152
+ $terminate: $terminate,
1153
+ $time: $time,
1154
+ $timeMan: $timeMan,
1155
+ $type: $type,
1156
+ $unread: $unread,
1157
+ $update: $update,
1158
+ $updateAvatar: $updateAvatar,
1159
+ $updateColor: $updateColor,
1160
+ $updateTitle: $updateTitle,
1161
+ $uploadfile: $uploadfile,
1162
+ $url: $url,
1163
+ $user: $user,
1164
+ $userfield: $userfield,
1165
+ $users: $users,
1166
+ $workflow: $workflow,
1167
+ $workgroup: $workgroup,
1168
+ $writing: $writing
1169
+ });
1716
1170
 
1717
1171
  class BXRestUserUserfield {
1718
1172
  constructor() {
1719
- this.url = methods.user.userfield;
1173
+ this.url = {
1174
+ list: [$user, $userfield, $list],
1175
+ };
1720
1176
  this.http = new HttpBXServices();
1721
1177
  }
1722
1178
  list() {
@@ -1728,7 +1184,15 @@ class BXRestUser {
1728
1184
  constructor() {
1729
1185
  this.http = new HttpBXServices();
1730
1186
  this.userfield = new BXRestUserUserfield();
1731
- this.url = methods.user;
1187
+ this.url = {
1188
+ admin: [$user, 'admin'],
1189
+ get: [$user, $get],
1190
+ current: [$user, 'current'],
1191
+ update: [$user, $update],
1192
+ search: [$user, $search],
1193
+ access: [$user, 'access'],
1194
+ fields: [$user, 'fields'],
1195
+ };
1732
1196
  }
1733
1197
  admin() {
1734
1198
  return this.http.post(this.url.admin);
@@ -1755,7 +1219,10 @@ class BXRestUser {
1755
1219
 
1756
1220
  class BXRestListsElement {
1757
1221
  constructor() {
1758
- this.url = methods.lists.element;
1222
+ this.url = {
1223
+ add: [$lists, $element, $add],
1224
+ get: [$lists, $element, $get],
1225
+ };
1759
1226
  this.http = new HttpBXServices();
1760
1227
  }
1761
1228
  get(pram) {
@@ -1883,7 +1350,13 @@ class BXRestLists {
1883
1350
 
1884
1351
  class BXRestTaskElapsedItem {
1885
1352
  constructor() {
1886
- this.url = methods.task.elapsedItem;
1353
+ this.url = {
1354
+ getList: [$task, $elapseditem, $getlist],
1355
+ add: [$task, $elapseditem, $add],
1356
+ delete: [$task, $elapseditem, $delete],
1357
+ isActionAllowed: [$task, $elapseditem, $isactionallowed],
1358
+ update: [$task, $elapseditem, $update],
1359
+ };
1887
1360
  this.http = new HttpBXServices();
1888
1361
  }
1889
1362
  getList(param = {}) {
@@ -1948,13 +1421,15 @@ class BXRestTaskPlanner {
1948
1421
  this.http = new HttpBXServices();
1949
1422
  }
1950
1423
  getList() {
1951
- return this.http.post(methods.task.planner.getList);
1424
+ return this.http.post([$task, $planner, $getlist]);
1952
1425
  }
1953
1426
  }
1954
1427
 
1955
1428
  class BXRestTaskItemUserField {
1956
1429
  constructor() {
1957
- this.url = methods.task.item.userField;
1430
+ this.url = {
1431
+ getList: [$task, $item, $userfield, 'getlist'],
1432
+ };
1958
1433
  this.http = new HttpBXServices();
1959
1434
  }
1960
1435
  getList(param) {
@@ -1979,7 +1454,11 @@ class BXRestTask {
1979
1454
 
1980
1455
  class BXRestTasksTaskResult {
1981
1456
  constructor() {
1982
- this.url = methods.tasks.task.result;
1457
+ this.url = {
1458
+ list: [$tasks, $task, $result, $list],
1459
+ addFromComment: [$tasks, $task, $result, 'addFromComment'],
1460
+ deleteFromComment: [$tasks, $task, $result, 'deleteFromComment'],
1461
+ };
1983
1462
  this.http = new HttpBXServices();
1984
1463
  }
1985
1464
  deleteFromComment(commentID) {
@@ -1995,7 +1474,17 @@ class BXRestTasksTaskResult {
1995
1474
 
1996
1475
  class BXRestTasksTask {
1997
1476
  constructor() {
1998
- this.url = methods.tasks.task;
1477
+ this.url = {
1478
+ add: [$tasks, $task, $add],
1479
+ approve: [$tasks, $task, $approve],
1480
+ complete: [$tasks, $task, $complete],
1481
+ defer: [$tasks, $task, $defer],
1482
+ get: [$tasks, $task, $get],
1483
+ getFields: [$tasks, $task, $getFields],
1484
+ getAccess: [$tasks, $task, $getaccess],
1485
+ list: [$tasks, $task, $list],
1486
+ update: [$tasks, $task, $update],
1487
+ };
1999
1488
  this.result = new BXRestTasksTaskResult();
2000
1489
  this.http = new HttpBXServices();
2001
1490
  }
@@ -2098,7 +1587,10 @@ class BXRestTasks {
2098
1587
 
2099
1588
  class BXRestDiskFile {
2100
1589
  constructor() {
2101
- this.url = methods.disk.file;
1590
+ this.url = {
1591
+ get: [$disk, $file, $get],
1592
+ markDeleted: [$disk, $file, $markdeleted],
1593
+ };
2102
1594
  this.http = new HttpBXServices();
2103
1595
  }
2104
1596
  get(param) {
@@ -2111,7 +1603,20 @@ class BXRestDiskFile {
2111
1603
 
2112
1604
  class BXRestDiskFolder {
2113
1605
  constructor() {
2114
- this.url = methods.disk.folder;
1606
+ this.url = {
1607
+ getFields: [$disk, $folder, $getFields],
1608
+ get: [$disk, $folder, $get],
1609
+ getChildren: [$disk, $folder, $getchildren],
1610
+ addSubFolder: [$disk, $folder, 'addsubfolder'],
1611
+ copyTo: [$disk, $folder, $copyto],
1612
+ moveTo: [$disk, $folder, $moveto],
1613
+ rename: [$disk, $folder, $rename],
1614
+ deleteTree: [$disk, $folder, 'deletetree'],
1615
+ markDeleted: [$disk, $folder, $markdeleted],
1616
+ restore: [$disk, $folder, $restore],
1617
+ uploadFile: [$disk, $folder, $uploadfile],
1618
+ getExternalLink: [$disk, $folder, 'getExternalLink'],
1619
+ };
2115
1620
  this.http = new HttpBXServices();
2116
1621
  }
2117
1622
  /**
@@ -2213,7 +1718,9 @@ class BXRestDiskFolder {
2213
1718
 
2214
1719
  class BXRestDiskAttachedObject {
2215
1720
  constructor() {
2216
- this.url = methods.disk.attachedObject;
1721
+ this.url = {
1722
+ get: [$disk, 'attachedObject', $get],
1723
+ };
2217
1724
  this.http = new HttpBXServices();
2218
1725
  }
2219
1726
  get(param) {
@@ -2286,7 +1793,10 @@ class BXRestBizProc {
2286
1793
 
2287
1794
  class BXRestLogBlogPost {
2288
1795
  constructor() {
2289
- this.url = methods.log.blogpost;
1796
+ this.url = {
1797
+ add: [$log, $blogpost, $add],
1798
+ get: [$log, $blogpost, $get],
1799
+ };
2290
1800
  this.http = new HttpBXServices();
2291
1801
  }
2292
1802
  add(param) {
@@ -2309,7 +1819,9 @@ class BXRestLog {
2309
1819
 
2310
1820
  class BXRestSonetGroup {
2311
1821
  constructor() {
2312
- this.url = methods.sonet_group;
1822
+ this.url = {
1823
+ get: [$sonet_group, $get],
1824
+ };
2313
1825
  this.http = new HttpBXServices();
2314
1826
  }
2315
1827
  // // TODO: filter и select позже нормально описать
@@ -2330,7 +1842,9 @@ class BXRestSonetGroup {
2330
1842
  class BXRestServer {
2331
1843
  constructor() {
2332
1844
  this.http = new HttpBXServices();
2333
- this.url = methods.server;
1845
+ this.url = {
1846
+ time: [$server, $time],
1847
+ };
2334
1848
  }
2335
1849
  time() {
2336
1850
  return this.http.post(this.url.time);
@@ -2339,7 +1853,12 @@ class BXRestServer {
2339
1853
 
2340
1854
  class BXRestDepartment {
2341
1855
  constructor() {
2342
- this.url = methods.department;
1856
+ this.url = {
1857
+ get: [$department, $get],
1858
+ del: [$department, $delete],
1859
+ add: [$department, $add],
1860
+ update: [$department, $update],
1861
+ };
2343
1862
  this.http = new HttpBXServices();
2344
1863
  }
2345
1864
  get(param = {}) {
@@ -2364,7 +1883,7 @@ class BXRestApp {
2364
1883
  * Показ информации о приложении. Метод поддерживает безопасный вызов
2365
1884
  */
2366
1885
  info() {
2367
- return this.http.post(methods.app.info);
1886
+ return this.http.post(['app', 'info']);
2368
1887
  }
2369
1888
  }
2370
1889
 
@@ -2425,7 +1944,9 @@ class BXRestTimeMan {
2425
1944
 
2426
1945
  class BXRestSocialNetWorkApiContentView {
2427
1946
  constructor() {
2428
- this.url = methods.socialNetWork.api.contentView;
1947
+ this.url = {
1948
+ set: [$socialnetwork, $api, 'contentView', $set],
1949
+ };
2429
1950
  this.http = new HttpBXServices();
2430
1951
  }
2431
1952
  set(param) {
@@ -2435,7 +1956,9 @@ class BXRestSocialNetWorkApiContentView {
2435
1956
 
2436
1957
  class BXRestSocialNetWorkApiLiveFeedBlogPostImportant {
2437
1958
  constructor() {
2438
- this.url = methods.socialNetWork.api.liveFeed.blogPost.important;
1959
+ this.url = {
1960
+ vote: [$socialnetwork, $api, 'liveFeed', 'blogPost', 'important', 'vote'],
1961
+ };
2439
1962
  this.http = new HttpBXServices();
2440
1963
  }
2441
1964
  vote(param) {
@@ -2464,7 +1987,6 @@ class BXRestSocialNetWorkApi {
2464
1987
 
2465
1988
  class BXRestSocialNetWork {
2466
1989
  constructor() {
2467
- // protected url = methods.socialNetWork
2468
1990
  // private http = new HttpBXServices)
2469
1991
  this.api = new BXRestSocialNetWorkApi();
2470
1992
  }
@@ -2540,52 +2062,6 @@ class BXRest {
2540
2062
  }
2541
2063
  }
2542
2064
 
2543
- let BXRestMap$1 = class BXRestMap {
2544
- static profile(user) {
2545
- return (user) ? { ...user, ...{ ID: toNum(user.ID) } } : undefined;
2546
- }
2547
- };
2548
-
2549
- class NavvyPagBase {
2550
- constructor(url, param,
2551
- /// protected map: Mapper<T, R> | undefined = undefined
2552
- map = undefined) {
2553
- this.url = url;
2554
- this.param = param;
2555
- this.map = map;
2556
- this.pageSize = 50; // стандартный размер страницы
2557
- this.http = new HttpBXServices();
2558
- }
2559
- resVanilla() {
2560
- return this.http.post(this.url, this.param);
2561
- }
2562
- mapForVanilla() {
2563
- return this.resVanilla()
2564
- .pipe(map(v => {
2565
- if (v && instanceOfiBXRestAnswerSuccess(v) && this.map) {
2566
- // Применяем this.map и явно приводим тип результата
2567
- const result = this.map(v.result);
2568
- return { ...v, ...{ result: result } };
2569
- }
2570
- return v;
2571
- }));
2572
- }
2573
- res() {
2574
- return this.mapAndError(this.resVanilla()).pipe(map(v => (v && this.map)
2575
- ? this.map(v)
2576
- : v));
2577
- }
2578
- mapAndError(request) {
2579
- return request.pipe(map(v => BXRestMapResult(v)), catchError((err) => {
2580
- console.error(err);
2581
- throw new Error((err.error) ? err.error : err);
2582
- }));
2583
- }
2584
- }
2585
-
2586
- class NavvySimple extends NavvyPagBase {
2587
- }
2588
-
2589
2065
  /**
2590
2066
  * Класс-прослойка-обработчик для методов работающих на альтернативной постраничной навигации тика как методы по
2591
2067
  * затраченному времени на задачи https://dev.1c-bitrix.ru/rest_help/tasks/task/elapseditem/index.php
@@ -3872,7 +3348,6 @@ class BXRestNavvyDelegateElapsedItem {
3872
3348
  }
3873
3349
 
3874
3350
  class BXRestNavvyOperationElapsedItem {
3875
- // private readonly BXRestNavvyElapsedItem = new BXRestNavvyElapsedItem()
3876
3351
  constructor(BXRestNavvyElapsedItem) {
3877
3352
  this.BXRestNavvyElapsedItem = BXRestNavvyElapsedItem;
3878
3353
  this.http = new HttpBXServices();
@@ -4298,7 +3773,13 @@ class BXRestMapTaskCommentItem {
4298
3773
 
4299
3774
  class BXRestNavvyTaskCommentItem {
4300
3775
  constructor() {
4301
- this.url = methods.task.commentItem;
3776
+ this.url = {
3777
+ getList: [$task, $commentitem, $getlist],
3778
+ get: [$task, $commentitem, $get],
3779
+ add: [$task, $commentitem, $add],
3780
+ update: [$task, $commentitem, $update],
3781
+ delete: [$task, $commentitem, $delete],
3782
+ };
4302
3783
  this.Navvy = new Navvy();
4303
3784
  }
4304
3785
  add(param) {
@@ -4937,7 +4418,7 @@ class BXRestNavvyDiskAttachedObject {
4937
4418
  this.Navvy = new Navvy();
4938
4419
  }
4939
4420
  get(param) {
4940
- return this.Navvy.simple(methods.disk.attachedObject.get, param, BXRestMapDiskAttachedObject.get);
4421
+ return this.Navvy.simple([$disk, 'attachedObject', $get], param, BXRestMapDiskAttachedObject.get);
4941
4422
  }
4942
4423
  }
4943
4424
 
@@ -6130,7 +5611,7 @@ class BXRestNavvySocialNetWorkApiContentView {
6130
5611
  this.Navvy = new Navvy();
6131
5612
  }
6132
5613
  set(param) {
6133
- return this.Navvy.simple(methods.socialNetWork.api.contentView.set, param);
5614
+ return this.Navvy.simple([$socialnetwork, $api, 'contentView', $set], param);
6134
5615
  }
6135
5616
  }
6136
5617
 
@@ -6939,5 +6420,5 @@ class BXRestMap {
6939
6420
  * Generated bundle index. Do not edit.
6940
6421
  */
6941
6422
 
6942
- export { base as BXBaseServices, BXRest, BXRestMap, BXRestMapResult, BXRestNavvy, HttpBXServices as BXRestRequest, BXRestSettings, HttpNavvyServices, Navvy, instanceOfiBXRestAnswerSuccess as isBXRestAnswerSuccess, partNameMethods$1 as partNameMethods };
6423
+ export { base as BXBaseServices, BXRestMap, BXRestMapResult, BXRestNavvy, HttpBXServices as BXRestRequest, BXRestSettings, HttpNavvyServices, Navvy, SessionKeyError, SessionKeyServices, instanceOfiBXRestAnswerSuccess as isBXRestAnswerSuccess, partNameMethods$1 as partNameMethods };
6943
6424
  //# sourceMappingURL=bx-rest.mjs.map