@bitrix24/b24jssdk 1.0.1 → 1.0.3

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 (144) hide show
  1. package/dist/esm/_virtual/_commonjsHelpers.mjs +1 -1
  2. package/dist/esm/_virtual/protobuf.mjs +1 -1
  3. package/dist/esm/_virtual/protobuf2.mjs +1 -1
  4. package/dist/esm/core/abstract-b24.mjs +1 -1
  5. package/dist/esm/core/abstract-b24.mjs.map +1 -1
  6. package/dist/esm/core/actions/abstract-action.mjs +1 -1
  7. package/dist/esm/core/actions/abstract-batch.mjs +1 -1
  8. package/dist/esm/core/actions/manager.mjs +1 -1
  9. package/dist/esm/core/actions/v2/batch-by-chunk.mjs +2 -1
  10. package/dist/esm/core/actions/v2/batch-by-chunk.mjs.map +1 -1
  11. package/dist/esm/core/actions/v2/batch.mjs +1 -1
  12. package/dist/esm/core/actions/v2/call-list.mjs +1 -1
  13. package/dist/esm/core/actions/v2/call-list.mjs.map +1 -1
  14. package/dist/esm/core/actions/v2/call.mjs +1 -1
  15. package/dist/esm/core/actions/v2/fetch-list.mjs +1 -1
  16. package/dist/esm/core/actions/v2/fetch-list.mjs.map +1 -1
  17. package/dist/esm/core/actions/v2/manager-v2.mjs +1 -1
  18. package/dist/esm/core/actions/v3/batch-by-chunk.mjs +1 -1
  19. package/dist/esm/core/actions/v3/batch-by-chunk.mjs.map +1 -1
  20. package/dist/esm/core/actions/v3/batch.mjs +1 -1
  21. package/dist/esm/core/actions/v3/call-list.mjs +1 -1
  22. package/dist/esm/core/actions/v3/call-list.mjs.map +1 -1
  23. package/dist/esm/core/actions/v3/call.mjs +1 -1
  24. package/dist/esm/core/actions/v3/fetch-list.mjs +2 -1
  25. package/dist/esm/core/actions/v3/fetch-list.mjs.map +1 -1
  26. package/dist/esm/core/actions/v3/manager-v3.mjs +1 -1
  27. package/dist/esm/core/http/abstract-http.mjs +2 -2
  28. package/dist/esm/core/http/ajax-error.mjs +1 -1
  29. package/dist/esm/core/http/ajax-result.mjs +1 -1
  30. package/dist/esm/core/http/limiters/adaptive-delayer.mjs +1 -1
  31. package/dist/esm/core/http/limiters/manager.mjs +2 -1
  32. package/dist/esm/core/http/limiters/manager.mjs.map +1 -1
  33. package/dist/esm/core/http/limiters/operating-limiter.mjs +1 -1
  34. package/dist/esm/core/http/limiters/params-factory.mjs +1 -1
  35. package/dist/esm/core/http/limiters/rate-limiter.mjs +1 -1
  36. package/dist/esm/core/http/v2.mjs +2 -2
  37. package/dist/esm/core/http/v3.mjs +2 -2
  38. package/dist/esm/core/interaction/batch/abstract-interaction-batch.mjs +1 -1
  39. package/dist/esm/core/interaction/batch/parse-row.mjs +1 -1
  40. package/dist/esm/core/interaction/batch/processing/interface-strategy.mjs +1 -1
  41. package/dist/esm/core/interaction/batch/processing/v2/abstract-processing.mjs +1 -1
  42. package/dist/esm/core/interaction/batch/processing/v2/as-array.mjs +1 -1
  43. package/dist/esm/core/interaction/batch/processing/v2/as-object.mjs +1 -1
  44. package/dist/esm/core/interaction/batch/processing/v3/abstract-processing.mjs +1 -1
  45. package/dist/esm/core/interaction/batch/processing/v3/as-array.mjs +1 -1
  46. package/dist/esm/core/interaction/batch/processing/v3/as-object.mjs +1 -1
  47. package/dist/esm/core/interaction/batch/v2.mjs +1 -1
  48. package/dist/esm/core/interaction/batch/v3.mjs +1 -1
  49. package/dist/esm/core/language/list.mjs +1 -1
  50. package/dist/esm/core/request-id-generator.mjs +1 -1
  51. package/dist/esm/core/result.mjs +1 -1
  52. package/dist/esm/core/sdk-error.mjs +1 -1
  53. package/dist/esm/core/tools/abstract-tool.mjs +1 -1
  54. package/dist/esm/core/tools/healthcheck.mjs +1 -1
  55. package/dist/esm/core/tools/manager.mjs +1 -1
  56. package/dist/esm/core/tools/ping.mjs +1 -1
  57. package/dist/esm/core/version-manager.mjs +1 -1
  58. package/dist/esm/frame/auth.mjs +1 -1
  59. package/dist/esm/frame/b24.mjs +1 -1
  60. package/dist/esm/frame/dialog.mjs +1 -1
  61. package/dist/esm/frame/frame.mjs +1 -1
  62. package/dist/esm/frame/message/commands.mjs +1 -1
  63. package/dist/esm/frame/message/controller.mjs +5 -4
  64. package/dist/esm/frame/message/controller.mjs.map +1 -1
  65. package/dist/esm/frame/options.mjs +1 -1
  66. package/dist/esm/frame/parent.mjs +4 -1
  67. package/dist/esm/frame/parent.mjs.map +1 -1
  68. package/dist/esm/frame/placement.mjs +1 -1
  69. package/dist/esm/frame/slider.mjs +1 -1
  70. package/dist/esm/helper/abstract-helper.mjs +1 -1
  71. package/dist/esm/helper/app-manager.mjs +1 -1
  72. package/dist/esm/helper/currency-manager.mjs +1 -1
  73. package/dist/esm/helper/helper-manager.mjs +1 -1
  74. package/dist/esm/helper/license-manager.mjs +1 -1
  75. package/dist/esm/helper/options-manager.mjs +1 -1
  76. package/dist/esm/helper/payment-manager.mjs +1 -1
  77. package/dist/esm/helper/profile-manager.mjs +1 -1
  78. package/dist/esm/helper/use-b24-helper.mjs +1 -1
  79. package/dist/esm/hook/auth.mjs +1 -1
  80. package/dist/esm/hook/b24.mjs +1 -1
  81. package/dist/esm/index.d.mts +11 -8
  82. package/dist/esm/index.d.ts +11 -8
  83. package/dist/esm/index.mjs +1 -1
  84. package/dist/esm/loader-b24frame.mjs +1 -1
  85. package/dist/esm/logger/abstract-logger.mjs +1 -1
  86. package/dist/esm/logger/browser.mjs +1 -1
  87. package/dist/esm/logger/formatter/abstract-formatter.mjs +1 -1
  88. package/dist/esm/logger/formatter/json-formatter.mjs +1 -1
  89. package/dist/esm/logger/formatter/line-formatter.mjs +1 -1
  90. package/dist/esm/logger/formatter/telegram-formatter.mjs +1 -1
  91. package/dist/esm/logger/handler/abstract-handler.mjs +1 -1
  92. package/dist/esm/logger/handler/consola-adapter.mjs +1 -1
  93. package/dist/esm/logger/handler/console-handler.mjs +1 -1
  94. package/dist/esm/logger/handler/console-v2-handler.mjs +1 -1
  95. package/dist/esm/logger/handler/memory-handler.mjs +1 -1
  96. package/dist/esm/logger/handler/stream-handler.mjs +1 -1
  97. package/dist/esm/logger/handler/telegram-handler.mjs +1 -1
  98. package/dist/esm/logger/handler/winston-adapter.mjs +1 -1
  99. package/dist/esm/logger/logger-factory.mjs +1 -1
  100. package/dist/esm/logger/logger.mjs +1 -1
  101. package/dist/esm/logger/null-logger.mjs +1 -1
  102. package/dist/esm/logger/processor/memory-usage-processor.mjs +1 -1
  103. package/dist/esm/logger/processor/pid-processor.mjs +1 -1
  104. package/dist/esm/oauth/auth.mjs +1 -1
  105. package/dist/esm/oauth/auth.mjs.map +1 -1
  106. package/dist/esm/oauth/b24.mjs +1 -1
  107. package/dist/esm/oauth/refresh-token-error.mjs +1 -1
  108. package/dist/esm/pullClient/abstract-connector.mjs +1 -1
  109. package/dist/esm/pullClient/channel-manager.mjs +1 -1
  110. package/dist/esm/pullClient/client.mjs +1 -1
  111. package/dist/esm/pullClient/client.mjs.map +1 -1
  112. package/dist/esm/pullClient/errors.mjs +1 -1
  113. package/dist/esm/pullClient/json-rpc.mjs +1 -1
  114. package/dist/esm/pullClient/long-polling-connector.mjs +1 -1
  115. package/dist/esm/pullClient/protobuf/index.mjs +1 -1
  116. package/dist/esm/pullClient/protobuf/model.mjs +1 -1
  117. package/dist/esm/pullClient/protobuf/protobuf.mjs +1 -1
  118. package/dist/esm/pullClient/shared-config.mjs +1 -1
  119. package/dist/esm/pullClient/storage-manager.mjs +1 -1
  120. package/dist/esm/pullClient/web-socket-connector.mjs +1 -1
  121. package/dist/esm/tools/browser.mjs +1 -1
  122. package/dist/esm/tools/environment.mjs +1 -1
  123. package/dist/esm/tools/formatters/iban.mjs +1 -1
  124. package/dist/esm/tools/formatters/numbers.mjs +1 -1
  125. package/dist/esm/tools/index.mjs +1 -1
  126. package/dist/esm/tools/scroll-size.mjs +1 -1
  127. package/dist/esm/tools/text.mjs +1 -1
  128. package/dist/esm/tools/type.mjs +1 -1
  129. package/dist/esm/tools/use-formatters.mjs +1 -1
  130. package/dist/esm/tools/uuidv7.mjs +1 -1
  131. package/dist/esm/types/b24-helper.mjs +1 -1
  132. package/dist/esm/types/b24.mjs +1 -1
  133. package/dist/esm/types/bizproc/index.mjs +1 -1
  134. package/dist/esm/types/catalog/index.mjs +1 -1
  135. package/dist/esm/types/common.mjs +1 -1
  136. package/dist/esm/types/crm/entity-type.mjs +1 -1
  137. package/dist/esm/types/crm/productrow.mjs +1 -1
  138. package/dist/esm/types/logger.mjs +1 -1
  139. package/dist/esm/types/pull.mjs +1 -1
  140. package/dist/umd/index.js +240 -142
  141. package/dist/umd/index.js.map +1 -1
  142. package/dist/umd/index.min.js +21 -21
  143. package/dist/umd/index.min.js.map +1 -1
  144. package/package.json +3 -3
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1712,6 +1712,7 @@ declare class BatchByChunkV2 extends AbstractBatch {
1712
1712
  * requestId: 'batch-by-chunk-123'
1713
1713
  * }
