@bitrix24/b24jssdk 1.3.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README-AI.md +3 -2
- package/README.md +2 -0
- package/dist/cjs/_virtual/_commonjsHelpers.cjs +19 -0
- package/dist/cjs/_virtual/_commonjsHelpers.cjs.map +1 -0
- package/dist/cjs/_virtual/protobuf.cjs +20 -0
- package/dist/cjs/_virtual/protobuf.cjs.map +1 -0
- package/dist/cjs/_virtual/protobuf2.cjs +14 -0
- package/dist/cjs/_virtual/protobuf2.cjs.map +1 -0
- package/dist/cjs/core/abstract-b24.cjs +357 -0
- package/dist/cjs/core/abstract-b24.cjs.map +1 -0
- package/dist/cjs/core/actions/abstract-action.cjs +26 -0
- package/dist/cjs/core/actions/abstract-action.cjs.map +1 -0
- package/dist/cjs/core/actions/abstract-batch.cjs +97 -0
- package/dist/cjs/core/actions/abstract-batch.cjs.map +1 -0
- package/dist/cjs/core/actions/manager.cjs +55 -0
- package/dist/cjs/core/actions/manager.cjs.map +1 -0
- package/dist/cjs/core/actions/v2/batch-by-chunk.cjs +95 -0
- package/dist/cjs/core/actions/v2/batch-by-chunk.cjs.map +1 -0
- package/dist/cjs/core/actions/v2/batch.cjs +128 -0
- package/dist/cjs/core/actions/v2/batch.cjs.map +1 -0
- package/dist/cjs/core/actions/v2/call-list.cjs +144 -0
- package/dist/cjs/core/actions/v2/call-list.cjs.map +1 -0
- package/dist/cjs/core/actions/v2/call.cjs +56 -0
- package/dist/cjs/core/actions/v2/call.cjs.map +1 -0
- package/dist/cjs/core/actions/v2/fetch-list.cjs +145 -0
- package/dist/cjs/core/actions/v2/fetch-list.cjs.map +1 -0
- package/dist/cjs/core/actions/v2/manager-v2.cjs +76 -0
- package/dist/cjs/core/actions/v2/manager-v2.cjs.map +1 -0
- package/dist/cjs/core/actions/v3/_keyset-paginate.cjs +69 -0
- package/dist/cjs/core/actions/v3/_keyset-paginate.cjs.map +1 -0
- package/dist/cjs/core/actions/v3/aggregate.cjs +96 -0
- package/dist/cjs/core/actions/v3/aggregate.cjs.map +1 -0
- package/dist/cjs/core/actions/v3/batch-by-chunk.cjs +93 -0
- package/dist/cjs/core/actions/v3/batch-by-chunk.cjs.map +1 -0
- package/dist/cjs/core/actions/v3/batch.cjs +122 -0
- package/dist/cjs/core/actions/v3/batch.cjs.map +1 -0
- package/dist/cjs/core/actions/v3/call-list.cjs +126 -0
- package/dist/cjs/core/actions/v3/call-list.cjs.map +1 -0
- package/dist/cjs/core/actions/v3/call-tail.cjs +118 -0
- package/dist/cjs/core/actions/v3/call-tail.cjs.map +1 -0
- package/dist/cjs/core/actions/v3/call.cjs +51 -0
- package/dist/cjs/core/actions/v3/call.cjs.map +1 -0
- package/dist/cjs/core/actions/v3/fetch-list.cjs +122 -0
- package/dist/cjs/core/actions/v3/fetch-list.cjs.map +1 -0
- package/dist/cjs/core/actions/v3/fetch-tail.cjs +112 -0
- package/dist/cjs/core/actions/v3/fetch-tail.cjs.map +1 -0
- package/dist/cjs/core/actions/v3/manager-v3.cjs +100 -0
- package/dist/cjs/core/actions/v3/manager-v3.cjs.map +1 -0
- package/dist/cjs/core/http/abstract-http.cjs +641 -0
- package/dist/cjs/core/http/abstract-http.cjs.map +1 -0
- package/dist/cjs/core/http/ajax-error.cjs +113 -0
- package/dist/cjs/core/http/ajax-error.cjs.map +1 -0
- package/dist/cjs/core/http/ajax-result.cjs +219 -0
- package/dist/cjs/core/http/ajax-result.cjs.map +1 -0
- package/dist/cjs/core/http/limiters/adaptive-delayer.cjs +137 -0
- package/dist/cjs/core/http/limiters/adaptive-delayer.cjs.map +1 -0
- package/dist/cjs/core/http/limiters/manager.cjs +373 -0
- package/dist/cjs/core/http/limiters/manager.cjs.map +1 -0
- package/dist/cjs/core/http/limiters/operating-limiter.cjs +173 -0
- package/dist/cjs/core/http/limiters/operating-limiter.cjs.map +1 -0
- package/dist/cjs/core/http/limiters/params-factory.cjs +124 -0
- package/dist/cjs/core/http/limiters/params-factory.cjs.map +1 -0
- package/dist/cjs/core/http/limiters/rate-limiter.cjs +404 -0
- package/dist/cjs/core/http/limiters/rate-limiter.cjs.map +1 -0
- package/dist/cjs/core/http/redact.cjs +85 -0
- package/dist/cjs/core/http/redact.cjs.map +1 -0
- package/dist/cjs/core/http/v2.cjs +85 -0
- package/dist/cjs/core/http/v2.cjs.map +1 -0
- package/dist/cjs/core/http/v3.cjs +82 -0
- package/dist/cjs/core/http/v3.cjs.map +1 -0
- package/dist/cjs/core/interaction/batch/abstract-interaction-batch.cjs +71 -0
- package/dist/cjs/core/interaction/batch/abstract-interaction-batch.cjs.map +1 -0
- package/dist/cjs/core/interaction/batch/parse-row.cjs +69 -0
- package/dist/cjs/core/interaction/batch/parse-row.cjs.map +1 -0
- package/dist/cjs/core/interaction/batch/processing/interface-strategy.cjs +87 -0
- package/dist/cjs/core/interaction/batch/processing/interface-strategy.cjs.map +1 -0
- package/dist/cjs/core/interaction/batch/processing/v2/abstract-processing.cjs +138 -0
- package/dist/cjs/core/interaction/batch/processing/v2/abstract-processing.cjs.map +1 -0
- package/dist/cjs/core/interaction/batch/processing/v2/as-array.cjs +34 -0
- package/dist/cjs/core/interaction/batch/processing/v2/as-array.cjs.map +1 -0
- package/dist/cjs/core/interaction/batch/processing/v2/as-object.cjs +34 -0
- package/dist/cjs/core/interaction/batch/processing/v2/as-object.cjs.map +1 -0
- package/dist/cjs/core/interaction/batch/processing/v3/abstract-processing.cjs +115 -0
- package/dist/cjs/core/interaction/batch/processing/v3/abstract-processing.cjs.map +1 -0
- package/dist/cjs/core/interaction/batch/processing/v3/as-array.cjs +34 -0
- package/dist/cjs/core/interaction/batch/processing/v3/as-array.cjs.map +1 -0
- package/dist/cjs/core/interaction/batch/processing/v3/as-object.cjs +34 -0
- package/dist/cjs/core/interaction/batch/processing/v3/as-object.cjs.map +1 -0
- package/dist/cjs/core/interaction/batch/v2.cjs +47 -0
- package/dist/cjs/core/interaction/batch/v2.cjs.map +1 -0
- package/dist/cjs/core/interaction/batch/v3.cjs +45 -0
- package/dist/cjs/core/interaction/batch/v3.cjs.map +1 -0
- package/dist/cjs/core/language/list.cjs +59 -0
- package/dist/cjs/core/language/list.cjs.map +1 -0
- package/dist/cjs/core/request-id-generator.cjs +44 -0
- package/dist/cjs/core/request-id-generator.cjs.map +1 -0
- package/dist/cjs/core/result.cjs +137 -0
- package/dist/cjs/core/result.cjs.map +1 -0
- package/dist/cjs/core/sdk-error.cjs +85 -0
- package/dist/cjs/core/sdk-error.cjs.map +1 -0
- package/dist/cjs/core/tools/abstract-tool.cjs +26 -0
- package/dist/cjs/core/tools/abstract-tool.cjs.map +1 -0
- package/dist/cjs/core/tools/healthcheck.cjs +50 -0
- package/dist/cjs/core/tools/healthcheck.cjs.map +1 -0
- package/dist/cjs/core/tools/manager.cjs +52 -0
- package/dist/cjs/core/tools/manager.cjs.map +1 -0
- package/dist/cjs/core/tools/ping.cjs +58 -0
- package/dist/cjs/core/tools/ping.cjs.map +1 -0
- package/dist/cjs/core/version-manager.cjs +57 -0
- package/dist/cjs/core/version-manager.cjs.map +1 -0
- package/dist/cjs/frame/auth.cjs +100 -0
- package/dist/cjs/frame/auth.cjs.map +1 -0
- package/dist/cjs/frame/b24.cjs +178 -0
- package/dist/cjs/frame/b24.cjs.map +1 -0
- package/dist/cjs/frame/dialog.cjs +120 -0
- package/dist/cjs/frame/dialog.cjs.map +1 -0
- package/dist/cjs/frame/frame.cjs +103 -0
- package/dist/cjs/frame/frame.cjs.map +1 -0
- package/dist/cjs/frame/message/commands.cjs +39 -0
- package/dist/cjs/frame/message/commands.cjs.map +1 -0
- package/dist/cjs/frame/message/controller.cjs +191 -0
- package/dist/cjs/frame/message/controller.cjs.map +1 -0
- package/dist/cjs/frame/options.cjs +108 -0
- package/dist/cjs/frame/options.cjs.map +1 -0
- package/dist/cjs/frame/parent.cjs +259 -0
- package/dist/cjs/frame/parent.cjs.map +1 -0
- package/dist/cjs/frame/placement.cjs +156 -0
- package/dist/cjs/frame/placement.cjs.map +1 -0
- package/dist/cjs/frame/slider.cjs +162 -0
- package/dist/cjs/frame/slider.cjs.map +1 -0
- package/dist/cjs/helper/abstract-helper.cjs +55 -0
- package/dist/cjs/helper/abstract-helper.cjs.map +1 -0
- package/dist/cjs/helper/app-manager.cjs +39 -0
- package/dist/cjs/helper/app-manager.cjs.map +1 -0
- package/dist/cjs/helper/currency-manager.cjs +215 -0
- package/dist/cjs/helper/currency-manager.cjs.map +1 -0
- package/dist/cjs/helper/helper-manager.cjs +397 -0
- package/dist/cjs/helper/helper-manager.cjs.map +1 -0
- package/dist/cjs/helper/license-manager.cjs +52 -0
- package/dist/cjs/helper/license-manager.cjs.map +1 -0
- package/dist/cjs/helper/options-manager.cjs +205 -0
- package/dist/cjs/helper/options-manager.cjs.map +1 -0
- package/dist/cjs/helper/payment-manager.cjs +35 -0
- package/dist/cjs/helper/payment-manager.cjs.map +1 -0
- package/dist/cjs/helper/profile-manager.cjs +35 -0
- package/dist/cjs/helper/profile-manager.cjs.map +1 -0
- package/dist/cjs/helper/use-b24-helper.cjs +85 -0
- package/dist/cjs/helper/use-b24-helper.cjs.map +1 -0
- package/dist/cjs/hook/auth.cjs +79 -0
- package/dist/cjs/hook/auth.cjs.map +1 -0
- package/dist/cjs/hook/b24.cjs +117 -0
- package/dist/cjs/hook/b24.cjs.map +1 -0
- package/dist/cjs/index.cjs +176 -0
- package/dist/cjs/index.cjs.map +1 -0
- package/dist/cjs/index.d.cts +6415 -0
- package/dist/cjs/index.d.mts +6415 -0
- package/dist/cjs/index.d.ts +6415 -0
- package/dist/cjs/loader-b24frame.cjs +103 -0
- package/dist/cjs/loader-b24frame.cjs.map +1 -0
- package/dist/cjs/logger/abstract-logger.cjs +71 -0
- package/dist/cjs/logger/abstract-logger.cjs.map +1 -0
- package/dist/cjs/logger/browser.cjs +165 -0
- package/dist/cjs/logger/browser.cjs.map +1 -0
- package/dist/cjs/logger/formatter/abstract-formatter.cjs +36 -0
- package/dist/cjs/logger/formatter/abstract-formatter.cjs.map +1 -0
- package/dist/cjs/logger/formatter/json-formatter.cjs +36 -0
- package/dist/cjs/logger/formatter/json-formatter.cjs.map +1 -0
- package/dist/cjs/logger/formatter/line-formatter.cjs +43 -0
- package/dist/cjs/logger/formatter/line-formatter.cjs.map +1 -0
- package/dist/cjs/logger/formatter/telegram-formatter.cjs +105 -0
- package/dist/cjs/logger/formatter/telegram-formatter.cjs.map +1 -0
- package/dist/cjs/logger/handler/abstract-handler.cjs +41 -0
- package/dist/cjs/logger/handler/abstract-handler.cjs.map +1 -0
- package/dist/cjs/logger/handler/consola-adapter.cjs +64 -0
- package/dist/cjs/logger/handler/consola-adapter.cjs.map +1 -0
- package/dist/cjs/logger/handler/console-handler.cjs +100 -0
- package/dist/cjs/logger/handler/console-handler.cjs.map +1 -0
- package/dist/cjs/logger/handler/console-v2-handler.cjs +53 -0
- package/dist/cjs/logger/handler/console-v2-handler.cjs.map +1 -0
- package/dist/cjs/logger/handler/memory-handler.cjs +50 -0
- package/dist/cjs/logger/handler/memory-handler.cjs.map +1 -0
- package/dist/cjs/logger/handler/stream-handler.cjs +75 -0
- package/dist/cjs/logger/handler/stream-handler.cjs.map +1 -0
- package/dist/cjs/logger/handler/telegram-handler.cjs +159 -0
- package/dist/cjs/logger/handler/telegram-handler.cjs.map +1 -0
- package/dist/cjs/logger/handler/winston-adapter.cjs +59 -0
- package/dist/cjs/logger/handler/winston-adapter.cjs.map +1 -0
- package/dist/cjs/logger/logger-factory.cjs +69 -0
- package/dist/cjs/logger/logger-factory.cjs.map +1 -0
- package/dist/cjs/logger/logger.cjs +78 -0
- package/dist/cjs/logger/logger.cjs.map +1 -0
- package/dist/cjs/logger/null-logger.cjs +34 -0
- package/dist/cjs/logger/null-logger.cjs.map +1 -0
- package/dist/cjs/logger/processor/memory-usage-processor.cjs +22 -0
- package/dist/cjs/logger/processor/memory-usage-processor.cjs.map +1 -0
- package/dist/cjs/logger/processor/pid-processor.cjs +22 -0
- package/dist/cjs/logger/processor/pid-processor.cjs.map +1 -0
- package/dist/cjs/oauth/auth.cjs +214 -0
- package/dist/cjs/oauth/auth.cjs.map +1 -0
- package/dist/cjs/oauth/b24.cjs +119 -0
- package/dist/cjs/oauth/b24.cjs.map +1 -0
- package/dist/cjs/oauth/refresh-token-error.cjs +22 -0
- package/dist/cjs/oauth/refresh-token-error.cjs.map +1 -0
- package/dist/cjs/pullClient/abstract-connector.cjs +80 -0
- package/dist/cjs/pullClient/abstract-connector.cjs.map +1 -0
- package/dist/cjs/pullClient/channel-manager.cjs +91 -0
- package/dist/cjs/pullClient/channel-manager.cjs.map +1 -0
- package/dist/cjs/pullClient/client.cjs +2177 -0
- package/dist/cjs/pullClient/client.cjs.map +1 -0
- package/dist/cjs/pullClient/errors.cjs +34 -0
- package/dist/cjs/pullClient/errors.cjs.map +1 -0
- package/dist/cjs/pullClient/json-rpc.cjs +213 -0
- package/dist/cjs/pullClient/json-rpc.cjs.map +1 -0
- package/dist/cjs/pullClient/long-polling-connector.cjs +159 -0
- package/dist/cjs/pullClient/long-polling-connector.cjs.map +1 -0
- package/dist/cjs/pullClient/protobuf/index.cjs +22 -0
- package/dist/cjs/pullClient/protobuf/index.cjs.map +1 -0
- package/dist/cjs/pullClient/protobuf/model.cjs +1060 -0
- package/dist/cjs/pullClient/protobuf/model.cjs.map +1 -0
- package/dist/cjs/pullClient/protobuf/protobuf.cjs +4655 -0
- package/dist/cjs/pullClient/protobuf/protobuf.cjs.map +1 -0
- package/dist/cjs/pullClient/shared-config.cjs +135 -0
- package/dist/cjs/pullClient/shared-config.cjs.map +1 -0
- package/dist/cjs/pullClient/storage-manager.cjs +74 -0
- package/dist/cjs/pullClient/storage-manager.cjs.map +1 -0
- package/dist/cjs/pullClient/web-socket-connector.cjs +131 -0
- package/dist/cjs/pullClient/web-socket-connector.cjs.map +1 -0
- package/dist/cjs/tools/batch-ref-v3.cjs +54 -0
- package/dist/cjs/tools/batch-ref-v3.cjs.map +1 -0
- package/dist/cjs/tools/browser.cjs +156 -0
- package/dist/cjs/tools/browser.cjs.map +1 -0
- package/dist/cjs/tools/environment.cjs +32 -0
- package/dist/cjs/tools/environment.cjs.map +1 -0
- package/dist/cjs/tools/filter-v3.cjs +139 -0
- package/dist/cjs/tools/filter-v3.cjs.map +1 -0
- package/dist/cjs/tools/formatters/iban.cjs +307 -0
- package/dist/cjs/tools/formatters/iban.cjs.map +1 -0
- package/dist/cjs/tools/formatters/numbers.cjs +68 -0
- package/dist/cjs/tools/formatters/numbers.cjs.map +1 -0
- package/dist/cjs/tools/index.cjs +42 -0
- package/dist/cjs/tools/index.cjs.map +1 -0
- package/dist/cjs/tools/scroll-size.cjs +29 -0
- package/dist/cjs/tools/scroll-size.cjs.map +1 -0
- package/dist/cjs/tools/text.cjs +210 -0
- package/dist/cjs/tools/text.cjs.map +1 -0
- package/dist/cjs/tools/type.cjs +339 -0
- package/dist/cjs/tools/type.cjs.map +1 -0
- package/dist/cjs/tools/use-formatters.cjs +462 -0
- package/dist/cjs/tools/use-formatters.cjs.map +1 -0
- package/dist/cjs/tools/uuidv7.cjs +58 -0
- package/dist/cjs/tools/uuidv7.cjs.map +1 -0
- package/dist/cjs/types/b24-helper.cjs +62 -0
- package/dist/cjs/types/b24-helper.cjs.map +1 -0
- package/dist/cjs/types/b24.cjs +18 -0
- package/dist/cjs/types/b24.cjs.map +1 -0
- package/dist/cjs/types/bizproc/index.cjs +195 -0
- package/dist/cjs/types/bizproc/index.cjs.map +1 -0
- package/dist/cjs/types/catalog/index.cjs +39 -0
- package/dist/cjs/types/catalog/index.cjs.map +1 -0
- package/dist/cjs/types/common.cjs +33 -0
- package/dist/cjs/types/common.cjs.map +1 -0
- package/dist/cjs/types/crm/entity-type.cjs +62 -0
- package/dist/cjs/types/crm/entity-type.cjs.map +1 -0
- package/dist/cjs/types/crm/productrow.cjs +19 -0
- package/dist/cjs/types/crm/productrow.cjs.map +1 -0
- package/dist/cjs/types/logger.cjs +24 -0
- package/dist/cjs/types/logger.cjs.map +1 -0
- package/dist/cjs/types/pull.cjs +94 -0
- package/dist/cjs/types/pull.cjs.map +1 -0
- package/dist/esm/_virtual/_commonjsHelpers.mjs +1 -1
- package/dist/esm/_virtual/protobuf.mjs +1 -1
- package/dist/esm/_virtual/protobuf2.mjs +1 -1
- package/dist/esm/core/abstract-b24.mjs +1 -1
- package/dist/esm/core/actions/abstract-action.mjs +1 -1
- package/dist/esm/core/actions/abstract-batch.mjs +1 -1
- package/dist/esm/core/actions/manager.mjs +1 -1
- package/dist/esm/core/actions/v2/batch-by-chunk.mjs +1 -1
- package/dist/esm/core/actions/v2/batch.mjs +1 -1
- package/dist/esm/core/actions/v2/call-list.mjs +1 -1
- package/dist/esm/core/actions/v2/call.mjs +1 -15
- package/dist/esm/core/actions/v2/call.mjs.map +1 -1
- package/dist/esm/core/actions/v2/fetch-list.mjs +1 -1
- package/dist/esm/core/actions/v2/manager-v2.mjs +1 -1
- package/dist/esm/core/actions/v3/_keyset-paginate.mjs +66 -0
- package/dist/esm/core/actions/v3/_keyset-paginate.mjs.map +1 -0
- package/dist/esm/core/actions/v3/aggregate.mjs +94 -0
- package/dist/esm/core/actions/v3/aggregate.mjs.map +1 -0
- package/dist/esm/core/actions/v3/batch-by-chunk.mjs +1 -1
- package/dist/esm/core/actions/v3/batch.mjs +1 -10
- package/dist/esm/core/actions/v3/batch.mjs.map +1 -1
- package/dist/esm/core/actions/v3/call-list.mjs +30 -44
- package/dist/esm/core/actions/v3/call-list.mjs.map +1 -1
- package/dist/esm/core/actions/v3/call-tail.mjs +116 -0
- package/dist/esm/core/actions/v3/call-tail.mjs.map +1 -0
- package/dist/esm/core/actions/v3/call.mjs +1 -10
- package/dist/esm/core/actions/v3/call.mjs.map +1 -1
- package/dist/esm/core/actions/v3/fetch-list.mjs +24 -41
- package/dist/esm/core/actions/v3/fetch-list.mjs.map +1 -1
- package/dist/esm/core/actions/v3/fetch-tail.mjs +110 -0
- package/dist/esm/core/actions/v3/fetch-tail.mjs.map +1 -0
- package/dist/esm/core/actions/v3/manager-v3.mjs +25 -1
- package/dist/esm/core/actions/v3/manager-v3.mjs.map +1 -1
- package/dist/esm/core/http/abstract-http.mjs +68 -17
- package/dist/esm/core/http/abstract-http.mjs.map +1 -1
- package/dist/esm/core/http/ajax-error.mjs +1 -1
- package/dist/esm/core/http/ajax-result.mjs +9 -8
- package/dist/esm/core/http/ajax-result.mjs.map +1 -1
- package/dist/esm/core/http/limiters/adaptive-delayer.mjs +1 -1
- package/dist/esm/core/http/limiters/manager.mjs +1 -1
- package/dist/esm/core/http/limiters/operating-limiter.mjs +1 -1
- package/dist/esm/core/http/limiters/params-factory.mjs +1 -1
- package/dist/esm/core/http/limiters/rate-limiter.mjs +1 -1
- package/dist/esm/core/http/redact.mjs +41 -13
- package/dist/esm/core/http/redact.mjs.map +1 -1
- package/dist/esm/core/http/v2.mjs +1 -18
- package/dist/esm/core/http/v2.mjs.map +1 -1
- package/dist/esm/core/http/v3.mjs +1 -15
- package/dist/esm/core/http/v3.mjs.map +1 -1
- package/dist/esm/core/interaction/batch/abstract-interaction-batch.mjs +1 -1
- package/dist/esm/core/interaction/batch/parse-row.mjs +1 -1
- package/dist/esm/core/interaction/batch/processing/interface-strategy.mjs +44 -1
- package/dist/esm/core/interaction/batch/processing/interface-strategy.mjs.map +1 -1
- package/dist/esm/core/interaction/batch/processing/v2/abstract-processing.mjs +7 -6
- package/dist/esm/core/interaction/batch/processing/v2/abstract-processing.mjs.map +1 -1
- package/dist/esm/core/interaction/batch/processing/v2/as-array.mjs +3 -3
- package/dist/esm/core/interaction/batch/processing/v2/as-array.mjs.map +1 -1
- package/dist/esm/core/interaction/batch/processing/v2/as-object.mjs +1 -1
- package/dist/esm/core/interaction/batch/processing/v3/abstract-processing.mjs +7 -19
- package/dist/esm/core/interaction/batch/processing/v3/abstract-processing.mjs.map +1 -1
- package/dist/esm/core/interaction/batch/processing/v3/as-array.mjs +3 -3
- package/dist/esm/core/interaction/batch/processing/v3/as-array.mjs.map +1 -1
- package/dist/esm/core/interaction/batch/processing/v3/as-object.mjs +1 -1
- package/dist/esm/core/interaction/batch/v2.mjs +1 -1
- package/dist/esm/core/interaction/batch/v3.mjs +1 -1
- package/dist/esm/core/language/list.mjs +1 -1
- package/dist/esm/core/request-id-generator.mjs +1 -1
- package/dist/esm/core/result.mjs +11 -4
- package/dist/esm/core/result.mjs.map +1 -1
- package/dist/esm/core/sdk-error.mjs +1 -1
- package/dist/esm/core/tools/abstract-tool.mjs +1 -1
- package/dist/esm/core/tools/healthcheck.mjs +1 -1
- package/dist/esm/core/tools/manager.mjs +1 -1
- package/dist/esm/core/tools/ping.mjs +1 -1
- package/dist/esm/core/version-manager.mjs +19 -157
- package/dist/esm/core/version-manager.mjs.map +1 -1
- package/dist/esm/frame/auth.mjs +1 -1
- package/dist/esm/frame/b24.mjs +8 -2
- package/dist/esm/frame/b24.mjs.map +1 -1
- package/dist/esm/frame/dialog.mjs +1 -1
- package/dist/esm/frame/frame.mjs +1 -1
- package/dist/esm/frame/message/commands.mjs +1 -1
- package/dist/esm/frame/message/controller.mjs +17 -6
- package/dist/esm/frame/message/controller.mjs.map +1 -1
- package/dist/esm/frame/options.mjs +1 -1
- package/dist/esm/frame/parent.mjs +1 -1
- package/dist/esm/frame/placement.mjs +1 -1
- package/dist/esm/frame/slider.mjs +1 -1
- package/dist/esm/helper/abstract-helper.mjs +1 -1
- package/dist/esm/helper/app-manager.mjs +1 -1
- package/dist/esm/helper/currency-manager.mjs +1 -1
- package/dist/esm/helper/helper-manager.mjs +1 -1
- package/dist/esm/helper/license-manager.mjs +1 -1
- package/dist/esm/helper/options-manager.mjs +1 -1
- package/dist/esm/helper/payment-manager.mjs +1 -1
- package/dist/esm/helper/profile-manager.mjs +1 -1
- package/dist/esm/helper/use-b24-helper.mjs +1 -1
- package/dist/esm/hook/auth.mjs +1 -1
- package/dist/esm/hook/b24.mjs +3 -3
- package/dist/esm/hook/b24.mjs.map +1 -1
- package/dist/esm/index.d.mts +412 -39
- package/dist/esm/index.d.ts +412 -39
- package/dist/esm/index.mjs +3 -1
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/loader-b24frame.mjs +1 -1
- package/dist/esm/logger/abstract-logger.mjs +1 -1
- package/dist/esm/logger/browser.mjs +1 -1
- package/dist/esm/logger/formatter/abstract-formatter.mjs +1 -1
- package/dist/esm/logger/formatter/json-formatter.mjs +1 -1
- package/dist/esm/logger/formatter/line-formatter.mjs +1 -1
- package/dist/esm/logger/formatter/telegram-formatter.mjs +1 -1
- package/dist/esm/logger/handler/abstract-handler.mjs +1 -1
- package/dist/esm/logger/handler/consola-adapter.mjs +1 -1
- package/dist/esm/logger/handler/console-handler.mjs +1 -1
- package/dist/esm/logger/handler/console-v2-handler.mjs +1 -1
- package/dist/esm/logger/handler/memory-handler.mjs +1 -1
- package/dist/esm/logger/handler/stream-handler.mjs +1 -1
- package/dist/esm/logger/handler/telegram-handler.mjs +1 -1
- package/dist/esm/logger/handler/winston-adapter.mjs +1 -1
- package/dist/esm/logger/logger-factory.mjs +1 -1
- package/dist/esm/logger/logger.mjs +1 -1
- package/dist/esm/logger/null-logger.mjs +1 -1
- package/dist/esm/logger/processor/memory-usage-processor.mjs +1 -1
- package/dist/esm/logger/processor/pid-processor.mjs +1 -1
- package/dist/esm/oauth/auth.mjs +13 -16
- package/dist/esm/oauth/auth.mjs.map +1 -1
- package/dist/esm/oauth/b24.mjs +1 -1
- package/dist/esm/oauth/refresh-token-error.mjs +1 -1
- package/dist/esm/pullClient/abstract-connector.mjs +1 -1
- package/dist/esm/pullClient/channel-manager.mjs +1 -1
- package/dist/esm/pullClient/client.mjs +141 -30
- package/dist/esm/pullClient/client.mjs.map +1 -1
- package/dist/esm/pullClient/errors.mjs +1 -1
- package/dist/esm/pullClient/json-rpc.mjs +5 -4
- package/dist/esm/pullClient/json-rpc.mjs.map +1 -1
- package/dist/esm/pullClient/long-polling-connector.mjs +1 -1
- package/dist/esm/pullClient/protobuf/index.mjs +1 -1
- package/dist/esm/pullClient/protobuf/model.mjs +1 -1
- package/dist/esm/pullClient/protobuf/protobuf.mjs +1 -1
- package/dist/esm/pullClient/shared-config.mjs +1 -1
- package/dist/esm/pullClient/storage-manager.mjs +1 -1
- package/dist/esm/pullClient/web-socket-connector.mjs +1 -1
- package/dist/esm/tools/batch-ref-v3.mjs +52 -0
- package/dist/esm/tools/batch-ref-v3.mjs.map +1 -0
- package/dist/esm/tools/browser.mjs +1 -1
- package/dist/esm/tools/environment.mjs +1 -1
- package/dist/esm/tools/filter-v3.mjs +137 -0
- package/dist/esm/tools/filter-v3.mjs.map +1 -0
- package/dist/esm/tools/formatters/iban.mjs +1 -1
- package/dist/esm/tools/formatters/numbers.mjs +1 -1
- package/dist/esm/tools/index.mjs +1 -1
- package/dist/esm/tools/scroll-size.mjs +1 -1
- package/dist/esm/tools/text.mjs +1 -1
- package/dist/esm/tools/type.mjs +1 -1
- package/dist/esm/tools/use-formatters.mjs +1 -1
- package/dist/esm/tools/uuidv7.mjs +1 -1
- package/dist/esm/types/b24-helper.mjs +1 -1
- package/dist/esm/types/b24.mjs +1 -1
- package/dist/esm/types/bizproc/index.mjs +1 -1
- package/dist/esm/types/catalog/index.mjs +1 -1
- package/dist/esm/types/common.mjs +1 -1
- package/dist/esm/types/crm/entity-type.mjs +1 -1
- package/dist/esm/types/crm/productrow.mjs +1 -1
- package/dist/esm/types/logger.mjs +1 -1
- package/dist/esm/types/pull.mjs +1 -1
- package/dist/umd/index.js +1258 -719
- package/dist/umd/index.js.map +1 -1
- package/dist/umd/index.min.js +26 -26
- package/dist/umd/index.min.js.map +1 -1
- package/dist/umd/package.json +3 -0
- package/package.json +12 -4
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @package @bitrix24/b24jssdk
|
|
3
|
+
* @version 2.0.0
|
|
4
|
+
* @copyright (c) 2026 Bitrix24
|
|
5
|
+
* @license MIT
|
|
6
|
+
* @see https://github.com/bitrix24/b24jssdk
|
|
7
|
+
* @see https://bitrix24.github.io/b24jssdk/
|
|
8
|
+
*/
|
|
9
|
+
'use strict';
|
|
10
|
+
|
|
11
|
+
const abstractB24 = require('../core/abstract-b24.cjs');
|
|
12
|
+
const v2 = require('../core/http/v2.cjs');
|
|
13
|
+
const v3 = require('../core/http/v3.cjs');
|
|
14
|
+
const frame = require('./frame.cjs');
|
|
15
|
+
const auth = require('./auth.cjs');
|
|
16
|
+
const parent = require('./parent.cjs');
|
|
17
|
+
const options = require('./options.cjs');
|
|
18
|
+
const dialog = require('./dialog.cjs');
|
|
19
|
+
const slider = require('./slider.cjs');
|
|
20
|
+
const placement = require('./placement.cjs');
|
|
21
|
+
const controller = require('./message/controller.cjs');
|
|
22
|
+
const commands = require('./message/commands.cjs');
|
|
23
|
+
|
|
24
|
+
var __defProp = Object.defineProperty;
|
|
25
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
26
|
+
class B24Frame extends abstractB24.AbstractB24 {
|
|
27
|
+
static {
|
|
28
|
+
__name(this, "B24Frame");
|
|
29
|
+
}
|
|
30
|
+
#isInstallMode = false;
|
|
31
|
+
#isFirstRun = false;
|
|
32
|
+
#appFrame;
|
|
33
|
+
#messageManager;
|
|
34
|
+
#authManager;
|
|
35
|
+
#parentManager;
|
|
36
|
+
#optionsManager;
|
|
37
|
+
#dialogManager;
|
|
38
|
+
#sliderManager;
|
|
39
|
+
#placementManager;
|
|
40
|
+
#restrictionParams;
|
|
41
|
+
// region Init ////
|
|
42
|
+
constructor(queryParams, options$1) {
|
|
43
|
+
super();
|
|
44
|
+
this.#restrictionParams = options$1?.restrictionParams;
|
|
45
|
+
this.#appFrame = new frame.AppFrame(queryParams);
|
|
46
|
+
this.#messageManager = new controller.MessageManager(this.#appFrame);
|
|
47
|
+
this.#messageManager.subscribe();
|
|
48
|
+
this.#authManager = new auth.AuthManager(
|
|
49
|
+
this.#appFrame,
|
|
50
|
+
this.#messageManager
|
|
51
|
+
);
|
|
52
|
+
this.#parentManager = new parent.ParentManager(this.#messageManager);
|
|
53
|
+
this.#optionsManager = new options.OptionsManager(this.#messageManager);
|
|
54
|
+
this.#dialogManager = new dialog.DialogManager(this.#messageManager);
|
|
55
|
+
this.#sliderManager = new slider.SliderManager(
|
|
56
|
+
this.#appFrame,
|
|
57
|
+
this.#messageManager
|
|
58
|
+
);
|
|
59
|
+
this.#placementManager = new placement.PlacementManager(this.#messageManager);
|
|
60
|
+
this._isInit = false;
|
|
61
|
+
}
|
|
62
|
+
setLogger(logger) {
|
|
63
|
+
super.setLogger(logger);
|
|
64
|
+
this.#messageManager.setLogger(this.getLogger());
|
|
65
|
+
}
|
|
66
|
+
get isFirstRun() {
|
|
67
|
+
this._ensureInitialized();
|
|
68
|
+
return this.#isFirstRun;
|
|
69
|
+
}
|
|
70
|
+
get isInstallMode() {
|
|
71
|
+
this._ensureInitialized();
|
|
72
|
+
return this.#isInstallMode;
|
|
73
|
+
}
|
|
74
|
+
get parent() {
|
|
75
|
+
this._ensureInitialized();
|
|
76
|
+
return this.#parentManager;
|
|
77
|
+
}
|
|
78
|
+
get auth() {
|
|
79
|
+
this._ensureInitialized();
|
|
80
|
+
return this.#authManager;
|
|
81
|
+
}
|
|
82
|
+
get slider() {
|
|
83
|
+
this._ensureInitialized();
|
|
84
|
+
return this.#sliderManager;
|
|
85
|
+
}
|
|
86
|
+
get placement() {
|
|
87
|
+
this._ensureInitialized();
|
|
88
|
+
return this.#placementManager;
|
|
89
|
+
}
|
|
90
|
+
get options() {
|
|
91
|
+
this._ensureInitialized();
|
|
92
|
+
return this.#optionsManager;
|
|
93
|
+
}
|
|
94
|
+
get dialog() {
|
|
95
|
+
this._ensureInitialized();
|
|
96
|
+
return this.#dialogManager;
|
|
97
|
+
}
|
|
98
|
+
async init() {
|
|
99
|
+
const data = await this.#messageManager.send(commands.MessageCommands.getInitData, {});
|
|
100
|
+
this.getLogger().debug("init data", {
|
|
101
|
+
PLACEMENT: data.PLACEMENT,
|
|
102
|
+
LANG: data.LANG,
|
|
103
|
+
INSTALL: data.INSTALL,
|
|
104
|
+
IS_ADMIN: data.IS_ADMIN,
|
|
105
|
+
FIRST_RUN: data.FIRST_RUN
|
|
106
|
+
});
|
|
107
|
+
this.#appFrame.initData(data);
|
|
108
|
+
this.#authManager.initData(data);
|
|
109
|
+
this.#placementManager.initData(data);
|
|
110
|
+
this.#optionsManager.initData(data);
|
|
111
|
+
this.#isInstallMode = data.INSTALL;
|
|
112
|
+
this.#isFirstRun = data.FIRST_RUN;
|
|
113
|
+
this._httpV2 = new v2.HttpV2(this.#authManager, this._getHttpOptions(), this.#restrictionParams);
|
|
114
|
+
this._httpV3 = new v3.HttpV3(this.#authManager, this._getHttpOptions(), this.#restrictionParams);
|
|
115
|
+
this._isInit = true;
|
|
116
|
+
if (this.#isFirstRun) {
|
|
117
|
+
return this.#messageManager.send(commands.MessageCommands.setInstall, { install: true });
|
|
118
|
+
}
|
|
119
|
+
return Promise.resolve();
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Destructor.
|
|
123
|
+
* Removes an event subscription
|
|
124
|
+
*/
|
|
125
|
+
destroy() {
|
|
126
|
+
this.#messageManager.unsubscribe();
|
|
127
|
+
super.destroy();
|
|
128
|
+
}
|
|
129
|
+
// endregion ////
|
|
130
|
+
// region Core ////
|
|
131
|
+
/**
|
|
132
|
+
* Signals that the installer or application setup has finished running.
|
|
133
|
+
*
|
|
134
|
+
* @link https://apidocs.bitrix24.com/sdk/bx24-js-sdk/system-functions/bx24-install-finish.html
|
|
135
|
+
*/
|
|
136
|
+
async installFinish() {
|
|
137
|
+
if (!this.isInstallMode) {
|
|
138
|
+
return Promise.reject(new Error("Application was previously installed. You cannot call installFinish"));
|
|
139
|
+
}
|
|
140
|
+
return this.#messageManager.send(commands.MessageCommands.setInstallFinish, {});
|
|
141
|
+
}
|
|
142
|
+
// endregion ////
|
|
143
|
+
// region Get ////
|
|
144
|
+
/**
|
|
145
|
+
* @inheritDoc
|
|
146
|
+
*/
|
|
147
|
+
getTargetOrigin() {
|
|
148
|
+
this._ensureInitialized();
|
|
149
|
+
return this.#authManager.getTargetOrigin();
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* @inheritDoc
|
|
153
|
+
*/
|
|
154
|
+
getTargetOriginWithPath() {
|
|
155
|
+
this._ensureInitialized();
|
|
156
|
+
return this.#authManager.getTargetOriginWithPath();
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* Returns the sid of the application relative to the parent window like this `9c33468728e1d2c8c97562475edfd96`
|
|
160
|
+
*/
|
|
161
|
+
getAppSid() {
|
|
162
|
+
this._ensureInitialized();
|
|
163
|
+
return this.#appFrame.getAppSid();
|
|
164
|
+
}
|
|
165
|
+
/**
|
|
166
|
+
* Returns the localization of the B24 interface
|
|
167
|
+
*
|
|
168
|
+
* @link https://apidocs.bitrix24.com/sdk/bx24-js-sdk/additional-functions/bx24-get-lang.html
|
|
169
|
+
*/
|
|
170
|
+
getLang() {
|
|
171
|
+
this._ensureInitialized();
|
|
172
|
+
return this.#appFrame.getLang();
|
|
173
|
+
}
|
|
174
|
+
// endregion ////
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
exports.B24Frame = B24Frame;
|
|
178
|
+
//# sourceMappingURL=b24.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"b24.cjs","sources":["../../../src/frame/b24.ts"],"sourcesContent":["import type { LoggerInterface } from '../logger'\nimport type { B24LangList } from '../core/language/list'\nimport type { AuthActions, MessageInitData, B24FrameQueryParams } from '../types/auth'\nimport type { RestrictionParams } from '../types/limiters'\nimport type { TypeB24, ApiVersion } from '../types/b24'\nimport { AbstractB24 } from '../core/abstract-b24'\nimport { HttpV2 } from '../core/http/v2'\nimport { HttpV3 } from '../core/http/v3'\nimport { AppFrame } from './frame'\nimport { MessageManager, MessageCommands } from './message'\nimport { AuthManager } from './auth'\nimport { ParentManager } from './parent'\nimport { OptionsManager } from './options'\nimport { DialogManager } from './dialog'\nimport { SliderManager } from './slider'\nimport { PlacementManager } from './placement'\n\n/**\n * B24 Manager. Replacement api.bitrix24.com\n *\n * @link https://api.bitrix24.com/api/v1/\n * @link https://bitrix24.github.io/b24jssdk/docs/frame/\n * @see /bitrix/js/rest/applayout.js\n *\n * @todo add docs\n */\nexport class B24Frame extends AbstractB24 implements TypeB24 {\n #isInstallMode: boolean = false\n #isFirstRun: boolean = false\n\n readonly #appFrame: AppFrame\n readonly #messageManager: MessageManager\n readonly #authManager: AuthManager\n readonly #parentManager: ParentManager\n readonly #optionsManager: OptionsManager\n readonly #dialogManager: DialogManager\n readonly #sliderManager: SliderManager\n readonly #placementManager: PlacementManager\n\n readonly #restrictionParams: undefined | Partial<RestrictionParams>\n\n // region Init ////\n constructor(\n queryParams: B24FrameQueryParams,\n options?: {\n restrictionParams?: Partial<RestrictionParams>\n }\n ) {\n super()\n\n this.#restrictionParams = options?.restrictionParams\n\n this.#appFrame = new AppFrame(queryParams)\n\n this.#messageManager = new MessageManager(this.#appFrame)\n this.#messageManager.subscribe()\n\n this.#authManager = new AuthManager(\n this.#appFrame,\n this.#messageManager\n )\n this.#parentManager = new ParentManager(this.#messageManager)\n this.#optionsManager = new OptionsManager(this.#messageManager)\n this.#dialogManager = new DialogManager(this.#messageManager)\n this.#sliderManager = new SliderManager(\n this.#appFrame,\n this.#messageManager\n )\n this.#placementManager = new PlacementManager(this.#messageManager)\n\n this._isInit = false\n }\n\n public override setLogger(logger: LoggerInterface): void {\n super.setLogger(logger)\n this.#messageManager.setLogger(this.getLogger())\n }\n\n get isFirstRun(): boolean {\n this._ensureInitialized()\n return this.#isFirstRun\n }\n\n get isInstallMode(): boolean {\n this._ensureInitialized()\n return this.#isInstallMode\n }\n\n get parent(): ParentManager {\n this._ensureInitialized()\n return this.#parentManager\n }\n\n override get auth(): AuthActions {\n this._ensureInitialized()\n return this.#authManager\n }\n\n get slider(): SliderManager {\n this._ensureInitialized()\n return this.#sliderManager\n }\n\n get placement(): PlacementManager {\n this._ensureInitialized()\n return this.#placementManager\n }\n\n get options(): OptionsManager {\n this._ensureInitialized()\n return this.#optionsManager\n }\n\n get dialog(): DialogManager {\n this._ensureInitialized()\n return this.#dialogManager\n }\n\n public override async init(): Promise<void> {\n const data: MessageInitData = await this.#messageManager.send(MessageCommands.getInitData, {})\n\n // Log only a fixed allowlist of known-safe scalar fields. The raw `data`\n // carries the bearer tokens AUTH_ID (access) / REFRESH_ID (refresh), the\n // MEMBER_ID portal identifier, and the app-defined APP_OPTIONS /\n // USER_OPTIONS / PLACEMENT_OPTIONS stores (which may hold developer-stored\n // secrets) — none of which must reach a wired logger sink (#43).\n this.getLogger().debug('init data', {\n PLACEMENT: data.PLACEMENT,\n LANG: data.LANG,\n INSTALL: data.INSTALL,\n IS_ADMIN: data.IS_ADMIN,\n FIRST_RUN: data.FIRST_RUN\n })\n\n this.#appFrame.initData(data)\n this.#authManager.initData(data)\n this.#placementManager.initData(data)\n this.#optionsManager.initData(data)\n\n this.#isInstallMode = data.INSTALL\n this.#isFirstRun = data.FIRST_RUN\n\n this._httpV2 = new HttpV2(this.#authManager, this._getHttpOptions(), this.#restrictionParams)\n this._httpV3 = new HttpV3(this.#authManager, this._getHttpOptions(), this.#restrictionParams)\n\n this._isInit = true\n\n /**\n * @memo Writes the fact of the 1st launch to `app_options`\n */\n if (this.#isFirstRun) {\n return this.#messageManager.send(MessageCommands.setInstall, { install: true })\n }\n\n return Promise.resolve()\n }\n\n /**\n * Destructor.\n * Removes an event subscription\n */\n public override destroy() {\n this.#messageManager.unsubscribe()\n super.destroy()\n }\n // endregion ////\n\n // region Core ////\n /**\n * Signals that the installer or application setup has finished running.\n *\n * @link https://apidocs.bitrix24.com/sdk/bx24-js-sdk/system-functions/bx24-install-finish.html\n */\n public async installFinish(): Promise<any> {\n if (!this.isInstallMode) {\n return Promise.reject(new Error('Application was previously installed. You cannot call installFinish'))\n }\n\n return this.#messageManager.send(MessageCommands.setInstallFinish, {})\n }\n // endregion ////\n\n // region Get ////\n /**\n * @inheritDoc\n */\n public override getTargetOrigin(): string {\n this._ensureInitialized()\n return this.#authManager.getTargetOrigin()\n }\n\n /**\n * @inheritDoc\n */\n public override getTargetOriginWithPath(): Map<ApiVersion, string> {\n this._ensureInitialized()\n return this.#authManager.getTargetOriginWithPath()\n }\n\n /**\n * Returns the sid of the application relative to the parent window like this `9c33468728e1d2c8c97562475edfd96`\n */\n public getAppSid(): string {\n this._ensureInitialized()\n return this.#appFrame.getAppSid()\n }\n\n /**\n * Returns the localization of the B24 interface\n *\n * @link https://apidocs.bitrix24.com/sdk/bx24-js-sdk/additional-functions/bx24-get-lang.html\n */\n public getLang(): B24LangList {\n this._ensureInitialized()\n return this.#appFrame.getLang()\n }\n // endregion ////\n}\n"],"names":["AbstractB24","options","AppFrame","MessageManager","AuthManager","ParentManager","OptionsManager","DialogManager","SliderManager","PlacementManager","MessageCommands","HttpV2","HttpV3"],"mappings":"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"}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @package @bitrix24/b24jssdk
|
|
3
|
+
* @version 2.0.0
|
|
4
|
+
* @copyright (c) 2026 Bitrix24
|
|
5
|
+
* @license MIT
|
|
6
|
+
* @see https://github.com/bitrix24/b24jssdk
|
|
7
|
+
* @see https://bitrix24.github.io/b24jssdk/
|
|
8
|
+
*/
|
|
9
|
+
'use strict';
|
|
10
|
+
|
|
11
|
+
const commands = require('./message/commands.cjs');
|
|
12
|
+
|
|
13
|
+
var __defProp = Object.defineProperty;
|
|
14
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
15
|
+
class DialogManager {
|
|
16
|
+
static {
|
|
17
|
+
__name(this, "DialogManager");
|
|
18
|
+
}
|
|
19
|
+
#messageManager;
|
|
20
|
+
constructor(messageManager) {
|
|
21
|
+
this.#messageManager = messageManager;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Method displays the standard single user selection dialog
|
|
25
|
+
* It only shows company employees
|
|
26
|
+
*
|
|
27
|
+
* @return {Promise<null|SelectedUser>}
|
|
28
|
+
*
|
|
29
|
+
* @link https://apidocs.bitrix24.com/sdk/bx24-js-sdk/system-dialogues/bx24-select-user.html
|
|
30
|
+
*/
|
|
31
|
+
async selectUser() {
|
|
32
|
+
return this.#messageManager.send(commands.MessageCommands.selectUser, {
|
|
33
|
+
mult: false
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Method displays the standard multiple user selection dialog
|
|
38
|
+
* It only shows company employees
|
|
39
|
+
*
|
|
40
|
+
* @return {Promise<SelectedUser[]>}
|
|
41
|
+
*
|
|
42
|
+
* @link https://apidocs.bitrix24.com/sdk/bx24-js-sdk/system-dialogues/bx24-select-users.html
|
|
43
|
+
*/
|
|
44
|
+
async selectUsers() {
|
|
45
|
+
return this.#messageManager.send(commands.MessageCommands.selectUser, {
|
|
46
|
+
mult: true
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Method displays a standard access permission selection dialog
|
|
51
|
+
*
|
|
52
|
+
* @param {string[]} blockedAccessPermissions
|
|
53
|
+
* @return {Promise<SelectedAccess[]>}
|
|
54
|
+
*
|
|
55
|
+
* @link https://apidocs.bitrix24.com/sdk/bx24-js-sdk/system-dialogues/bx24-select-access.html
|
|
56
|
+
*/
|
|
57
|
+
async selectAccess(blockedAccessPermissions = []) {
|
|
58
|
+
return this.#messageManager.send(commands.MessageCommands.selectAccess, {
|
|
59
|
+
value: blockedAccessPermissions
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Invokes the system dialog for selecting CRM entities
|
|
64
|
+
* (leads, contacts, companies, deals, quotes).
|
|
65
|
+
*
|
|
66
|
+
* The resolved `SelectedCRM` object contains a separate bucket per
|
|
67
|
+
* entity type. Each present bucket is a real `Array`, so consumers can
|
|
68
|
+
* use `.length`, `.map()`, `for..of`, etc. directly. Buckets for entity
|
|
69
|
+
* types that were not selected (or not requested via `entityType`) are
|
|
70
|
+
* left `undefined` rather than being set to an empty array.
|
|
71
|
+
*
|
|
72
|
+
* Note: the parent window historically returned each bucket as a
|
|
73
|
+
* `Record<string, SelectedCRMEntity>` (e.g. `{ 0: {...}, 1: {...} }`).
|
|
74
|
+
* The SDK normalizes that response to a real array before returning it.
|
|
75
|
+
*
|
|
76
|
+
* @param {SelectCRMParams} [params] - Filter and behavior options.
|
|
77
|
+
* - `entityType`: which entity types are shown in the dialog.
|
|
78
|
+
* - `multiple`: allow multiple selection (default `false`).
|
|
79
|
+
* - `value`: pre-selected entities (only applied when `multiple` is `true`).
|
|
80
|
+
* @return {Promise<SelectedCRM>} Resolves to an object whose properties
|
|
81
|
+
* (`lead`, `contact`, `company`, `deal`, `quote`) are arrays of
|
|
82
|
+
* {@link SelectedCRMEntity} objects.
|
|
83
|
+
*
|
|
84
|
+
* @link https://apidocs.bitrix24.com/sdk/bx24-js-sdk/system-dialogues/bx24-select-crm.html
|
|
85
|
+
*/
|
|
86
|
+
async selectCRM(params) {
|
|
87
|
+
const response = await this.#messageManager.send(commands.MessageCommands.selectCRM, {
|
|
88
|
+
entityType: params?.entityType,
|
|
89
|
+
multiple: params?.multiple,
|
|
90
|
+
value: params?.value
|
|
91
|
+
});
|
|
92
|
+
const result = {};
|
|
93
|
+
if (!response) {
|
|
94
|
+
return result;
|
|
95
|
+
}
|
|
96
|
+
const toArray = /* @__PURE__ */ __name((bucket) => {
|
|
97
|
+
if (bucket === void 0 || bucket === null) {
|
|
98
|
+
return void 0;
|
|
99
|
+
}
|
|
100
|
+
if (Array.isArray(bucket)) {
|
|
101
|
+
return bucket;
|
|
102
|
+
}
|
|
103
|
+
return Object.values(bucket);
|
|
104
|
+
}, "toArray");
|
|
105
|
+
const lead = toArray(response.lead);
|
|
106
|
+
if (lead) result.lead = lead;
|
|
107
|
+
const contact = toArray(response.contact);
|
|
108
|
+
if (contact) result.contact = contact;
|
|
109
|
+
const company = toArray(response.company);
|
|
110
|
+
if (company) result.company = company;
|
|
111
|
+
const deal = toArray(response.deal);
|
|
112
|
+
if (deal) result.deal = deal;
|
|
113
|
+
const quote = toArray(response.quote);
|
|
114
|
+
if (quote) result.quote = quote;
|
|
115
|
+
return result;
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
exports.DialogManager = DialogManager;
|
|
120
|
+
//# sourceMappingURL=dialog.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dialog.cjs","sources":["../../../src/frame/dialog.ts"],"sourcesContent":["import type { MessageManager } from './message'\nimport { MessageCommands } from './message'\nimport type { NumberString } from '../types/common'\n\nexport type SelectedUser = {\n /**\n * user identifier\n */\n id: NumberString\n\n /**\n * formatted username\n */\n name: string\n\n photo: string\n\n position: string\n\n url: string\n\n /**\n * The flag indicates that the selected user is a subordinate of the current user\n */\n sub: boolean\n\n /**\n * The flag indicates that the selected user is the manager of the current user\n */\n sup: boolean\n}\n\nexport type SelectedAccess = {\n /**\n * access permission identifier. Examples of identifiers:\n * - U1 — user with identifier 1\n * - IU1 — employees with identifier 1\n * - DR2 — all department and subdepartment employees with identifier 2\n * - D6 — all department employees with identifier 6\n * - G2 — group with identifier 2 (all visitors)\n * - SG4 — social network group with identifier 4\n * - AU — all authorized users\n * - CR — current user\n */\n id:\n | `AU`\n | `CR`\n | `U${number}`\n | `IU${number}`\n | `DR${number}`\n | `D${number}`\n | `G${number}`\n | `SG${number}`\n\n /**\n * name of the access permission\n */\n name: string\n}\n\nexport type SelectCRMParamsEntityType\n = | 'lead'\n | 'contact'\n | 'company'\n | 'deal'\n | 'quote'\n\nexport type SelectCRMParamsValue = {\n lead?: number[]\n contact?: number[]\n company?: number[]\n deal?: number[]\n quote?: number[]\n}\n\nexport type SelectCRMParams = {\n /**\n * Which types of objects to display in the dialog. Possible values:\n * - lead — Leads\n * - contact — Contacts\n * - company — Companies\n * - deal — Deals\n * - quote — Estimates\n */\n entityType: SelectCRMParamsEntityType[]\n\n /**\n * Whether multiple objects can be selected. Default is `false`\n */\n multiple: boolean\n\n /**\n * Which objects to initially add to the selected in the dialog. Works only if `multiple = true`\n */\n value?: SelectCRMParamsValue\n}\n\nexport type SelectedCRMEntity = {\n id: string\n type: SelectCRMParamsEntityType\n place: string\n title: string\n desc: string\n url: string\n}\n\nexport type SelectedCRM = {\n lead?: (SelectedCRMEntity & { id: `L_${number}` })[]\n contact?: (SelectedCRMEntity & { id: `C_${number}`, image: string })[]\n company?: (SelectedCRMEntity & { id: `CO_${number}`, image: string })[]\n deal?: (SelectedCRMEntity & { id: `D_${number}` })[]\n quote?: (SelectedCRMEntity & { id: `Q_${number}` })[]\n}\n\n/**\n * Select dialog manager\n *\n * @link https://apidocs.bitrix24.com/sdk/bx24-js-sdk/system-dialogues/index.html\n */\nexport class DialogManager {\n #messageManager: MessageManager\n\n constructor(messageManager: MessageManager) {\n this.#messageManager = messageManager\n }\n\n /**\n * Method displays the standard single user selection dialog\n * It only shows company employees\n *\n * @return {Promise<null|SelectedUser>}\n *\n * @link https://apidocs.bitrix24.com/sdk/bx24-js-sdk/system-dialogues/bx24-select-user.html\n */\n async selectUser(): Promise<null | SelectedUser> {\n return this.#messageManager.send(MessageCommands.selectUser, {\n mult: false\n })\n }\n\n /**\n * Method displays the standard multiple user selection dialog\n * It only shows company employees\n *\n * @return {Promise<SelectedUser[]>}\n *\n * @link https://apidocs.bitrix24.com/sdk/bx24-js-sdk/system-dialogues/bx24-select-users.html\n */\n async selectUsers(): Promise<SelectedUser[]> {\n return this.#messageManager.send(MessageCommands.selectUser, {\n mult: true\n })\n }\n\n /**\n * Method displays a standard access permission selection dialog\n *\n * @param {string[]} blockedAccessPermissions\n * @return {Promise<SelectedAccess[]>}\n *\n * @link https://apidocs.bitrix24.com/sdk/bx24-js-sdk/system-dialogues/bx24-select-access.html\n */\n async selectAccess(\n blockedAccessPermissions: string[] = []\n ): Promise<SelectedAccess[]> {\n return this.#messageManager.send(MessageCommands.selectAccess, {\n value: blockedAccessPermissions\n })\n }\n\n /**\n * Invokes the system dialog for selecting CRM entities\n * (leads, contacts, companies, deals, quotes).\n *\n * The resolved `SelectedCRM` object contains a separate bucket per\n * entity type. Each present bucket is a real `Array`, so consumers can\n * use `.length`, `.map()`, `for..of`, etc. directly. Buckets for entity\n * types that were not selected (or not requested via `entityType`) are\n * left `undefined` rather than being set to an empty array.\n *\n * Note: the parent window historically returned each bucket as a\n * `Record<string, SelectedCRMEntity>` (e.g. `{ 0: {...}, 1: {...} }`).\n * The SDK normalizes that response to a real array before returning it.\n *\n * @param {SelectCRMParams} [params] - Filter and behavior options.\n * - `entityType`: which entity types are shown in the dialog.\n * - `multiple`: allow multiple selection (default `false`).\n * - `value`: pre-selected entities (only applied when `multiple` is `true`).\n * @return {Promise<SelectedCRM>} Resolves to an object whose properties\n * (`lead`, `contact`, `company`, `deal`, `quote`) are arrays of\n * {@link SelectedCRMEntity} objects.\n *\n * @link https://apidocs.bitrix24.com/sdk/bx24-js-sdk/system-dialogues/bx24-select-crm.html\n */\n async selectCRM(params?: SelectCRMParams): Promise<SelectedCRM> {\n const response = await this.#messageManager.send(MessageCommands.selectCRM, {\n entityType: params?.entityType,\n multiple: params?.multiple,\n value: params?.value\n }) as Partial<Record<SelectCRMParamsEntityType, unknown>> | null | undefined\n\n // The parent window returns each entity bucket as a Record<string, SelectedCRMEntity>\n // (e.g. { 0: {...}, 1: {...} }) rather than a real array. Normalize to arrays so\n // the runtime shape matches the documented `SelectedCRM` types.\n const result: SelectedCRM = {}\n if (!response) {\n return result\n }\n\n const toArray = <T>(bucket: unknown): T[] | undefined => {\n if (bucket === undefined || bucket === null) {\n return undefined\n }\n if (Array.isArray(bucket)) {\n return bucket as T[]\n }\n return Object.values(bucket as Record<string, T>)\n }\n\n const lead = toArray<SelectedCRMEntity & { id: `L_${number}` }>(response.lead)\n if (lead) result.lead = lead\n\n const contact = toArray<SelectedCRMEntity & { id: `C_${number}`, image: string }>(response.contact)\n if (contact) result.contact = contact\n\n const company = toArray<SelectedCRMEntity & { id: `CO_${number}`, image: string }>(response.company)\n if (company) result.company = company\n\n const deal = toArray<SelectedCRMEntity & { id: `D_${number}` }>(response.deal)\n if (deal) result.deal = deal\n\n const quote = toArray<SelectedCRMEntity & { id: `Q_${number}` }>(response.quote)\n if (quote) result.quote = quote\n\n return result\n }\n}\n"],"names":["MessageCommands"],"mappings":";;;;;;;;;;;;;;AAuHO,MAAM,aAAA,CAAc;AAAA,EAvH3B;AAuH2B,IAAA,MAAA,CAAA,IAAA,EAAA,eAAA,CAAA;AAAA;AAAA,EACzB,eAAA;AAAA,EAEA,YAAY,cAAA,EAAgC;AAC1C,IAAA,IAAA,CAAK,eAAA,GAAkB,cAAA;AAAA,EACzB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,MAAM,UAAA,GAA2C;AAC/C,IAAA,OAAO,IAAA,CAAK,eAAA,CAAgB,IAAA,CAAKA,wBAAA,CAAgB,UAAA,EAAY;AAAA,MAC3D,IAAA,EAAM;AAAA,KACP,CAAA;AAAA,EACH;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,MAAM,WAAA,GAAuC;AAC3C,IAAA,OAAO,IAAA,CAAK,eAAA,CAAgB,IAAA,CAAKA,wBAAA,CAAgB,UAAA,EAAY;AAAA,MAC3D,IAAA,EAAM;AAAA,KACP,CAAA;AAAA,EACH;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,MAAM,YAAA,CACJ,wBAAA,GAAqC,EAAC,EACX;AAC3B,IAAA,OAAO,IAAA,CAAK,eAAA,CAAgB,IAAA,CAAKA,wBAAA,CAAgB,YAAA,EAAc;AAAA,MAC7D,KAAA,EAAO;AAAA,KACR,CAAA;AAAA,EACH;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EA0BA,MAAM,UAAU,MAAA,EAAgD;AAC9D,IAAA,MAAM,WAAW,MAAM,IAAA,CAAK,eAAA,CAAgB,IAAA,CAAKA,yBAAgB,SAAA,EAAW;AAAA,MAC1E,YAAY,MAAA,EAAQ,UAAA;AAAA,MACpB,UAAU,MAAA,EAAQ,QAAA;AAAA,MAClB,OAAO,MAAA,EAAQ;AAAA,KAChB,CAAA;AAKD,IAAA,MAAM,SAAsB,EAAC;AAC7B,IAAA,IAAI,CAAC,QAAA,EAAU;AACb,MAAA,OAAO,MAAA;AAAA,IACT;AAEA,IAAA,MAAM,OAAA,2BAAc,MAAA,KAAqC;AACvD,MAAA,IAAI,MAAA,KAAW,MAAA,IAAa,MAAA,KAAW,IAAA,EAAM;AAC3C,QAAA,OAAO,MAAA;AAAA,MACT;AACA,MAAA,IAAI,KAAA,CAAM,OAAA,CAAQ,MAAM,CAAA,EAAG;AACzB,QAAA,OAAO,MAAA;AAAA,MACT;AACA,MAAA,OAAO,MAAA,CAAO,OAAO,MAA2B,CAAA;AAAA,IAClD,CAAA,EARgB,SAAA,CAAA;AAUhB,IAAA,MAAM,IAAA,GAAO,OAAA,CAAmD,QAAA,CAAS,IAAI,CAAA;AAC7E,IAAA,IAAI,IAAA,SAAa,IAAA,GAAO,IAAA;AAExB,IAAA,MAAM,OAAA,GAAU,OAAA,CAAkE,QAAA,CAAS,OAAO,CAAA;AAClG,IAAA,IAAI,OAAA,SAAgB,OAAA,GAAU,OAAA;AAE9B,IAAA,MAAM,OAAA,GAAU,OAAA,CAAmE,QAAA,CAAS,OAAO,CAAA;AACnG,IAAA,IAAI,OAAA,SAAgB,OAAA,GAAU,OAAA;AAE9B,IAAA,MAAM,IAAA,GAAO,OAAA,CAAmD,QAAA,CAAS,IAAI,CAAA;AAC7E,IAAA,IAAI,IAAA,SAAa,IAAA,GAAO,IAAA;AAExB,IAAA,MAAM,KAAA,GAAQ,OAAA,CAAmD,QAAA,CAAS,KAAK,CAAA;AAC/E,IAAA,IAAI,KAAA,SAAc,KAAA,GAAQ,KAAA;AAE1B,IAAA,OAAO,MAAA;AAAA,EACT;AACF;;;;"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @package @bitrix24/b24jssdk
|
|
3
|
+
* @version 2.0.0
|
|
4
|
+
* @copyright (c) 2026 Bitrix24
|
|
5
|
+
* @license MIT
|
|
6
|
+
* @see https://github.com/bitrix24/b24jssdk
|
|
7
|
+
* @see https://bitrix24.github.io/b24jssdk/
|
|
8
|
+
*/
|
|
9
|
+
'use strict';
|
|
10
|
+
|
|
11
|
+
const list = require('../core/language/list.cjs');
|
|
12
|
+
const b24 = require('../types/b24.cjs');
|
|
13
|
+
|
|
14
|
+
var __defProp = Object.defineProperty;
|
|
15
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
16
|
+
class AppFrame {
|
|
17
|
+
static {
|
|
18
|
+
__name(this, "AppFrame");
|
|
19
|
+
}
|
|
20
|
+
#domain = "";
|
|
21
|
+
#protocol = true;
|
|
22
|
+
#appSid = null;
|
|
23
|
+
#path = null;
|
|
24
|
+
#lang = null;
|
|
25
|
+
#b24TargetRest;
|
|
26
|
+
#b24Target;
|
|
27
|
+
#b24TargetRestWithPath;
|
|
28
|
+
constructor(queryParams) {
|
|
29
|
+
if (queryParams.DOMAIN) {
|
|
30
|
+
this.#domain = queryParams.DOMAIN;
|
|
31
|
+
this.#domain = this.#domain.replace(/:(80|443)$/, "");
|
|
32
|
+
}
|
|
33
|
+
this.#protocol = queryParams.PROTOCOL === true;
|
|
34
|
+
if (queryParams.LANG) {
|
|
35
|
+
this.#lang = queryParams.LANG;
|
|
36
|
+
}
|
|
37
|
+
if (queryParams.APP_SID) {
|
|
38
|
+
this.#appSid = queryParams.APP_SID;
|
|
39
|
+
}
|
|
40
|
+
this.#b24TargetRestWithPath = /* @__PURE__ */ new Map();
|
|
41
|
+
this.#b24Target = `${this.#protocol ? "https" : "http"}://${this.#domain}`;
|
|
42
|
+
this.#b24TargetRest = `${this.#b24Target}/rest`;
|
|
43
|
+
this.#b24TargetRestWithPath.set(b24.ApiVersion.v2, `${this.#b24TargetRest}`);
|
|
44
|
+
this.#b24TargetRestWithPath.set(b24.ApiVersion.v3, `${this.#b24TargetRest}/api`);
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Initializes the data received from the parent window message.
|
|
48
|
+
* @param data
|
|
49
|
+
*/
|
|
50
|
+
initData(data) {
|
|
51
|
+
if (!this.#domain) {
|
|
52
|
+
this.#domain = data.DOMAIN;
|
|
53
|
+
}
|
|
54
|
+
if (!this.#path) {
|
|
55
|
+
this.#path = data.PATH;
|
|
56
|
+
}
|
|
57
|
+
if (!this.#lang) {
|
|
58
|
+
this.#lang = data.LANG;
|
|
59
|
+
}
|
|
60
|
+
this.#protocol = Number.parseInt(data.PROTOCOL) === 1;
|
|
61
|
+
this.#domain = this.#domain.replace(/:(80|443)$/, "");
|
|
62
|
+
this.#b24Target = `${this.#protocol ? "https" : "http"}://${this.#domain}`;
|
|
63
|
+
this.#b24TargetRest = `${this.#b24Target}/rest`;
|
|
64
|
+
this.#b24TargetRestWithPath.set(b24.ApiVersion.v2, `${this.#b24TargetRest}`);
|
|
65
|
+
this.#b24TargetRestWithPath.set(b24.ApiVersion.v3, `${this.#b24TargetRest}/api`);
|
|
66
|
+
return this;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Returns the sid of the application relative to the parent window like this `9c33468728e1d2c8c97562475edfd96`
|
|
70
|
+
*/
|
|
71
|
+
getAppSid() {
|
|
72
|
+
if (null === this.#appSid) {
|
|
73
|
+
throw new Error(`Not init appSid`);
|
|
74
|
+
}
|
|
75
|
+
return this.#appSid;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Get the account address BX24 (https://your_domain.bitrix24.com)
|
|
79
|
+
*/
|
|
80
|
+
getTargetOrigin() {
|
|
81
|
+
return this.#b24Target;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Get the account address BX24 with path
|
|
85
|
+
* - ver2 `https://your_domain.bitrix24.com/rest/`
|
|
86
|
+
* - ver3` https://your_domain.bitrix24.com/rest/api/`
|
|
87
|
+
*/
|
|
88
|
+
getTargetOriginWithPath() {
|
|
89
|
+
return this.#b24TargetRestWithPath;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Returns the localization of the B24 interface
|
|
93
|
+
* @return {B24LangList} - default `B24LangList.en`
|
|
94
|
+
*
|
|
95
|
+
* @link https://apidocs.bitrix24.com/sdk/bx24-js-sdk/additional-functions/bx24-get-lang.html
|
|
96
|
+
*/
|
|
97
|
+
getLang() {
|
|
98
|
+
return this.#lang || list.B24LangList.en;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
exports.AppFrame = AppFrame;
|
|
103
|
+
//# sourceMappingURL=frame.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"frame.cjs","sources":["../../../src/frame/frame.ts"],"sourcesContent":["import type { B24FrameQueryParams, MessageInitData } from '../types/auth'\nimport { B24LangList } from '../core/language/list'\nimport { ApiVersion } from '../types/b24'\n\n/**\n * Application Frame Data Manager\n */\nexport class AppFrame {\n #domain: string = ''\n #protocol: boolean = true\n #appSid: null | string = null\n #path: null | string = null\n #lang: null | string = null\n #b24TargetRest: string\n #b24Target: string\n readonly #b24TargetRestWithPath: Map<ApiVersion, string>\n\n constructor(\n queryParams: B24FrameQueryParams\n ) {\n if (queryParams.DOMAIN) {\n this.#domain = queryParams.DOMAIN\n this.#domain = this.#domain.replace(/:(80|443)$/, '')\n }\n\n this.#protocol = queryParams.PROTOCOL === true\n\n if (queryParams.LANG) {\n this.#lang = queryParams.LANG\n }\n\n if (queryParams.APP_SID) {\n this.#appSid = queryParams.APP_SID\n }\n\n this.#b24TargetRestWithPath = new Map()\n\n this.#b24Target = `${this.#protocol ? 'https' : 'http'}://${this.#domain}`\n this.#b24TargetRest = `${this.#b24Target}/rest`\n\n this.#b24TargetRestWithPath.set(ApiVersion.v2, `${this.#b24TargetRest}`)\n this.#b24TargetRestWithPath.set(ApiVersion.v3, `${this.#b24TargetRest}/api`)\n }\n\n /**\n * Initializes the data received from the parent window message.\n * @param data\n */\n initData(data: MessageInitData): AppFrame {\n if (!this.#domain) {\n this.#domain = data.DOMAIN\n }\n\n if (!this.#path) {\n this.#path = data.PATH\n }\n\n if (!this.#lang) {\n this.#lang = data.LANG\n }\n\n this.#protocol = Number.parseInt(data.PROTOCOL) === 1\n this.#domain = this.#domain.replace(/:(80|443)$/, '')\n\n this.#b24Target = `${this.#protocol ? 'https' : 'http'}://${this.#domain}`\n this.#b24TargetRest = `${this.#b24Target}/rest`\n\n this.#b24TargetRestWithPath.set(ApiVersion.v2, `${this.#b24TargetRest}`)\n this.#b24TargetRestWithPath.set(ApiVersion.v3, `${this.#b24TargetRest}/api`)\n\n return this\n }\n\n /**\n * Returns the sid of the application relative to the parent window like this `9c33468728e1d2c8c97562475edfd96`\n */\n getAppSid(): string {\n if (null === this.#appSid) {\n throw new Error(`Not init appSid`)\n }\n\n return this.#appSid\n }\n\n /**\n * Get the account address BX24 (https://your_domain.bitrix24.com)\n */\n getTargetOrigin(): string {\n return this.#b24Target\n }\n\n /**\n * Get the account address BX24 with path\n * - ver2 `https://your_domain.bitrix24.com/rest/`\n * - ver3` https://your_domain.bitrix24.com/rest/api/`\n */\n getTargetOriginWithPath(): Map<ApiVersion, string> {\n return this.#b24TargetRestWithPath\n }\n\n /**\n * Returns the localization of the B24 interface\n * @return {B24LangList} - default `B24LangList.en`\n *\n * @link https://apidocs.bitrix24.com/sdk/bx24-js-sdk/additional-functions/bx24-get-lang.html\n */\n getLang(): B24LangList {\n return (this.#lang as B24LangList) || B24LangList.en\n }\n}\n"],"names":["ApiVersion","B24LangList"],"mappings":"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"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @package @bitrix24/b24jssdk
|
|
3
|
+
* @version 2.0.0
|
|
4
|
+
* @copyright (c) 2026 Bitrix24
|
|
5
|
+
* @license MIT
|
|
6
|
+
* @see https://github.com/bitrix24/b24jssdk
|
|
7
|
+
* @see https://bitrix24.github.io/b24jssdk/
|
|
8
|
+
*/
|
|
9
|
+
'use strict';
|
|
10
|
+
|
|
11
|
+
var MessageCommands = /* @__PURE__ */ ((MessageCommands2) => {
|
|
12
|
+
MessageCommands2["getInitData"] = "getInitData";
|
|
13
|
+
MessageCommands2["setInstallFinish"] = "setInstallFinish";
|
|
14
|
+
MessageCommands2["setInstall"] = "setInstall";
|
|
15
|
+
MessageCommands2["refreshAuth"] = "refreshAuth";
|
|
16
|
+
MessageCommands2["setAppOption"] = "setAppOption";
|
|
17
|
+
MessageCommands2["setUserOption"] = "setUserOption";
|
|
18
|
+
MessageCommands2["resizeWindow"] = "resizeWindow";
|
|
19
|
+
MessageCommands2["reloadWindow"] = "reloadWindow";
|
|
20
|
+
MessageCommands2["setTitle"] = "setTitle";
|
|
21
|
+
MessageCommands2["setScroll"] = "setScroll";
|
|
22
|
+
MessageCommands2["openApplication"] = "openApplication";
|
|
23
|
+
MessageCommands2["closeApplication"] = "closeApplication";
|
|
24
|
+
MessageCommands2["openPath"] = "openPath";
|
|
25
|
+
MessageCommands2["imCallTo"] = "imCallTo";
|
|
26
|
+
MessageCommands2["imPhoneTo"] = "imPhoneTo";
|
|
27
|
+
MessageCommands2["imOpenMessenger"] = "imOpenMessenger";
|
|
28
|
+
MessageCommands2["imOpenHistory"] = "imOpenHistory";
|
|
29
|
+
MessageCommands2["selectUser"] = "selectUser";
|
|
30
|
+
MessageCommands2["selectAccess"] = "selectAccess";
|
|
31
|
+
MessageCommands2["selectCRM"] = "selectCRM";
|
|
32
|
+
MessageCommands2["showAppForm"] = "showAppForm";
|
|
33
|
+
MessageCommands2["getInterface"] = "getInterface";
|
|
34
|
+
MessageCommands2["placementBindEvent"] = "placementBindEvent";
|
|
35
|
+
return MessageCommands2;
|
|
36
|
+
})(MessageCommands || {});
|
|
37
|
+
|
|
38
|
+
exports.MessageCommands = MessageCommands;
|
|
39
|
+
//# sourceMappingURL=commands.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commands.cjs","sources":["../../../../src/frame/message/commands.ts"],"sourcesContent":["/**\n * List of commands for the B24 parent window\n */\nexport enum MessageCommands {\n getInitData = 'getInitData',\n setInstallFinish = 'setInstallFinish',\n setInstall = 'setInstall',\n refreshAuth = 'refreshAuth',\n setAppOption = 'setAppOption',\n setUserOption = 'setUserOption',\n resizeWindow = 'resizeWindow',\n reloadWindow = 'reloadWindow',\n setTitle = 'setTitle',\n setScroll = 'setScroll',\n openApplication = 'openApplication',\n closeApplication = 'closeApplication',\n openPath = 'openPath',\n imCallTo = 'imCallTo',\n imPhoneTo = 'imPhoneTo',\n imOpenMessenger = 'imOpenMessenger',\n imOpenHistory = 'imOpenHistory',\n selectUser = 'selectUser',\n selectAccess = 'selectAccess',\n selectCRM = 'selectCRM',\n /**\n * @memo this not work. Need test\n */\n showAppForm = 'showAppForm',\n getInterface = 'getInterface',\n placementBindEvent = 'placementBindEvent'\n}\n"],"names":["MessageCommands"],"mappings":";;;;;;;;;;AAGO,IAAK,eAAA,qBAAAA,gBAAAA,KAAL;AACL,EAAAA,iBAAA,aAAA,CAAA,GAAc,aAAA;AACd,EAAAA,iBAAA,kBAAA,CAAA,GAAmB,kBAAA;AACnB,EAAAA,iBAAA,YAAA,CAAA,GAAa,YAAA;AACb,EAAAA,iBAAA,aAAA,CAAA,GAAc,aAAA;AACd,EAAAA,iBAAA,cAAA,CAAA,GAAe,cAAA;AACf,EAAAA,iBAAA,eAAA,CAAA,GAAgB,eAAA;AAChB,EAAAA,iBAAA,cAAA,CAAA,GAAe,cAAA;AACf,EAAAA,iBAAA,cAAA,CAAA,GAAe,cAAA;AACf,EAAAA,iBAAA,UAAA,CAAA,GAAW,UAAA;AACX,EAAAA,iBAAA,WAAA,CAAA,GAAY,WAAA;AACZ,EAAAA,iBAAA,iBAAA,CAAA,GAAkB,iBAAA;AAClB,EAAAA,iBAAA,kBAAA,CAAA,GAAmB,kBAAA;AACnB,EAAAA,iBAAA,UAAA,CAAA,GAAW,UAAA;AACX,EAAAA,iBAAA,UAAA,CAAA,GAAW,UAAA;AACX,EAAAA,iBAAA,WAAA,CAAA,GAAY,WAAA;AACZ,EAAAA,iBAAA,iBAAA,CAAA,GAAkB,iBAAA;AAClB,EAAAA,iBAAA,eAAA,CAAA,GAAgB,eAAA;AAChB,EAAAA,iBAAA,YAAA,CAAA,GAAa,YAAA;AACb,EAAAA,iBAAA,cAAA,CAAA,GAAe,cAAA;AACf,EAAAA,iBAAA,WAAA,CAAA,GAAY,WAAA;AAIZ,EAAAA,iBAAA,aAAA,CAAA,GAAc,aAAA;AACd,EAAAA,iBAAA,cAAA,CAAA,GAAe,cAAA;AACf,EAAAA,iBAAA,oBAAA,CAAA,GAAqB,oBAAA;AA1BX,EAAA,OAAAA,gBAAAA;AAAA,CAAA,EAAA,eAAA,IAAA,EAAA;;;;"}
|