bx-rest 1.5.1 → 1.7.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/CHANGELOG.md +163 -0
- package/README.en.md +206 -3
- package/README.md +207 -3
- package/consts/part-name-methods.d.ts +1 -0
- package/esm2022/consts/part-name-methods.mjs +2 -1
- package/esm2022/functions/errors.mjs +17 -5
- package/esm2022/functions/uniqueElementCode.mjs +24 -0
- package/esm2022/map/pull/application/config.mjs +25 -29
- package/esm2022/map/pull.mjs +8 -13
- package/esm2022/public-api.mjs +3 -2
- package/esm2022/request-navvy/bizproc.mjs +18 -9
- package/esm2022/request-navvy/booking/v1/resource.mjs +2 -2
- package/esm2022/request-navvy/booking/v1/resourcetype.mjs +2 -2
- package/esm2022/request-navvy/calendar/event.mjs +1 -9
- package/esm2022/request-navvy/catalog/catalog.mjs +2 -2
- package/esm2022/request-navvy/catalog/document/element.mjs +2 -2
- package/esm2022/request-navvy/catalog/document.mjs +2 -2
- package/esm2022/request-navvy/catalog/documentcontractor.mjs +2 -2
- package/esm2022/request-navvy/catalog/extra.mjs +2 -2
- package/esm2022/request-navvy/catalog/measure.mjs +2 -2
- package/esm2022/request-navvy/catalog/price.mjs +2 -2
- package/esm2022/request-navvy/catalog/pricetype.mjs +2 -2
- package/esm2022/request-navvy/catalog/pricetypegroup.mjs +2 -2
- package/esm2022/request-navvy/catalog/pricetypelang.mjs +2 -2
- package/esm2022/request-navvy/catalog/product/offer.mjs +2 -2
- package/esm2022/request-navvy/catalog/product/service.mjs +2 -2
- package/esm2022/request-navvy/catalog/product/sku.mjs +2 -2
- package/esm2022/request-navvy/catalog/product.mjs +2 -2
- package/esm2022/request-navvy/catalog/productproperty.mjs +2 -2
- package/esm2022/request-navvy/catalog/productpropertyenum.mjs +2 -2
- package/esm2022/request-navvy/catalog/productpropertyfeature.mjs +2 -2
- package/esm2022/request-navvy/catalog/productpropertysection.mjs +2 -2
- package/esm2022/request-navvy/catalog/ratio.mjs +2 -2
- package/esm2022/request-navvy/catalog/roundingrule.mjs +2 -2
- package/esm2022/request-navvy/catalog/section.mjs +2 -2
- package/esm2022/request-navvy/catalog/store.mjs +2 -2
- package/esm2022/request-navvy/catalog/storeproduct.mjs +2 -2
- package/esm2022/request-navvy/catalog/userfield/document.mjs +2 -2
- package/esm2022/request-navvy/catalog/vat.mjs +2 -2
- package/esm2022/request-navvy/crm/activity.mjs +2 -2
- package/esm2022/request-navvy/crm/deal/recurring.mjs +2 -2
- package/esm2022/request-navvy/crm/item/product/row.mjs +2 -2
- package/esm2022/request-navvy/crm/orderentity.mjs +2 -2
- package/esm2022/request-navvy/crm/requisite/link.mjs +2 -2
- package/esm2022/request-navvy/crm/stagehistory.mjs +2 -2
- package/esm2022/request-navvy/crm/timeline/bindings.mjs +2 -2
- package/esm2022/request-navvy/disk/operation.mjs +3 -10
- package/esm2022/request-navvy/documentgenerator/document.mjs +2 -2
- package/esm2022/request-navvy/documentgenerator/numerator.mjs +2 -2
- package/esm2022/request-navvy/documentgenerator/role.mjs +2 -2
- package/esm2022/request-navvy/documentgenerator/template.mjs +2 -2
- package/esm2022/request-navvy/pull/application/config.mjs +10 -4
- package/esm2022/request-navvy/pull/application/event.mjs +23 -0
- package/esm2022/request-navvy/pull/application/push.mjs +23 -0
- package/esm2022/request-navvy/pull/channel/public.mjs +4 -4
- package/esm2022/request-navvy/pull/config.mjs +8 -4
- package/esm2022/request-navvy/pull.mjs +12 -1
- package/esm2022/request-navvy/sale/basketitem.mjs +2 -2
- package/esm2022/request-navvy/sale/basketproperties.mjs +2 -2
- package/esm2022/request-navvy/sale/businessvaluepersondomain.mjs +2 -2
- package/esm2022/request-navvy/sale/order.mjs +2 -2
- package/esm2022/request-navvy/sale/payment.mjs +2 -2
- package/esm2022/request-navvy/sale/paymentitembasket.mjs +2 -2
- package/esm2022/request-navvy/sale/paymentitemshipment.mjs +2 -2
- package/esm2022/request-navvy/sale/persontype.mjs +2 -2
- package/esm2022/request-navvy/sale/property.mjs +2 -2
- package/esm2022/request-navvy/sale/propertyrelation.mjs +2 -2
- package/esm2022/request-navvy/sale/propertyvalue.mjs +2 -2
- package/esm2022/request-navvy/sale/propertyvariant.mjs +2 -2
- package/esm2022/request-navvy/sale/shipment.mjs +2 -2
- package/esm2022/request-navvy/sale/shipmentitem.mjs +2 -2
- package/esm2022/request-navvy/sale/shipmentproperty.mjs +2 -2
- package/esm2022/request-navvy/sale/shipmentpropertyvalue.mjs +2 -2
- package/esm2022/request-navvy/sale/status.mjs +2 -2
- package/esm2022/request-navvy/sale/statuslang.mjs +2 -2
- package/esm2022/request-navvy/sale/tradebinding.mjs +2 -2
- package/esm2022/request-navvy/sale/tradeplatform.mjs +2 -2
- package/esm2022/request-navvy/socialnetwork/api/livefeed.mjs +1 -5
- package/esm2022/request-navvy/task/operation/elapseditem.mjs +51 -28
- package/esm2022/request-navvy/tasks/task.mjs +1 -119
- package/esm2022/request-navvy/userfieldtype.mjs +2 -2
- package/esm2022/rest/navvy.mjs +66 -64
- package/esm2022/services/base.mjs +1 -4
- package/esm2022/services/context.mjs +59 -0
- package/esm2022/services/http/HttpBX.mjs +52 -19
- package/esm2022/services/http/authRefresh.mjs +25 -23
- package/esm2022/services/http/fetch.mjs +45 -0
- package/esm2022/services/http/http.mjs +25 -71
- package/esm2022/services/http/middleware.mjs +203 -0
- package/esm2022/services/http/sessionKey.mjs +16 -5
- package/esm2022/services/http/transport.mjs +5 -0
- package/esm2022/services/navvy/navvy-pag-nav-keyed.mjs +31 -0
- package/esm2022/services/navvy/navvy-support.mjs +2 -15
- package/esm2022/services/navvy.mjs +32 -31
- package/esm2022/typification/rest/calendar/event/get.mjs +1 -1
- package/esm2022/typification/rest/crm/requisite.mjs +1 -1
- package/esm2022/typification/rest/crm/timeline/bindings.mjs +1 -1
- package/esm2022/typification/rest/pull/application/config/get.mjs +1 -1
- package/esm2022/typification/rest/pull/application/event/add.mjs +2 -0
- package/esm2022/typification/rest/pull/application/push/add.mjs +2 -0
- package/esm2022/typification/rest/pull/config/get.mjs +1 -1
- package/esm2022/typification/rest/pull.mjs +3 -1
- package/esm2022/typification/rest/tasks/task/get.mjs +1 -1
- package/esm2022/typification/settings.mjs +1 -1
- package/fesm2022/bx-rest.mjs +800 -588
- package/fesm2022/bx-rest.mjs.map +1 -1
- package/functions/errors.d.ts +9 -0
- package/functions/uniqueElementCode.d.ts +12 -0
- package/map/pull/application/config.d.ts +3 -0
- package/package.json +1 -1
- package/public-api.d.ts +4 -2
- package/request-navvy/booking/v1/resource.d.ts +1 -1
- package/request-navvy/booking/v1/resourcetype.d.ts +1 -1
- package/request-navvy/catalog/catalog.d.ts +1 -1
- package/request-navvy/catalog/document/element.d.ts +1 -1
- package/request-navvy/catalog/document.d.ts +1 -1
- package/request-navvy/catalog/documentcontractor.d.ts +1 -1
- package/request-navvy/catalog/extra.d.ts +1 -1
- package/request-navvy/catalog/measure.d.ts +1 -1
- package/request-navvy/catalog/price.d.ts +1 -1
- package/request-navvy/catalog/pricetype.d.ts +1 -1
- package/request-navvy/catalog/pricetypegroup.d.ts +1 -1
- package/request-navvy/catalog/pricetypelang.d.ts +1 -1
- package/request-navvy/catalog/product/offer.d.ts +1 -1
- package/request-navvy/catalog/product/service.d.ts +1 -1
- package/request-navvy/catalog/product/sku.d.ts +1 -1
- package/request-navvy/catalog/product.d.ts +1 -1
- package/request-navvy/catalog/productproperty.d.ts +1 -1
- package/request-navvy/catalog/productpropertyenum.d.ts +1 -1
- package/request-navvy/catalog/productpropertyfeature.d.ts +1 -1
- package/request-navvy/catalog/productpropertysection.d.ts +1 -1
- package/request-navvy/catalog/ratio.d.ts +1 -1
- package/request-navvy/catalog/roundingrule.d.ts +1 -1
- package/request-navvy/catalog/section.d.ts +1 -1
- package/request-navvy/catalog/store.d.ts +1 -1
- package/request-navvy/catalog/storeproduct.d.ts +1 -1
- package/request-navvy/catalog/userfield/document.d.ts +1 -1
- package/request-navvy/catalog/vat.d.ts +1 -1
- package/request-navvy/crm/activity.d.ts +1 -1
- package/request-navvy/crm/deal/recurring.d.ts +1 -1
- package/request-navvy/crm/item/product/row.d.ts +5 -1
- package/request-navvy/crm/orderentity.d.ts +5 -1
- package/request-navvy/crm/requisite/link.d.ts +1 -1
- package/request-navvy/crm/stagehistory.d.ts +5 -1
- package/request-navvy/crm/timeline/bindings.d.ts +1 -1
- package/request-navvy/documentgenerator/document.d.ts +1 -1
- package/request-navvy/documentgenerator/numerator.d.ts +1 -1
- package/request-navvy/documentgenerator/role.d.ts +1 -1
- package/request-navvy/documentgenerator/template.d.ts +1 -1
- package/request-navvy/pull/application/config.d.ts +9 -3
- package/request-navvy/pull/application/event.d.ts +17 -0
- package/request-navvy/pull/application/push.d.ts +17 -0
- package/request-navvy/pull/config.d.ts +7 -3
- package/request-navvy/pull.d.ts +11 -0
- package/request-navvy/sale/basketitem.d.ts +1 -1
- package/request-navvy/sale/basketproperties.d.ts +1 -1
- package/request-navvy/sale/businessvaluepersondomain.d.ts +1 -1
- package/request-navvy/sale/order.d.ts +1 -1
- package/request-navvy/sale/payment.d.ts +1 -1
- package/request-navvy/sale/paymentitembasket.d.ts +1 -1
- package/request-navvy/sale/paymentitemshipment.d.ts +1 -1
- package/request-navvy/sale/persontype.d.ts +1 -1
- package/request-navvy/sale/property.d.ts +1 -1
- package/request-navvy/sale/propertyrelation.d.ts +1 -1
- package/request-navvy/sale/propertyvalue.d.ts +1 -1
- package/request-navvy/sale/propertyvariant.d.ts +1 -1
- package/request-navvy/sale/shipment.d.ts +1 -1
- package/request-navvy/sale/shipmentitem.d.ts +1 -1
- package/request-navvy/sale/shipmentproperty.d.ts +1 -1
- package/request-navvy/sale/shipmentpropertyvalue.d.ts +1 -1
- package/request-navvy/sale/status.d.ts +1 -1
- package/request-navvy/sale/statuslang.d.ts +1 -1
- package/request-navvy/sale/tradebinding.d.ts +1 -1
- package/request-navvy/sale/tradeplatform.d.ts +1 -1
- package/request-navvy/task/operation/elapseditem.d.ts +15 -10
- package/request-navvy/userfieldtype.d.ts +1 -1
- package/rest/navvy.d.ts +9 -0
- package/services/context.d.ts +43 -0
- package/services/http/HttpBX.d.ts +11 -0
- package/services/http/authRefresh.d.ts +5 -1
- package/services/http/fetch.d.ts +22 -0
- package/services/http/http.d.ts +20 -9
- package/services/http/middleware.d.ts +32 -0
- package/services/http/sessionKey.d.ts +10 -0
- package/services/http/transport.d.ts +28 -0
- package/services/navvy/navvy-pag-nav-keyed.d.ts +18 -0
- package/services/navvy/navvy-support.d.ts +0 -10
- package/services/navvy.d.ts +17 -0
- package/typification/rest/calendar/event/get.d.ts +1 -1
- package/typification/rest/crm/requisite.d.ts +1 -1
- package/typification/rest/crm/timeline/bindings.d.ts +2 -1
- package/typification/rest/pull/application/config/get.d.ts +1 -1
- package/typification/rest/pull/application/event/add.d.ts +24 -0
- package/typification/rest/pull/application/push/add.d.ts +16 -0
- package/typification/rest/pull/config/get.d.ts +28 -3
- package/typification/rest/pull.d.ts +2 -0
- package/typification/settings.d.ts +68 -0
- package/esm2022/functions/errorHandler.mjs +0 -34
- package/esm2022/request/app.mjs +0 -13
- package/esm2022/request/bizproc/activity.mjs +0 -3
- package/esm2022/request/bizproc/event.mjs +0 -3
- package/esm2022/request/bizproc/robot.mjs +0 -3
- package/esm2022/request/bizproc/task.mjs +0 -3
- package/esm2022/request/bizproc/workflow/instance.mjs +0 -3
- package/esm2022/request/bizproc/workflow/template.mjs +0 -3
- package/esm2022/request/bizproc/workflow.mjs +0 -18
- package/esm2022/request/bizproc.mjs +0 -15
- package/esm2022/request/department.mjs +0 -26
- package/esm2022/request/disk/attachedObject.mjs +0 -14
- package/esm2022/request/disk/file.mjs +0 -18
- package/esm2022/request/disk/folder.mjs +0 -117
- package/esm2022/request/disk.mjs +0 -11
- package/esm2022/request/lists/element.mjs +0 -18
- package/esm2022/request/lists/field.mjs +0 -35
- package/esm2022/request/lists.mjs +0 -86
- package/esm2022/request/log/blogcomment.mjs +0 -3
- package/esm2022/request/log/blogpost.mjs +0 -18
- package/esm2022/request/log.mjs +0 -9
- package/esm2022/request/pull/application/config.mjs +0 -11
- package/esm2022/request/pull/channel/public.mjs +0 -18
- package/esm2022/request/pull/config.mjs +0 -13
- package/esm2022/request/pull.mjs +0 -11
- package/esm2022/request/server.mjs +0 -14
- package/esm2022/request/socialnetwork/api/contentview.mjs +0 -14
- package/esm2022/request/socialnetwork/api/livefeed/blogpost/important.mjs +0 -14
- package/esm2022/request/socialnetwork/api/livefeed/blogpost.mjs +0 -7
- package/esm2022/request/socialnetwork/api/livefeed.mjs +0 -7
- package/esm2022/request/socialnetwork/api.mjs +0 -9
- package/esm2022/request/socialnetwork.mjs +0 -8
- package/esm2022/request/sonet_group.mjs +0 -24
- package/esm2022/request/task/commentitem.mjs +0 -32
- package/esm2022/request/task/elapseditem.mjs +0 -40
- package/esm2022/request/task/item/userfield.mjs +0 -14
- package/esm2022/request/task/item.mjs +0 -7
- package/esm2022/request/task/planner.mjs +0 -11
- package/esm2022/request/task.mjs +0 -13
- package/esm2022/request/tasks/task/result.mjs +0 -22
- package/esm2022/request/tasks/task.mjs +0 -110
- package/esm2022/request/tasks.mjs +0 -7
- package/esm2022/request/user/userfield.mjs +0 -14
- package/esm2022/request/user.mjs +0 -40
- package/esm2022/rest/base.mjs +0 -39
- package/esm2022/services/http/HttpData.mjs +0 -77
- package/esm2022/services/http/base/base.mjs +0 -4
- package/esm2022/services/http/httpNavvy.mjs +0 -14
- package/esm2022/typification/base/answers.mjs +0 -438
- package/esm2022/typification/base/params.mjs +0 -525
- package/esm2022/typification/base/workpiece/methods-list.mjs +0 -2
- package/esm2022/typification/base/workpiece/methods.mjs +0 -2
- package/functions/errorHandler.d.ts +0 -10
- package/request/app.d.ts +0 -8
- package/request/bizproc/activity.d.ts +0 -2
- package/request/bizproc/event.d.ts +0 -2
- package/request/bizproc/robot.d.ts +0 -2
- package/request/bizproc/task.d.ts +0 -2
- package/request/bizproc/workflow/instance.d.ts +0 -2
- package/request/bizproc/workflow/template.d.ts +0 -2
- package/request/bizproc/workflow.d.ts +0 -13
- package/request/bizproc.d.ts +0 -12
- package/request/department.d.ts +0 -18
- package/request/disk/attachedObject.d.ts +0 -8
- package/request/disk/file.d.ts +0 -10
- package/request/disk/folder.d.ts +0 -96
- package/request/disk.d.ts +0 -8
- package/request/lists/element.d.ts +0 -11
- package/request/lists/field.d.ts +0 -11
- package/request/lists.d.ts +0 -31
- package/request/log/blogcomment.d.ts +0 -2
- package/request/log/blogpost.d.ts +0 -11
- package/request/log.d.ts +0 -6
- package/request/pull/application/config.d.ts +0 -5
- package/request/pull/channel/public.d.ts +0 -5
- package/request/pull/config.d.ts +0 -7
- package/request/pull.d.ts +0 -8
- package/request/server.d.ts +0 -7
- package/request/socialnetwork/api/contentview.d.ts +0 -6
- package/request/socialnetwork/api/livefeed/blogpost/important.d.ts +0 -6
- package/request/socialnetwork/api/livefeed/blogpost.d.ts +0 -4
- package/request/socialnetwork/api/livefeed.d.ts +0 -4
- package/request/socialnetwork/api.d.ts +0 -6
- package/request/socialnetwork.d.ts +0 -4
- package/request/sonet_group.d.ts +0 -8
- package/request/task/commentitem.d.ts +0 -23
- package/request/task/elapseditem.d.ts +0 -26
- package/request/task/item/userfield.d.ts +0 -6
- package/request/task/item.d.ts +0 -4
- package/request/task/planner.d.ts +0 -4
- package/request/task.d.ts +0 -10
- package/request/tasks/task/result.d.ts +0 -13
- package/request/tasks/task.d.ts +0 -37
- package/request/tasks.d.ts +0 -4
- package/request/user/userfield.d.ts +0 -8
- package/request/user.d.ts +0 -24
- package/rest/base.d.ts +0 -33
- package/services/http/HttpData.d.ts +0 -7
- package/services/http/base/base.d.ts +0 -7
- package/services/http/httpNavvy.d.ts +0 -10
- package/typification/base/answers.d.ts +0 -12
- package/typification/base/params.d.ts +0 -16
- package/typification/base/workpiece/methods-list.d.ts +0 -247
- package/typification/base/workpiece/methods.d.ts +0 -20
|
@@ -20,7 +20,7 @@ export declare class BXRestNavvySalePayment {
|
|
|
20
20
|
/**
|
|
21
21
|
* Возвращает список оплат.
|
|
22
22
|
*/
|
|
23
|
-
list(param?: iBXRestGenericParams): import("../../services/navvy").
|
|
23
|
+
list(param?: iBXRestGenericParams): import("../../services/navvy").NavvyPagNavKeyed<iBXRestGenericObject, iBXRestGenericObject, iBXRestGenericParams>;
|
|
24
24
|
/**
|
|
25
25
|
* Обновляет оплату.
|
|
26
26
|
*/
|
|
@@ -20,7 +20,7 @@ export declare class BXRestNavvySalePaymentItemBasket {
|
|
|
20
20
|
/**
|
|
21
21
|
* Возвращает список привязок элементов корзины к оплатам.
|
|
22
22
|
*/
|
|
23
|
-
list(param?: iBXRestGenericParams): import("../../services/navvy").
|
|
23
|
+
list(param?: iBXRestGenericParams): import("../../services/navvy").NavvyPagNavKeyed<iBXRestGenericObject, iBXRestGenericObject, iBXRestGenericParams>;
|
|
24
24
|
/**
|
|
25
25
|
* Обновляет привязку элемента корзины к оплате.
|
|
26
26
|
*/
|
|
@@ -20,7 +20,7 @@ export declare class BXRestNavvySalePaymentItemShipment {
|
|
|
20
20
|
/**
|
|
21
21
|
* Возвращает список привязок оплат к отгрузкам.
|
|
22
22
|
*/
|
|
23
|
-
list(param?: iBXRestGenericParams): import("../../services/navvy").
|
|
23
|
+
list(param?: iBXRestGenericParams): import("../../services/navvy").NavvyPagNavKeyed<iBXRestGenericObject, iBXRestGenericObject, iBXRestGenericParams>;
|
|
24
24
|
/**
|
|
25
25
|
* Обновляет привязку оплаты к отгрузке.
|
|
26
26
|
*/
|
|
@@ -20,7 +20,7 @@ export declare class BXRestNavvySalePersonType {
|
|
|
20
20
|
/**
|
|
21
21
|
* Возвращает список типов плательщиков.
|
|
22
22
|
*/
|
|
23
|
-
list(param?: iBXRestGenericParams): import("../../services/navvy").
|
|
23
|
+
list(param?: iBXRestGenericParams): import("../../services/navvy").NavvyPagNavKeyed<iBXRestGenericObject, iBXRestGenericObject, iBXRestGenericParams>;
|
|
24
24
|
/**
|
|
25
25
|
* Обновляет тип плательщика.
|
|
26
26
|
*/
|
|
@@ -20,7 +20,7 @@ export declare class BXRestNavvySaleProperty {
|
|
|
20
20
|
/**
|
|
21
21
|
* Возвращает список свойств заказа.
|
|
22
22
|
*/
|
|
23
|
-
list(param?: iBXRestGenericParams): import("../../services/navvy").
|
|
23
|
+
list(param?: iBXRestGenericParams): import("../../services/navvy").NavvyPagNavKeyed<iBXRestGenericObject, iBXRestGenericObject, iBXRestGenericParams>;
|
|
24
24
|
/**
|
|
25
25
|
* Обновляет свойство заказа.
|
|
26
26
|
*/
|
|
@@ -16,5 +16,5 @@ export declare class BXRestNavvySalePropertyRelation {
|
|
|
16
16
|
/**
|
|
17
17
|
* Возвращает список привязок свойств заказа.
|
|
18
18
|
*/
|
|
19
|
-
list(param?: iBXRestGenericParams): import("../../services/navvy").
|
|
19
|
+
list(param?: iBXRestGenericParams): import("../../services/navvy").NavvyPagNavKeyed<iBXRestGenericObject, iBXRestGenericObject, iBXRestGenericParams>;
|
|
20
20
|
}
|
|
@@ -16,7 +16,7 @@ export declare class BXRestNavvySalePropertyValue {
|
|
|
16
16
|
/**
|
|
17
17
|
* Возвращает список значений свойств заказа.
|
|
18
18
|
*/
|
|
19
|
-
list(param?: iBXRestGenericParams): import("../../services/navvy").
|
|
19
|
+
list(param?: iBXRestGenericParams): import("../../services/navvy").NavvyPagNavKeyed<iBXRestGenericObject, iBXRestGenericObject, iBXRestGenericParams>;
|
|
20
20
|
/**
|
|
21
21
|
* Устанавливает или изменяет значение свойства заказа.
|
|
22
22
|
*/
|
|
@@ -20,7 +20,7 @@ export declare class BXRestNavvySalePropertyVariant {
|
|
|
20
20
|
/**
|
|
21
21
|
* Возвращает список значений списочного свойства заказа.
|
|
22
22
|
*/
|
|
23
|
-
list(param?: iBXRestGenericParams): import("../../services/navvy").
|
|
23
|
+
list(param?: iBXRestGenericParams): import("../../services/navvy").NavvyPagNavKeyed<iBXRestGenericObject, iBXRestGenericObject, iBXRestGenericParams>;
|
|
24
24
|
/**
|
|
25
25
|
* Обновляет значение списочного свойства заказа.
|
|
26
26
|
*/
|
|
@@ -20,7 +20,7 @@ export declare class BXRestNavvySaleShipment {
|
|
|
20
20
|
/**
|
|
21
21
|
* Возвращает список отгрузок.
|
|
22
22
|
*/
|
|
23
|
-
list(param?: iBXRestGenericParams): import("../../services/navvy").
|
|
23
|
+
list(param?: iBXRestGenericParams): import("../../services/navvy").NavvyPagNavKeyed<iBXRestGenericObject, iBXRestGenericObject, iBXRestGenericParams>;
|
|
24
24
|
/**
|
|
25
25
|
* Обновляет отгрузку.
|
|
26
26
|
*/
|
|
@@ -20,7 +20,7 @@ export declare class BXRestNavvySaleShipmentItem {
|
|
|
20
20
|
/**
|
|
21
21
|
* Возвращает список товарных позиций отгрузки.
|
|
22
22
|
*/
|
|
23
|
-
list(param?: iBXRestGenericParams): import("../../services/navvy").
|
|
23
|
+
list(param?: iBXRestGenericParams): import("../../services/navvy").NavvyPagNavKeyed<iBXRestGenericObject, iBXRestGenericObject, iBXRestGenericParams>;
|
|
24
24
|
/**
|
|
25
25
|
* Обновляет товарную позицию отгрузки.
|
|
26
26
|
*/
|
|
@@ -20,7 +20,7 @@ export declare class BXRestNavvySaleShipmentProperty {
|
|
|
20
20
|
/**
|
|
21
21
|
* Возвращает список свойств отгрузки.
|
|
22
22
|
*/
|
|
23
|
-
list(param?: iBXRestGenericParams): import("../../services/navvy").
|
|
23
|
+
list(param?: iBXRestGenericParams): import("../../services/navvy").NavvyPagNavKeyed<iBXRestGenericObject, iBXRestGenericObject, iBXRestGenericParams>;
|
|
24
24
|
/**
|
|
25
25
|
* Обновляет свойство отгрузки.
|
|
26
26
|
*/
|
|
@@ -16,7 +16,7 @@ export declare class BXRestNavvySaleShipmentPropertyValue {
|
|
|
16
16
|
/**
|
|
17
17
|
* Возвращает список значений свойств отгрузки.
|
|
18
18
|
*/
|
|
19
|
-
list(param?: iBXRestGenericParams): import("../../services/navvy").
|
|
19
|
+
list(param?: iBXRestGenericParams): import("../../services/navvy").NavvyPagNavKeyed<iBXRestGenericObject, iBXRestGenericObject, iBXRestGenericParams>;
|
|
20
20
|
/**
|
|
21
21
|
* Устанавливает или изменяет значение свойства отгрузки.
|
|
22
22
|
*/
|
|
@@ -20,7 +20,7 @@ export declare class BXRestNavvySaleStatus {
|
|
|
20
20
|
/**
|
|
21
21
|
* Возвращает список статусов.
|
|
22
22
|
*/
|
|
23
|
-
list(param?: iBXRestGenericParams): import("../../services/navvy").
|
|
23
|
+
list(param?: iBXRestGenericParams): import("../../services/navvy").NavvyPagNavKeyed<iBXRestGenericObject, iBXRestGenericObject, iBXRestGenericParams>;
|
|
24
24
|
/**
|
|
25
25
|
* Обновляет статус.
|
|
26
26
|
*/
|
|
@@ -20,5 +20,5 @@ export declare class BXRestNavvySaleStatusLang {
|
|
|
20
20
|
/**
|
|
21
21
|
* Возвращает список локализаций статусов.
|
|
22
22
|
*/
|
|
23
|
-
list(param?: iBXRestGenericParams): import("../../services/navvy").
|
|
23
|
+
list(param?: iBXRestGenericParams): import("../../services/navvy").NavvyPagNavKeyed<iBXRestGenericObject, iBXRestGenericObject, iBXRestGenericParams>;
|
|
24
24
|
}
|
|
@@ -8,5 +8,5 @@ export declare class BXRestNavvySaleTradeBinding {
|
|
|
8
8
|
/**
|
|
9
9
|
* Возвращает список привязок источников заказов.
|
|
10
10
|
*/
|
|
11
|
-
list(param?: iBXRestGenericParams): import("../../services/navvy").
|
|
11
|
+
list(param?: iBXRestGenericParams): import("../../services/navvy").NavvyPagNavKeyed<iBXRestGenericObject, iBXRestGenericObject, iBXRestGenericParams>;
|
|
12
12
|
}
|
|
@@ -8,5 +8,5 @@ export declare class BXRestNavvySaleTradePlatform {
|
|
|
8
8
|
/**
|
|
9
9
|
* Возвращает список источников заказов.
|
|
10
10
|
*/
|
|
11
|
-
list(param?: iBXRestGenericParams): import("../../services/navvy").
|
|
11
|
+
list(param?: iBXRestGenericParams): import("../../services/navvy").NavvyPagNavKeyed<iBXRestGenericObject, iBXRestGenericObject, iBXRestGenericParams>;
|
|
12
12
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { iBXRestParamElapseditemGet, iBXRestTaskElapsedItemHttp, iIsActionAllowedParam, iBXRestParamAddElapseditem, iBXRestParamUpdateElapseditem, iBXRestParamDelElapseditem } from '../../../typification/rest/task';
|
|
2
|
+
import { Observable } from 'rxjs';
|
|
2
3
|
import { iBXRestUser } from '../../../typification/rest/user';
|
|
3
4
|
import { BXRestNavvyElapsedItem } from '../elapseditem';
|
|
4
5
|
export declare class BXRestNavvyOperationElapsedItem {
|
|
@@ -13,13 +14,17 @@ export declare class BXRestNavvyOperationElapsedItem {
|
|
|
13
14
|
*/
|
|
14
15
|
getByInterval(idsUsers: number[], dateStart: Date, dateEnd: Date): import("../../../services/navvy").NavvyAlterPagNav<iBXRestTaskElapsedItemHttp, import("../../../typification/rest/task").iBXRestTaskElapsedItem, iBXRestParamElapseditemGet>;
|
|
15
16
|
/**
|
|
16
|
-
* Возвращает
|
|
17
|
+
* Возвращает все записи о затраченном времени по задачам `ids`: сначала записи первой задачи,
|
|
18
|
+
* затем второй и так далее.
|
|
19
|
+
*
|
|
20
|
+
* Портал отдаёт не больше 50 записей на страницу. Первые страницы всех задач уходят одним
|
|
21
|
+
* batch, остальные страницы запрашиваются только у задач, где записей больше 50.
|
|
17
22
|
*/
|
|
18
|
-
getListByIDTask(ids: number[]):
|
|
23
|
+
getListByIDTask(ids: number[]): Observable<import("../../../typification/rest/task").iBXRestTaskElapsedItem[] | undefined>;
|
|
19
24
|
/**
|
|
20
25
|
* Проверяет право на добавление затраченного времени сразу по нескольким задачам.
|
|
21
26
|
*/
|
|
22
|
-
checkPermissionAddElapsedTimeToTaskArr(tasks: number[], userCurrent?: iBXRestUser | undefined):
|
|
27
|
+
checkPermissionAddElapsedTimeToTaskArr(tasks: number[], userCurrent?: iBXRestUser | undefined): Observable<{
|
|
23
28
|
id: number;
|
|
24
29
|
value: boolean;
|
|
25
30
|
}[] | undefined>;
|
|
@@ -29,32 +34,32 @@ export declare class BXRestNavvyOperationElapsedItem {
|
|
|
29
34
|
* @param idTask
|
|
30
35
|
* @param userCurrent
|
|
31
36
|
*/
|
|
32
|
-
checkPermissionAddElapsedTimeToTask(idTask: number, userCurrent?: iBXRestUser | undefined):
|
|
37
|
+
checkPermissionAddElapsedTimeToTask(idTask: number, userCurrent?: iBXRestUser | undefined): Observable<boolean | undefined>;
|
|
33
38
|
/**
|
|
34
39
|
* Проверка на возможность прочтения такски
|
|
35
40
|
*
|
|
36
41
|
* @param idTask
|
|
37
42
|
* @param userCurrent
|
|
38
43
|
*/
|
|
39
|
-
checkPermissionReadTask(idTask: number, userCurrent?: iBXRestUser | undefined):
|
|
44
|
+
checkPermissionReadTask(idTask: number, userCurrent?: iBXRestUser | undefined): Observable<boolean | undefined>;
|
|
40
45
|
/**
|
|
41
46
|
* Законченный метод добавления записи с предварительной проверкой прав
|
|
42
47
|
*
|
|
43
48
|
* TODO: добавить сохранение предварительно проверенных записей
|
|
44
49
|
* @param param
|
|
45
50
|
*/
|
|
46
|
-
add(param: iBXRestParamAddElapseditem):
|
|
51
|
+
add(param: iBXRestParamAddElapseditem): Observable<number | undefined>;
|
|
47
52
|
/**
|
|
48
53
|
* Законченный метод обновления записи с предварительной проверкой прав
|
|
49
54
|
*
|
|
50
55
|
* TODO: добавить сохранение предварительно проверенных записей
|
|
51
56
|
* @param param
|
|
52
57
|
*/
|
|
53
|
-
update(param: iBXRestParamUpdateElapseditem):
|
|
58
|
+
update(param: iBXRestParamUpdateElapseditem): Observable<null | undefined>;
|
|
54
59
|
/**
|
|
55
60
|
* Проверяет право на изменение записи о затраченном времени.
|
|
56
61
|
*/
|
|
57
|
-
isAllowedModify(idTask: number, idItem: number):
|
|
62
|
+
isAllowedModify(idTask: number, idItem: number): Observable<boolean | undefined>;
|
|
58
63
|
/**
|
|
59
64
|
* isActionAllowed с фиксом на проверку возможности чтения задачи записи
|
|
60
65
|
* (без проверки даёт ошибку)
|
|
@@ -65,13 +70,13 @@ export declare class BXRestNavvyOperationElapsedItem {
|
|
|
65
70
|
* 3 - ACTION_ELAPSED_TIME_REMOVE
|
|
66
71
|
* @param param
|
|
67
72
|
*/
|
|
68
|
-
isActionAllowed(param: iIsActionAllowedParam):
|
|
73
|
+
isActionAllowed(param: iIsActionAllowedParam): Observable<boolean | undefined>;
|
|
69
74
|
/**
|
|
70
75
|
* Полноценный метод удаления
|
|
71
76
|
*
|
|
72
77
|
* @param param
|
|
73
78
|
*/
|
|
74
|
-
del(param: iBXRestParamDelElapseditem):
|
|
79
|
+
del(param: iBXRestParamDelElapseditem): Observable<null | undefined>;
|
|
75
80
|
/**
|
|
76
81
|
* Проверяет право на удаление записи о затраченном времени.
|
|
77
82
|
*/
|
|
@@ -12,7 +12,7 @@ export declare class BXRestNavvyUserFieldType {
|
|
|
12
12
|
/**
|
|
13
13
|
* Возвращает список типов пользовательских полей, зарегистрированных приложением.
|
|
14
14
|
*/
|
|
15
|
-
list(param?: iBXRestGenericParams): import("../services/navvy").
|
|
15
|
+
list(param?: iBXRestGenericParams): import("../services/navvy").NavvyPag<iBXRestGenericObject, iBXRestGenericObject, iBXRestGenericParams>;
|
|
16
16
|
/**
|
|
17
17
|
* Изменяет настройки зарегистрированного приложением типа пользовательских полей.
|
|
18
18
|
*/
|
package/rest/navvy.d.ts
CHANGED
|
@@ -45,6 +45,7 @@ import { BXRestNavvyEventLog } from '../request-navvy/eventlog/index';
|
|
|
45
45
|
import { BXRestNavvyPlacement } from '../request-navvy/placement';
|
|
46
46
|
import { BXRestNavvyUserFieldType } from '../request-navvy/userfieldtype';
|
|
47
47
|
import { iBXRestParamScope } from '../typification/rest/common';
|
|
48
|
+
import { iBXRestSettings } from '../typification/settings';
|
|
48
49
|
export declare class BXRestNavvy {
|
|
49
50
|
readonly ai: BXRestNavvyAi;
|
|
50
51
|
readonly mailService: BXRestNavvyMailService;
|
|
@@ -95,6 +96,14 @@ export declare class BXRestNavvy {
|
|
|
95
96
|
/** Проверка доступности возможностей портала. */
|
|
96
97
|
readonly feature: BXRestNavvyFeature;
|
|
97
98
|
readonly Navvy: Navvy;
|
|
99
|
+
/**
|
|
100
|
+
* @param settings Свои настройки клиента: адрес портала, способ авторизации,
|
|
101
|
+
* заголовки. Все запросы этого клиента идут с ними, даже если глобальные
|
|
102
|
+
* `BXRestSettings` позже изменятся. Так в одном процессе можно работать
|
|
103
|
+
* с несколькими порталами. Без аргумента клиент работает с глобальными
|
|
104
|
+
* `BXRestSettings`, как раньше.
|
|
105
|
+
*/
|
|
106
|
+
constructor(settings?: iBXRestSettings);
|
|
98
107
|
/**
|
|
99
108
|
* Возвращает базовую информацию о текущем пользователе без scope `user`.
|
|
100
109
|
*
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { iBXRestSettings } from '../typification/settings';
|
|
2
|
+
import type { AxiosInstance } from 'axios';
|
|
3
|
+
/**
|
|
4
|
+
* Контекст клиента: его настройки, экземпляр axios и общее состояние
|
|
5
|
+
* продления авторизации и очереди `throttle`.
|
|
6
|
+
*
|
|
7
|
+
* Объекты библиотеки запоминают контекст в момент создания
|
|
8
|
+
* (`currentContext()`), поэтому все запросы клиента `new BXRestNavvy(settings)`
|
|
9
|
+
* идут с его настройками, а не с глобальными. Внутренняя деталь библиотеки.
|
|
10
|
+
*/
|
|
11
|
+
export declare class BXRestContext {
|
|
12
|
+
private readonly own?;
|
|
13
|
+
/** Идущее сейчас продление авторизации, его ждут все упавшие запросы клиента. */
|
|
14
|
+
pendingRefresh: Promise<void> | undefined;
|
|
15
|
+
/** Сколько продлений уже завершилось успешно. */
|
|
16
|
+
refreshCount: number;
|
|
17
|
+
/** Экземпляр axios клиента: один на контекст, создаётся при первом запросе. */
|
|
18
|
+
axios: AxiosInstance | undefined;
|
|
19
|
+
/** Очередь `throttle`: когда можно отправить следующий запрос клиента (мс, Date.now()). */
|
|
20
|
+
throttleNextSlot: number;
|
|
21
|
+
constructor(own?: iBXRestSettings | undefined);
|
|
22
|
+
/**
|
|
23
|
+
* Свои настройки клиента, а без них — глобальные `BXRestSettings.value`,
|
|
24
|
+
* прочитанные в момент обращения: `BXRestSettings.update()` заменяет объект.
|
|
25
|
+
*/
|
|
26
|
+
get settings(): iBXRestSettings;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Контекст глобальных настроек. С ним работают `new BXRestNavvy()` без
|
|
30
|
+
* аргумента и объекты, созданные приложением напрямую (`new Navvy()`,
|
|
31
|
+
* `new BXRestRequest()`).
|
|
32
|
+
*/
|
|
33
|
+
export declare const globalContext: BXRestContext;
|
|
34
|
+
export declare function currentContext(): BXRestContext;
|
|
35
|
+
/**
|
|
36
|
+
* Делает `ctx` текущим и возвращает прежний контекст. Вызывающий обязан
|
|
37
|
+
* вернуть его через `restoreContext()` в `finally`: иначе после исключения
|
|
38
|
+
* чужие настройки достанутся объектам, созданным позже.
|
|
39
|
+
*/
|
|
40
|
+
export declare function enterContext(ctx: BXRestContext): BXRestContext;
|
|
41
|
+
export declare function restoreContext(previous: BXRestContext): void;
|
|
42
|
+
/** Создаёт объекты в контексте `ctx` и возвращает прежний контекст, даже при исключении. */
|
|
43
|
+
export declare function runInContext<T>(ctx: BXRestContext, build: () => T): T;
|
|
@@ -32,6 +32,17 @@ export declare class HttpBXServices extends HttpServices {
|
|
|
32
32
|
get<T>(name: string[], params?: any, headers?: Record<string, string>): Observable<iBXRestAnswer<T> | undefined>;
|
|
33
33
|
httpPost<T>(url: string, params?: any, settings?: iHttpParamSettings, headers?: Record<string, string>): Observable<T | undefined>;
|
|
34
34
|
httpGet<T>(url: string, params?: any, settings?: iHttpParamSettings, headers?: Record<string, string>): Observable<T | undefined>;
|
|
35
|
+
/**
|
|
36
|
+
* Отправка через шаги из настроек: `retryOnQueryLimit`, `throttle`,
|
|
37
|
+
* `timeout`, `logRequests`, затем `middleware`; последним идёт транспорт
|
|
38
|
+
* клиента — axios или `fetch` (`transport`). Настройки читаются при
|
|
39
|
+
* подписке. Отписка отменяет HTTP-запрос (AbortSignal). Ошибка транспорта
|
|
40
|
+
* уходит дальше как есть: у axios в ней весь запрос, вместе с токеном и
|
|
41
|
+
* секретом вебхука (см. README, «Обработка ошибок»).
|
|
42
|
+
*/
|
|
43
|
+
private send;
|
|
44
|
+
/** Транспорт по умолчанию: axios клиента, как и раньше через post()/get(). */
|
|
45
|
+
private axiosSend;
|
|
35
46
|
/**
|
|
36
47
|
* Заголовки запроса: `BXRestSettings.headers`, поверх них — заголовки
|
|
37
48
|
* конкретного запроса, поверх всего — `required`. В `required` идёт
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
|
+
import { BXRestContext } from '../context';
|
|
2
3
|
/**
|
|
3
4
|
* Условие продления по умолчанию (`BXRestSettings.auth.isAuthError`):
|
|
4
5
|
* - ответ с ошибкой Bitrix `expired_token` или `invalid_token` — при любом статусе;
|
|
@@ -15,5 +16,8 @@ export declare function isBXRestAuthError(error: unknown): boolean;
|
|
|
15
16
|
* `defer()` в HttpBXServices): повтор — это повторная подписка, поэтому
|
|
16
17
|
* токен, адрес и заголовки берутся уже новые. На второй попытке ошибка не
|
|
17
18
|
* перехватывается — запрос повторяется не больше одного раза.
|
|
19
|
+
*
|
|
20
|
+
* `ctx` — контекст клиента, из которого берутся `refresh`, `isAuthError` и
|
|
21
|
+
* общее состояние продления.
|
|
18
22
|
*/
|
|
19
|
-
export declare function withAuthRefresh<T>(request$: Observable<T
|
|
23
|
+
export declare function withAuthRefresh<T>(request$: Observable<T>, ctx?: BXRestContext): Observable<T>;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { BXRestRequestConfig } from './transport';
|
|
2
|
+
/**
|
|
3
|
+
* Ответ не 2xx при `transport: 'fetch'`. Поле `response` такое же, как у
|
|
4
|
+
* `AxiosError`: по нему библиотека узнаёт ошибки Bitrix и ошибки авторизации.
|
|
5
|
+
* В `.resVanilla()` приходит сама эта ошибка, в `.res()` — в `cause`.
|
|
6
|
+
*/
|
|
7
|
+
export declare class BXRestHttpError extends Error {
|
|
8
|
+
readonly response: {
|
|
9
|
+
status: number;
|
|
10
|
+
data: unknown;
|
|
11
|
+
};
|
|
12
|
+
constructor(response: {
|
|
13
|
+
status: number;
|
|
14
|
+
data: unknown;
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Транспорт `transport: 'fetch'`: глобальный `fetch` браузера или Node 18+.
|
|
19
|
+
* Тело ответа разбирается как JSON, а если это не JSON (например, HTML от
|
|
20
|
+
* прокси) — отдаётся строкой, как это делает axios.
|
|
21
|
+
*/
|
|
22
|
+
export declare function fetchSend(config: BXRestRequestConfig): Promise<unknown>;
|
package/services/http/http.d.ts
CHANGED
|
@@ -1,12 +1,23 @@
|
|
|
1
|
-
import { Observable } from 'rxjs';
|
|
2
1
|
import { AxiosInstance } from 'axios';
|
|
3
|
-
import { SessionKeyServices } from '
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
2
|
+
import { SessionKeyServices } from './sessionKey';
|
|
3
|
+
import { iBXRestSettings } from '../../typification/settings';
|
|
4
|
+
/**
|
|
5
|
+
* Общая часть HTTP-клиента: экземпляр axios и источник токена и адреса.
|
|
6
|
+
* Сами запросы отправляет `HttpBXServices` (`BXRestRequest`).
|
|
7
|
+
*/
|
|
8
|
+
export declare class HttpServices {
|
|
8
9
|
readonly session: SessionKeyServices;
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
10
|
+
/**
|
|
11
|
+
* @param settings свои настройки, как у `new BXRestNavvy(settings)`: запросы
|
|
12
|
+
* идут на этот портал с этим токеном, а `BXRestSettings` на них не влияют.
|
|
13
|
+
* Без них — настройки клиента, внутри которого создан объект, или
|
|
14
|
+
* глобальные `BXRestSettings`.
|
|
15
|
+
*/
|
|
16
|
+
constructor(settings?: iBXRestSettings);
|
|
17
|
+
/**
|
|
18
|
+
* Экземпляр axios клиента. Один на контекст (клиента со своими настройками
|
|
19
|
+
* или глобальные настройки) и создаётся при первом запросе — раньше каждый
|
|
20
|
+
* объект запроса создавал свой.
|
|
21
|
+
*/
|
|
22
|
+
protected get axiosInstance(): AxiosInstance;
|
|
12
23
|
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { BXRestMiddleware } from './transport';
|
|
2
|
+
import { iBXRestSettings } from '../../typification/settings';
|
|
3
|
+
/** `retryOnQueryLimit: true`: всего 3 попытки, пауза перед второй — 1000 мс, дальше вдвое больше. */
|
|
4
|
+
export declare const DEFAULT_RETRY_ON_QUERY_LIMIT: {
|
|
5
|
+
attempts: number;
|
|
6
|
+
delay: number;
|
|
7
|
+
};
|
|
8
|
+
/** `timeout: true`: 60 000 мс на один HTTP-запрос. */
|
|
9
|
+
export declare const DEFAULT_TIMEOUT = 60000;
|
|
10
|
+
/** `throttle: true`: 2 запроса в секунду — лимит Bitrix24 на обычных тарифах. */
|
|
11
|
+
export declare const DEFAULT_THROTTLE: {
|
|
12
|
+
perSecond: number;
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* Запрос не завершился за время из `timeout` в настройках. В `.resVanilla()`
|
|
16
|
+
* приходит сама эта ошибка, в `.res()` — в `cause`.
|
|
17
|
+
*/
|
|
18
|
+
export declare class BXRestTimeoutError extends Error {
|
|
19
|
+
readonly timeout: number;
|
|
20
|
+
constructor(timeout: number);
|
|
21
|
+
}
|
|
22
|
+
/** Где клиент хранит очередь `throttle` — в своём контексте. */
|
|
23
|
+
export interface ThrottleState {
|
|
24
|
+
throttleNextSlot: number;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Встроенные шаги из настроек, в этом порядке: повтор, очередь, таймаут, журнал.
|
|
28
|
+
* Повтор — снаружи: каждая попытка заново встаёт в очередь и получает свой
|
|
29
|
+
* таймаут. Таймаут — внутри очереди: ожидание своей очереди его не тратит.
|
|
30
|
+
* Журнал — внутри всех: каждая попытка — своя запись, без времени в очереди.
|
|
31
|
+
*/
|
|
32
|
+
export declare function builtInMiddleware(settings: iBXRestSettings, state: ThrottleState): BXRestMiddleware[];
|
|
@@ -1,10 +1,18 @@
|
|
|
1
1
|
import { Observable, Subscription } from 'rxjs';
|
|
2
2
|
import { iBXRestAuth } from '../../typification/auth/save';
|
|
3
|
+
import { BXRestContext } from '../context';
|
|
4
|
+
import type { BXRestMiddleware } from './transport';
|
|
3
5
|
type IKeyAuth = 'sessid' | 'auth' | string;
|
|
4
6
|
export declare class SessionKeyError extends Error {
|
|
5
7
|
constructor(message: string);
|
|
6
8
|
}
|
|
7
9
|
export declare class SessionKeyServices {
|
|
10
|
+
/**
|
|
11
|
+
* Контекст клиента, в котором создан объект: внутри `new BXRestNavvy(settings)`
|
|
12
|
+
* — контекст этого клиента, в остальных случаях — глобальные настройки.
|
|
13
|
+
* Объявлен первым: конструктор ниже уже читает настройки.
|
|
14
|
+
*/
|
|
15
|
+
readonly ctx: BXRestContext;
|
|
8
16
|
authHave: boolean;
|
|
9
17
|
authData: iBXRestAuth | undefined;
|
|
10
18
|
subscribe: {
|
|
@@ -26,6 +34,8 @@ export declare class SessionKeyServices {
|
|
|
26
34
|
* результата не меняла сами настройки.
|
|
27
35
|
*/
|
|
28
36
|
getHeaders(): Record<string, string>;
|
|
37
|
+
/** Свои middleware из настроек (`middleware`), читаются при каждом запросе — как и остальные настройки. */
|
|
38
|
+
getMiddleware(): readonly BXRestMiddleware[];
|
|
29
39
|
getSessid(): string;
|
|
30
40
|
getAuthParams(): string | undefined;
|
|
31
41
|
getCheckAuthParamsIsOn(): boolean;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Запрос, который HTTP-слой bx-rest передаёт middleware и транспорту.
|
|
3
|
+
*/
|
|
4
|
+
export interface BXRestRequestConfig {
|
|
5
|
+
method: 'GET' | 'POST';
|
|
6
|
+
/** Полный адрес; у GET — вместе со строкой параметров. */
|
|
7
|
+
url: string;
|
|
8
|
+
/** Тело POST: объект (уходит JSON) или строка x-www-form-urlencoded. */
|
|
9
|
+
data?: unknown;
|
|
10
|
+
headers: Record<string, string>;
|
|
11
|
+
/** Прикладывать ли cookie браузера (`credentials: 'include'` у fetch). */
|
|
12
|
+
withCredentials: boolean;
|
|
13
|
+
/** Отмена запроса. */
|
|
14
|
+
signal?: AbortSignal;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Отправляет запрос и возвращает тело ответа. На ответ не 2xx отклоняется
|
|
18
|
+
* ошибкой с полем `response: { status, data }` — как `AxiosError`: по нему
|
|
19
|
+
* библиотека узнаёт ошибки Bitrix и ошибки авторизации.
|
|
20
|
+
*/
|
|
21
|
+
export type BXRestSend = (config: BXRestRequestConfig) => Promise<unknown>;
|
|
22
|
+
/**
|
|
23
|
+
* Шаг перед отправкой. Может поменять запрос, повторить его, подождать или
|
|
24
|
+
* вовсе не звать `next` — тогда middleware сам становится транспортом.
|
|
25
|
+
*/
|
|
26
|
+
export type BXRestMiddleware = (config: BXRestRequestConfig, next: BXRestSend) => Promise<unknown>;
|
|
27
|
+
/** Первый middleware в списке — внешний: он первым видит запрос и последним — ответ. */
|
|
28
|
+
export declare function composeMiddleware(middleware: readonly BXRestMiddleware[], terminal: BXRestSend): BXRestSend;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Observable } from 'rxjs';
|
|
2
|
+
import { iBXRestPagination } from '../../typification/rest/base/api-pagination-bx';
|
|
3
|
+
import { ReturnTypeNavvy } from './navvy-support';
|
|
4
|
+
import { NavvyPagBase } from './extends/navvy-pag-base';
|
|
5
|
+
/**
|
|
6
|
+
* Пагинация для методов, у которых `result` — объект, а список лежит в нём под ключом:
|
|
7
|
+
* `{ products: [...] }`, `{ orders: [...] }`.
|
|
8
|
+
*
|
|
9
|
+
* В отличие от {@link NavvyPagNavResultKey}, `.res()` отдаёт объект как есть, а `.resAll()` —
|
|
10
|
+
* такой же объект, где под ключом собраны записи всех страниц. Так `.resAll()` можно добавить
|
|
11
|
+
* методу, который раньше создавался через `simple`, не меняя результат его `.res()`.
|
|
12
|
+
*/
|
|
13
|
+
export declare class NavvyPagNavKeyed<T extends object, R, P extends iBXRestPagination> extends NavvyPagBase<T, R, P> {
|
|
14
|
+
private readonly key;
|
|
15
|
+
constructor(url: string[], param: P, key: string, map?: (param: T | undefined) => R | undefined, restApi?: boolean);
|
|
16
|
+
resAll(): Observable<ReturnTypeNavvy<T, R>>;
|
|
17
|
+
private listIn;
|
|
18
|
+
}
|
|
@@ -1,11 +1 @@
|
|
|
1
|
-
import { Observable } from 'rxjs';
|
|
2
|
-
import { iBXRestAnswer } from '../../typification/rest/base/answer';
|
|
3
1
|
export type ReturnTypeNavvy<T, R> = T extends R ? T : R;
|
|
4
|
-
export declare abstract class NavvySupport<C, T, R> {
|
|
5
|
-
requestClass: C;
|
|
6
|
-
pageSize: number;
|
|
7
|
-
protected constructor(requestClass: C);
|
|
8
|
-
mapAndError<T>(request: Observable<iBXRestAnswer<T> | undefined>): Observable<T | undefined>;
|
|
9
|
-
abstract resVanilla(): Observable<iBXRestAnswer<T> | undefined>;
|
|
10
|
-
abstract res(): ReturnTypeNavvy<Observable<T | undefined>, Observable<R | undefined>>;
|
|
11
|
-
}
|
package/services/navvy.d.ts
CHANGED
|
@@ -6,6 +6,8 @@ import { NavvyPagNavTasks } from './navvy/navvy-pag-nav-tasks';
|
|
|
6
6
|
import { NavvyPag } from './navvy/navvy-pag';
|
|
7
7
|
import { NavvyPagNavResultKey } from './navvy/navvy-pag-nav-result-key';
|
|
8
8
|
import { NavvyPagNavResultKeyObject } from './navvy/navvy-pag-nav-result-key-object';
|
|
9
|
+
import { NavvyPagNavKeyed } from './navvy/navvy-pag-nav-keyed';
|
|
10
|
+
import { iBXRestSettings } from '../typification/settings';
|
|
9
11
|
export * from './navvy/navvy-simple';
|
|
10
12
|
export * from './navvy/navvy-alternative-pagination-navigation';
|
|
11
13
|
export * from './navvy/navvy-pag-nav-with-useless-key';
|
|
@@ -13,8 +15,17 @@ export * from './navvy/navvy-pag-nav-tasks';
|
|
|
13
15
|
export * from './navvy/navvy-pag-nav-result-key';
|
|
14
16
|
export * from './navvy/navvy-pag';
|
|
15
17
|
export * from './navvy/navvy-pag-nav-result-key-object';
|
|
18
|
+
export * from './navvy/navvy-pag-nav-keyed';
|
|
16
19
|
export * from './navvy/navvy-support';
|
|
17
20
|
export declare class Navvy {
|
|
21
|
+
private readonly ctx;
|
|
22
|
+
/**
|
|
23
|
+
* @param settings свои настройки, как у `new BXRestNavvy(settings)`: запросы
|
|
24
|
+
* идут на этот портал с этим токеном, а `BXRestSettings` на них не влияют.
|
|
25
|
+
* Без них — настройки клиента, внутри которого создан объект, или
|
|
26
|
+
* глобальные `BXRestSettings`.
|
|
27
|
+
*/
|
|
28
|
+
constructor(settings?: iBXRestSettings);
|
|
18
29
|
simple<T, R = T, A = undefined>(url: string[], arg?: A, map?: (param: T | undefined) => R | undefined): NavvySimple<T, R, (A & ({} | null)) | undefined>;
|
|
19
30
|
simpleV3<T, R = T, A = undefined>(url: string[], arg?: A, map?: (param: T | undefined) => R | undefined): NavvySimple<T, R, (A & ({} | null)) | undefined>;
|
|
20
31
|
/**
|
|
@@ -31,6 +42,12 @@ export declare class Navvy {
|
|
|
31
42
|
} | undefined) => R[] | undefined): NavvyPagNavTasks<T, R, A>;
|
|
32
43
|
pagNavResultKey<T, R, A extends iBXRestPagination, K extends string>(url: string[], arg: A, key: K, map?: (param: Record<K, T[] | undefined> | undefined) => R[] | undefined): NavvyPagNavResultKey<T, R, A, K>;
|
|
33
44
|
pagNavResultKeyObject<T, R, A extends iBXRestPagination, K extends string>(url: string[], arg: A, key: K, map?: (param: Record<K, Record<string, T> | undefined> | undefined) => R[] | undefined): NavvyPagNavResultKeyObject<T, R, A, K>;
|
|
45
|
+
/**
|
|
46
|
+
* Для методов, у которых `result` — объект со списком под ключом `key`, например
|
|
47
|
+
* `{ products: [...] }`. `.res()` отдаёт объект как есть, `.resAll()` — такой же объект
|
|
48
|
+
* с записями всех страниц под ключом.
|
|
49
|
+
*/
|
|
50
|
+
pagNavKeyed<T extends object, R, A extends iBXRestPagination>(url: string[], arg: A, key: string, map?: (param: T | undefined) => R | undefined): NavvyPagNavKeyed<T, R, A>;
|
|
34
51
|
pagNavWithUselessKey<T, R, A extends iBXRestPagination>(url: string[], arg: A, map?: (param: Record<string, T> | undefined) => R[] | undefined): NavvyPagNavWithUselessKey<T, R, A>;
|
|
35
52
|
alterPagNav<T, R, A extends iBXRestAlternativePagination>(url: string[], arg: A, map?: (param: T[] | undefined) => R[] | undefined): NavvyAlterPagNav<T, R, A>;
|
|
36
53
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CountryCode, TimezoneName } from 'countries-and-timezones';
|
|
1
|
+
import type { CountryCode, TimezoneName } from 'countries-and-timezones' with { 'resolution-mode': 'import' };
|
|
2
2
|
import { iBXRestCalendarTypeEvent } from '../base/type';
|
|
3
3
|
import { iBXRestYesNo } from '../../base/yes-no';
|
|
4
4
|
export interface iBXRestCalendarEventGetAnswer extends iBXRestCalendarEventGetAnswerBase {
|
|
@@ -289,7 +289,7 @@ export interface iBXRestParamCrmRequisiteLinkGet {
|
|
|
289
289
|
entityId: iBXRestCrmRequisiteId;
|
|
290
290
|
}
|
|
291
291
|
export type iBXRestParamCrmRequisiteLinkUnregister = iBXRestParamCrmRequisiteLinkGet;
|
|
292
|
-
export interface iBXRestParamCrmRequisiteLinkList {
|
|
292
|
+
export interface iBXRestParamCrmRequisiteLinkList extends iBXRestPagination {
|
|
293
293
|
filter?: Record<string, any>;
|
|
294
294
|
order?: Record<string, iBXRestCrmRequisiteSortDirection>;
|
|
295
295
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { iBXRestCrmFieldDescription } from '../enum';
|
|
2
|
+
import { iBXRestPagination } from '../../base/api-pagination-bx';
|
|
2
3
|
/** Связь записи таймлайна с элементом CRM. */
|
|
3
4
|
export interface iBXRestCrmTimelineBinding {
|
|
4
5
|
/** Идентификатор записи таймлайна. */
|
|
@@ -23,7 +24,7 @@ export interface iBXRestParamCrmTimelineBindingChange {
|
|
|
23
24
|
fields: iBXRestCrmTimelineBindingFields;
|
|
24
25
|
}
|
|
25
26
|
/** Параметры получения связей записи таймлайна. */
|
|
26
|
-
export interface iBXRestParamCrmTimelineBindingList {
|
|
27
|
+
export interface iBXRestParamCrmTimelineBindingList extends iBXRestPagination {
|
|
27
28
|
/** Фильтр с обязательным идентификатором записи таймлайна. */
|
|
28
29
|
filter: {
|
|
29
30
|
OWNER_ID: number;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { iBXRestPullConfigGetBase, iBXRestPullConfigGetChannelsPrivate, iBXRestPullConfigGetChannelsPrivateHttp, iBXRestPullConfigGetChannelsShared, iBXRestPullConfigGetChannelsSharedHttp, iBXRestPullConfigPublicChannelsGet, iBXRestPullConfigPublicChannelsGetHttp } from '../../config/get';
|
|
2
2
|
export type iBXRestPullApplicationConfigGet = iBXRestPullConfigGetBase<iBXRestPullConfigGetChannelsShared, iBXRestPullConfigGetChannelsPrivate, iBXRestPullConfigPublicChannelsGet>;
|
|
3
|
-
export type iBXRestPullApplicationConfigGetHttp = iBXRestPullConfigGetBase<iBXRestPullConfigGetChannelsSharedHttp, iBXRestPullConfigGetChannelsPrivateHttp, iBXRestPullConfigPublicChannelsGetHttp>;
|
|
3
|
+
export type iBXRestPullApplicationConfigGetHttp = iBXRestPullConfigGetBase<iBXRestPullConfigGetChannelsSharedHttp, iBXRestPullConfigGetChannelsPrivateHttp, iBXRestPullConfigPublicChannelsGetHttp, false>;
|