1714
1714
  * })
1715
+ *
1715
1716
  * if (!response.isSuccess) {
1716
1717
  * throw new Error(`Problem: ${response.getErrorMessages().join('; ')}`)
1717
1718
  * }
@@ -1902,6 +1903,7 @@ declare class FetchListV3 extends AbstractAction {
1902
1903
  * requestId: 'eventlog-123',
1903
1904
  * limit: 60
1904
1905
  * })
1906
+ *
1905
1907
  * for await (const chunk of generator) {
1906
1908
  * // Process chunk (e.g., save to database, analyze, etc.)
1907
1909
  * console.log(`Processing ${chunk.length} items`)
@@ -2023,8 +2025,6 @@ type ActionBatchByChunkV3 = ActionOptions & {
2023
2025
  * Executes a batch request with automatic chunking for any number of commands. `restApi:v3`
2024
2026
  *
2025
2027
  * @todo add docs
2026
- * @todo test self
2027
- * @todo test example
2028
2028
  */
2029
2029
  declare class BatchByChunkV3 extends AbstractBatch {
2030
2030
  /**
@@ -2507,7 +2507,7 @@ type GetPayload<P> = {
2507
2507
  readonly time: PayloadTime;
2508
2508
  };
2509
2509
  type ListPayload<P> = {
2510
- readonly result: any | P[];
2510
+ readonly result: P[];
2511
2511
  readonly total: number;
2512
2512
  readonly next?: number;
2513
2513
  readonly time: PayloadTime;
@@ -4537,17 +4537,19 @@ declare class AppFrame {
4537
4537
 
4538
4538
  /**
4539
4539
  * Parent Window Request Parameters
4540
- * @prop isRawValue if true then JSON.stringify will not be executed
4541
- * @prop isSafely auto completion mode Promise.resolve()
4542
- * @prop safelyTime after what time (900 ms) should it be automatically resolved Promise
4543
- * @prop callBack for placement event
4540
+ * - `isRawValue?: boolean` if true then JSON.stringify will not be executed
4541
+ * - `isSafely?: boolean` auto completion mode Promise.resolve()
4542
+ * - `safelyTime?: number` after what time (900 ms) should it be automatically resolved Promise
4543
+ * - `callBack?: () => void` for placement event
4544
+ * - `requestId?: string` Unique request identifier for tracking. Used for query deduplication and debugging.
4544
4545
  */
4545
4546
  interface SendParams {
4546
- [index: string]: any;
4547
4547
  isRawValue?: boolean;
4548
4548
  isSafely?: boolean;
4549
4549
  safelyTime?: number;
4550
4550
  callBack?: (...args: any[]) => void;
4551
+ requestId?: string;
4552
+ [index: string]: any;
4551
4553
  }
4552
4554
  /**
4553
4555
  * Parent Window Communication Manager at B24
@@ -4592,6 +4594,7 @@ declare class MessageManager {
4592
4594
  declare class ParentManager {
4593
4595
  #private;
4594
4596
  constructor(messageManager: MessageManager);
4597
+ get message(): MessageManager;
4595
4598
  /**
4596
4599
  * The method closes the open modal window with the application
4597
4600
  *
@@ -1712,6 +1712,7 @@ declare class BatchByChunkV2 extends AbstractBatch {
1712
1712
  * requestId: 'batch-by-chunk-123'
1713
1713
  * }
1714
1714
  * })
1715
+ *
1715
1716
  * if (!response.isSuccess) {
1716
1717
  * throw new Error(`Problem: ${response.getErrorMessages().join('; ')}`)
1717
1718
  * }
@@ -1902,6 +1903,7 @@ declare class FetchListV3 extends AbstractAction {
1902
1903
  * requestId: 'eventlog-123',
1903
1904
  * limit: 60
1904
1905
  * })
1906
+ *
1905
1907
  * for await (const chunk of generator) {
1906
1908
  * // Process chunk (e.g., save to database, analyze, etc.)
1907
1909
  * console.log(`Processing ${chunk.length} items`)
@@ -2023,8 +2025,6 @@ type ActionBatchByChunkV3 = ActionOptions & {
2023
2025
  * Executes a batch request with automatic chunking for any number of commands. `restApi:v3`
2024
2026
  *
2025
2027
  * @todo add docs
2026
- * @todo test self
2027
- * @todo test example
2028
2028
  */
2029
2029
  declare class BatchByChunkV3 extends AbstractBatch {
2030
2030
  /**
@@ -2507,7 +2507,7 @@ type GetPayload<P> = {
2507
2507
  readonly time: PayloadTime;
2508
2508
  };
2509
2509
  type ListPayload<P> = {
2510
- readonly result: any | P[];
2510
+ readonly result: P[];
2511
2511
  readonly total: number;
2512
2512
  readonly next?: number;
2513
2513
  readonly time: PayloadTime;
@@ -4537,17 +4537,19 @@ declare class AppFrame {
4537
4537
 
4538
4538
  /**
4539
4539
  * Parent Window Request Parameters
4540
- * @prop isRawValue if true then JSON.stringify will not be executed
4541
- * @prop isSafely auto completion mode Promise.resolve()
4542
- * @prop safelyTime after what time (900 ms) should it be automatically resolved Promise
4543
- * @prop callBack for placement event
4540
+ * - `isRawValue?: boolean` if true then JSON.stringify will not be executed
4541
+ * - `isSafely?: boolean` auto completion mode Promise.resolve()
4542
+ * - `safelyTime?: number` after what time (900 ms) should it be automatically resolved Promise
4543
+ * - `callBack?: () => void` for placement event
4544
+ * - `requestId?: string` Unique request identifier for tracking. Used for query deduplication and debugging.
4544
4545
  */
4545
4546
  interface SendParams {
4546
- [index: string]: any;
4547
4547
  isRawValue?: boolean;
4548
4548
  isSafely?: boolean;
4549
4549
  safelyTime?: number;
4550
4550
  callBack?: (...args: any[]) => void;
4551
+ requestId?: string;
4552
+ [index: string]: any;
4551
4553
  }
4552
4554
  /**
4553
4555
  * Parent Window Communication Manager at B24
@@ -4592,6 +4594,7 @@ declare class MessageManager {
4592
4594
  declare class ParentManager {
4593
4595
  #private;
4594
4596
  constructor(messageManager: MessageManager);
4597
+ get message(): MessageManager;
4595
4598
  /**
4596
4599
  * The method closes the open modal window with the application
4597
4600
  *
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1 +1 @@
1
- {"version":3,"file":"auth.mjs","sources":["../../../src/oauth/auth.ts"],"sourcesContent":["import type { AxiosInstance } from 'axios'\nimport type { AuthActions, AuthData, B24OAuthParams, B24OAuthSecret, CallbackRefreshAuth, CustomRefreshAuth, HandlerRefreshAuth, TypeDescriptionError, TypeDescriptionErrorV3 } from '../types/auth'\nimport type { TypeHttp } from '../types/http'\nimport axios, { AxiosError } from 'axios'\nimport { RefreshTokenError } from './refresh-token-error'\nimport { Type } from '../tools/type'\nimport { EnumAppStatus } from '../types/b24-helper'\nimport { ApiVersion } from '../types/b24'\n\n/**\n * OAuth Authorization Manager\n *\n * @link https://apidocs.bitrix24.com/settings/oauth/index.html\n * @link https://bitrix24.github.io/b24jssdk/docs/oauth/\n */\nexport class AuthOAuthManager implements AuthActions {\n #clientAxios: AxiosInstance\n #callbackRefreshAuth: null | CallbackRefreshAuth = null\n #customRefreshAuth: null | CustomRefreshAuth = null\n #authOptions: B24OAuthParams\n readonly #oAuthSecret: B24OAuthSecret\n #authExpires: number = 0\n #authExpiresIn: number = 0\n readonly #domain: string\n readonly #b24TargetRest: string\n readonly #b24Target: string\n readonly #b24TargetRestWithPath: Map<ApiVersion, string>\n readonly #oAuthTarget: string // 'https://oauth.bitrix.info'\n\n #isAdmin: null | boolean = null\n\n constructor(\n b24OAuthParams: B24OAuthParams,\n oAuthSecret: B24OAuthSecret\n ) {\n this.#authOptions = Object.assign({}, b24OAuthParams) as B24OAuthParams\n this.#oAuthSecret = Object.freeze(Object.assign({}, oAuthSecret)) as B24OAuthSecret\n\n this.#domain = this.#authOptions.domain\n .replaceAll('https://', '')\n .replaceAll('http://', '')\n .replace(/:(80|443)$/, '')\n\n this.#b24TargetRest = this.#authOptions.clientEndpoint\n this.#b24Target = this.#b24TargetRest.replace('/rest/', '')\n this.#oAuthTarget = this.#authOptions.serverEndpoint.replace('/rest/', '')\n this.#authExpires = this.#authOptions.expires * 1_000\n this.#authExpiresIn = this.#authOptions.expiresIn\n\n this.#clientAxios = axios.create({\n baseURL: this.#oAuthTarget,\n headers: {\n 'Content-Type': 'application/json'\n }\n })\n\n this.#b24TargetRestWithPath = new Map()\n this.#b24TargetRestWithPath.set(ApiVersion.v2, `${this.#b24TargetRest}`)\n this.#b24TargetRestWithPath.set(ApiVersion.v3, `${this.#b24TargetRest}/api`)\n }\n\n /**\n * Returns authorization data\n * @see Http.#prepareParams\n */\n public getAuthData(): false | AuthData {\n return this.#authExpires > Date.now()\n ? ({\n access_token: this.#authOptions.accessToken,\n refresh_token: this.#authOptions.refreshToken,\n expires: this.#authExpires / 1_000,\n expires_in: this.#authExpiresIn,\n domain: this.#domain,\n member_id: this.#authOptions.memberId\n } as AuthData)\n : false\n }\n\n // region RefreshAuth ////\n /**\n * Updates authorization data\n */\n public async refreshAuth(): Promise<AuthData> {\n try {\n let payload: undefined | HandlerRefreshAuth = undefined\n\n if (this.#customRefreshAuth) {\n payload = await this.#customRefreshAuth()\n } else {\n const response = await this.#clientAxios.get(\n '/oauth/token/',\n {\n params: {\n grant_type: 'refresh_token',\n client_id: this.#oAuthSecret.clientId,\n client_secret: this.#oAuthSecret.clientSecret,\n refresh_token: this.#authOptions.refreshToken\n }\n }\n )\n\n if (response.data.error) {\n throw new Error(`Token update error: ${response.data.error}`)\n }\n if (response.status !== 200) {\n throw new Error(`Token update error status code: ${response.status}`)\n }\n\n /**\n * @memo domain = 'oauth.bitrix.info'\n */\n payload = response.data\n }\n\n if (!payload) {\n throw new Error('Unable to obtain authorization update data')\n }\n\n this.#authOptions.accessToken = payload.access_token\n this.#authOptions.refreshToken = payload.refresh_token\n this.#authOptions.expires = Number.parseInt(payload.expires || '0')\n this.#authOptions.expiresIn = Number.parseInt(payload.expires_in || '3600')\n this.#authOptions.clientEndpoint = payload.client_endpoint\n this.#authOptions.serverEndpoint = payload.server_endpoint\n this.#authOptions.scope = payload.scope\n this.#authOptions.status = Object.values(EnumAppStatus).find(value => value === payload.status) || EnumAppStatus.Free\n\n this.#authExpires = this.#authOptions.expires * 1_000\n\n const authData = this.getAuthData() as AuthData\n\n if (this.#callbackRefreshAuth) {\n await this.#callbackRefreshAuth({ authData, b24OAuthParams: this.#authOptions })\n }\n\n return authData\n } catch (error) {\n if (error instanceof AxiosError) {\n const answerError = {\n code: error?.code || 0,\n description: error?.message || ''\n }\n\n if (\n error.response\n && error.response.data\n && !Type.isUndefined(error.response.data.error)\n ) {\n const responseData = error.response.data as TypeDescriptionError | TypeDescriptionErrorV3\n\n if (\n responseData.error\n && typeof responseData.error === 'object'\n && 'code' in responseData.error\n ) {\n answerError.code = responseData.error.code\n answerError.description = responseData.error.message\n if (responseData.error.validation) {\n responseData.error.validation.forEach((row) => {\n answerError.description += `${row?.message || JSON.stringify(row)}`\n })\n }\n } else if (responseData.error && typeof responseData.error === 'string') {\n answerError.code = responseData.error\n answerError.description = (responseData as TypeDescriptionError)?.error_description ?? answerError.description\n }\n }\n\n throw new RefreshTokenError({\n code: String(answerError.code),\n description: answerError.description,\n status: error.response?.status || 0\n })\n } else if (error instanceof Error) {\n throw error\n }\n\n throw new Error(\n `Strange error: ${error instanceof Error ? error.message : error}`,\n { cause: error }\n )\n }\n }\n\n public setCallbackRefreshAuth(cb: CallbackRefreshAuth): void {\n this.#callbackRefreshAuth = cb\n }\n\n public removeCallbackRefreshAuth(): void {\n this.#callbackRefreshAuth = null\n }\n\n public setCustomRefreshAuth(cb: CustomRefreshAuth): void {\n this.#customRefreshAuth = cb\n }\n\n public removeCustomRefreshAuth(): void {\n this.#customRefreshAuth = null\n }\n // endregion ////\n\n public getUniq(prefix: string): string {\n return [prefix, this.#authOptions.memberId || ''].join('_')\n }\n\n /**\n * @inheritDoc\n */\n public getTargetOrigin(): string {\n return `${this.#b24Target}`\n }\n\n /**\n * @inheritDoc\n */\n public getTargetOriginWithPath(): Map<ApiVersion, string> {\n return this.#b24TargetRestWithPath\n }\n\n /**\n * Determines whether the current user has administrator rights\n */\n get isAdmin(): boolean {\n if (null === this.#isAdmin) {\n throw new Error('isAdmin not init. You need call B24OAuth::initIsAdmin().')\n }\n\n return this.#isAdmin\n }\n\n public async initIsAdmin(http: TypeHttp, requestId?: string): Promise<void> {\n // set def value\n this.#isAdmin = false\n\n // region ver3 ////\n /**\n * This is just a template. When API.v3 arrives, we'll replace it.\n * @todo fix then the new API will be available\n */\n if (http.apiVersion === ApiVersion.v3) {\n const response = await http.call('profile', {}, requestId)\n if (!response.isSuccess) {\n throw new Error(response.getErrorMessages().join(';'))\n }\n\n const data: { profile: { id: number, admin: boolean } } = response.getData()!.result\n\n if (data.profile?.admin) {\n this.#isAdmin = true\n }\n\n return\n }\n // endregion ////\n\n // region ver2 ////\n const response = await http.call('profile', {}, requestId)\n if (!response.isSuccess) {\n throw new Error(response.getErrorMessages().join(';'))\n }\n\n const data: {\n ID: number\n ADMIN: boolean\n } = response.getData()!.result\n\n if (data?.ADMIN) {\n this.#isAdmin = true\n }\n // endregion ////\n }\n}\n"],"names":["response","data"],"mappings":"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"}
1
+ {"version":3,"file":"auth.mjs","sources":["../../../src/oauth/auth.ts"],"sourcesContent":["import type { AxiosInstance } from 'axios'\nimport type { AuthActions, AuthData, B24OAuthParams, B24OAuthSecret, CallbackRefreshAuth, CustomRefreshAuth, HandlerRefreshAuth, TypeDescriptionError, TypeDescriptionErrorV3 } from '../types/auth'\nimport type { TypeHttp } from '../types/http'\nimport axios, { AxiosError } from 'axios'\nimport { RefreshTokenError } from './refresh-token-error'\nimport { Type } from '../tools/type'\nimport { EnumAppStatus } from '../types/b24-helper'\nimport { ApiVersion } from '../types/b24'\n\n/**\n * OAuth Authorization Manager\n *\n * @link https://apidocs.bitrix24.com/settings/oauth/index.html\n * @link https://bitrix24.github.io/b24jssdk/docs/oauth/\n */\nexport class AuthOAuthManager implements AuthActions {\n #clientAxios: AxiosInstance\n #callbackRefreshAuth: null | CallbackRefreshAuth = null\n #customRefreshAuth: null | CustomRefreshAuth = null\n #authOptions: B24OAuthParams\n readonly #oAuthSecret: B24OAuthSecret\n #authExpires: number = 0\n #authExpiresIn: number = 0\n readonly #domain: string\n readonly #b24TargetRest: string\n readonly #b24Target: string\n readonly #b24TargetRestWithPath: Map<ApiVersion, string>\n readonly #oAuthTarget: string // 'https://oauth.bitrix.info'\n\n #isAdmin: null | boolean = null\n\n constructor(\n b24OAuthParams: B24OAuthParams,\n oAuthSecret: B24OAuthSecret\n ) {\n this.#authOptions = Object.assign({}, b24OAuthParams) as B24OAuthParams\n this.#oAuthSecret = Object.freeze(Object.assign({}, oAuthSecret)) as B24OAuthSecret\n\n this.#domain = this.#authOptions.domain\n .replaceAll('https://', '')\n .replaceAll('http://', '')\n .replace(/:(80|443)$/, '')\n\n this.#b24TargetRest = this.#authOptions.clientEndpoint\n this.#b24Target = this.#b24TargetRest.replace('/rest/', '')\n this.#oAuthTarget = this.#authOptions.serverEndpoint.replace('/rest/', '')\n this.#authExpires = this.#authOptions.expires * 1_000\n this.#authExpiresIn = this.#authOptions.expiresIn\n\n this.#clientAxios = axios.create({\n baseURL: this.#oAuthTarget,\n headers: {\n 'Content-Type': 'application/json'\n }\n })\n\n this.#b24TargetRestWithPath = new Map()\n this.#b24TargetRestWithPath.set(ApiVersion.v2, `${this.#b24TargetRest}`)\n this.#b24TargetRestWithPath.set(ApiVersion.v3, `${this.#b24TargetRest}/api`)\n }\n\n /**\n * Returns authorization data\n * @see Http.#prepareParams\n */\n public getAuthData(): false | AuthData {\n return this.#authExpires > Date.now()\n ? ({\n access_token: this.#authOptions.accessToken,\n refresh_token: this.#authOptions.refreshToken,\n expires: this.#authExpires / 1_000,\n expires_in: this.#authExpiresIn,\n domain: this.#domain,\n member_id: this.#authOptions.memberId\n } as AuthData)\n : false\n }\n\n // region RefreshAuth ////\n /**\n * Updates authorization data\n */\n public async refreshAuth(): Promise<AuthData> {\n try {\n let payload: undefined | HandlerRefreshAuth = undefined\n\n if (this.#customRefreshAuth) {\n payload = await this.#customRefreshAuth()\n } else {\n const response = await this.#clientAxios.get(\n '/oauth/token/',\n {\n params: {\n grant_type: 'refresh_token',\n client_id: this.#oAuthSecret.clientId,\n client_secret: this.#oAuthSecret.clientSecret,\n refresh_token: this.#authOptions.refreshToken\n }\n }\n )\n\n if (response.data.error) {\n throw new Error(`Token update error: ${response.data.error}`)\n }\n if (response.status !== 200) {\n throw new Error(`Token update error status code: ${response.status}`)\n }\n\n /**\n * @memo domain = 'oauth.bitrix.info'\n */\n payload = response.data\n }\n\n if (!payload) {\n throw new Error('Unable to obtain authorization update data')\n }\n\n this.#authOptions.accessToken = payload.access_token\n this.#authOptions.refreshToken = payload.refresh_token\n this.#authOptions.expires = Number.parseInt(payload.expires || '0')\n this.#authOptions.expiresIn = Number.parseInt(payload.expires_in || '3600')\n this.#authOptions.clientEndpoint = payload.client_endpoint\n this.#authOptions.serverEndpoint = payload.server_endpoint\n this.#authOptions.scope = payload.scope\n this.#authOptions.status = Object.values(EnumAppStatus).find(value => value === payload.status) || EnumAppStatus.Free\n\n this.#authExpires = this.#authOptions.expires * 1_000\n\n const authData = this.getAuthData() as AuthData\n\n if (this.#callbackRefreshAuth) {\n await this.#callbackRefreshAuth({ authData, b24OAuthParams: this.#authOptions })\n }\n\n return authData\n } catch (error) {\n if (error instanceof AxiosError) {\n const answerError = {\n code: error?.code || 0,\n description: error?.message || ''\n }\n\n if (\n error.response\n && error.response.data\n && !Type.isUndefined(error.response.data.error)\n ) {\n const responseData = error.response.data as TypeDescriptionError | TypeDescriptionErrorV3\n\n if (\n responseData.error\n && typeof responseData.error === 'object'\n && 'code' in responseData.error\n ) {\n answerError.code = responseData.error.code\n answerError.description = responseData.error.message\n if (responseData.error.validation) {\n responseData.error.validation.forEach((row) => {\n answerError.description += `${row?.message || JSON.stringify(row)}`\n })\n }\n } else if (responseData.error && typeof responseData.error === 'string') {\n answerError.code = responseData.error\n answerError.description = (responseData as TypeDescriptionError)?.error_description ?? answerError.description\n }\n }\n\n throw new RefreshTokenError({\n code: String(answerError.code),\n description: answerError.description,\n status: error.response?.status || 0\n })\n } else if (error instanceof Error) {\n throw error\n }\n\n throw new Error(\n `Strange error: ${error instanceof Error ? error.message : error}`,\n { cause: error }\n )\n }\n }\n\n public setCallbackRefreshAuth(cb: CallbackRefreshAuth): void {\n this.#callbackRefreshAuth = cb\n }\n\n public removeCallbackRefreshAuth(): void {\n this.#callbackRefreshAuth = null\n }\n\n public setCustomRefreshAuth(cb: CustomRefreshAuth): void {\n this.#customRefreshAuth = cb\n }\n\n public removeCustomRefreshAuth(): void {\n this.#customRefreshAuth = null\n }\n // endregion ////\n\n public getUniq(prefix: string): string {\n return [prefix, this.#authOptions.memberId || ''].join('_')\n }\n\n /**\n * @inheritDoc\n */\n public getTargetOrigin(): string {\n return `${this.#b24Target}`\n }\n\n /**\n * @inheritDoc\n */\n public getTargetOriginWithPath(): Map<ApiVersion, string> {\n return this.#b24TargetRestWithPath\n }\n\n /**\n * Determines whether the current user has administrator rights\n */\n get isAdmin(): boolean {\n if (null === this.#isAdmin) {\n throw new Error('isAdmin not init. You need call B24OAuth::initIsAdmin().')\n }\n\n return this.#isAdmin\n }\n\n public async initIsAdmin(http: TypeHttp, requestId?: string): Promise<void> {\n // set def value\n this.#isAdmin = false\n\n // region ver3 ////\n /**\n * This is just a template. When API.v3 arrives, we'll replace it.\n * @todo fix then the new API will be available\n */\n if (http.apiVersion === ApiVersion.v3) {\n const response = await http.call('profile', {}, requestId)\n if (!response.isSuccess) {\n throw new Error(response.getErrorMessages().join(';'))\n }\n\n const data: { profile: { id: number, admin: boolean } } = response.getData()!.result as any\n\n if (data.profile?.admin) {\n this.#isAdmin = true\n }\n\n return\n }\n // endregion ////\n\n // region ver2 ////\n const response = await http.call('profile', {}, requestId)\n if (!response.isSuccess) {\n throw new Error(response.getErrorMessages().join(';'))\n }\n\n const data: { ID: number, ADMIN: boolean } = response.getData()!.result as any\n\n if (data?.ADMIN) {\n this.#isAdmin = true\n }\n // endregion ////\n }\n}\n"],"names":["response","data"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @package @bitrix24/b24jssdk
3
- * @version 1.0.1
3
+ * @version 1.0.3
4
4
  * @copyright (c) 2026 Bitrix24
5
5
  * @license MIT
6
6
  * @see https://github.com/bitrix24/b24jssdk