@partium/js-sdk 14.0.2 → 14.1.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/catalog/index.js +21 -1
- package/catalog/models/catalog-image-info.js +22 -1
- package/catalog/models/catalog-image.js +40 -1
- package/catalog/models/upsert-catalog-images-dto.js +3 -1
- package/catalog/models/upsert-images-result.js +3 -1
- package/catalog/services/images.service.js +62 -1
- package/core/constants/constants.js +16 -1
- package/core/decorators/injection-identifier.js +19 -1
- package/core/factories/paginated-request-service.factory.js +33 -1
- package/core/index.js +63 -1
- package/core/integration-defaults/http/fetch-api-http-error-helper.js +129 -1
- package/core/integration-defaults/http/file-transfer/axios-file-transfer.service.js +138 -1
- package/core/integration-defaults/http/file-transfer/fetch-api-file-transfer.service.js +210 -1
- package/core/integration-defaults/http/handle-axios-error-helper.js +79 -1
- package/core/integration-defaults/http/https-client/axios-https-client.service.js +182 -1
- package/core/integration-defaults/http/https-client/fetch-api-https-client.service.js +198 -1
- package/core/integration-defaults/http/js-oauth-keycloak-https.service.js +32 -1
- package/core/integration-defaults/js-p-file.js +36 -1
- package/core/integration-defaults/session/js-oauth-api-key-session.service.js +206 -1
- package/core/integration-defaults/session/js-oauth-keycloak-auth-config.js +64 -1
- package/core/integration-defaults/session/js-oauth-keycloak-session.service.js +257 -1
- package/core/integration-defaults/web-device-status.service.js +125 -1
- package/core/integration-defaults/web-file.service.js +135 -1
- package/core/integration-defaults/web-indexeddb.service.js +142 -1
- package/core/integration-defaults/web-local-storage.service.js +310 -1
- package/core/models/api-object.js +16 -1
- package/core/models/auth-config.js +72 -1
- package/core/models/device-info.js +34 -1
- package/core/models/error.js +107 -1
- package/core/models/formatted-string.js +14 -1
- package/core/models/i18n-map.js +61 -1
- package/core/models/i18n-string.js +35 -1
- package/core/models/log.js +137 -1
- package/core/models/organization.js +159 -1
- package/core/models/p-file.js +23 -1
- package/core/models/paginated-list.js +41 -1
- package/core/models/partium-config.js +43 -1
- package/core/models/user-token.js +11 -1
- package/core/models/user.js +88 -1
- package/core/services/backend-status.service.js +147 -1
- package/core/services/base-login-init.service.js +57 -1
- package/core/services/base.service.js +37 -1
- package/core/services/device-status.service.interface.js +117 -1
- package/core/services/file.service.interface.js +61 -1
- package/core/services/http/file-transfer/file-transfer.service.interface.js +125 -1
- package/core/services/http/https-client/https-client.service.interface.js +152 -1
- package/core/services/http/https.service.interface.js +294 -1
- package/core/services/http/oauth-https.service.js +218 -1
- package/core/services/local-storage.service.interface.js +378 -1
- package/core/services/log.service.js +139 -1
- package/core/services/organization.service.js +202 -1
- package/core/services/paginated-request.service.js +160 -1
- package/core/services/recent-parts.service.js +194 -1
- package/core/services/service-provider.js +114 -1
- package/core/services/session/oauth-session.service.js +104 -1
- package/core/services/session/session.service.interface.js +367 -1
- package/core/utils/general-helper.js +110 -1
- package/data/index.js +44 -1
- package/data/models/announcement.js +70 -1
- package/data/models/assembly-hierarchy-node-breadcrumb.js +51 -1
- package/data/models/assembly-hierarchy-node.js +46 -1
- package/data/models/attribute.js +106 -1
- package/data/models/csa-request-search.js +46 -1
- package/data/models/csa-request-status.js +51 -1
- package/data/models/csa-request.js +112 -1
- package/data/models/document.js +17 -1
- package/data/models/filter-key.js +36 -1
- package/data/models/filter-option-value.js +41 -1
- package/data/models/image.d.ts +6 -1
- package/data/models/image.js +77 -1
- package/data/models/inquiry.js +71 -1
- package/data/models/mounting-location.js +58 -1
- package/data/models/multiple-expert-searches.js +40 -1
- package/data/models/part-enrichment-data.js +50 -1
- package/data/models/part.js +168 -1
- package/data/models/shopping-cart.js +60 -1
- package/data/services/announcement.service.js +89 -1
- package/data/services/assembly-hierarchy-nodes.service.js +193 -1
- package/data/services/csa-helper.service.js +158 -1
- package/data/services/customer-service-assistance.service.js +276 -1
- package/data/services/filter.service.js +97 -1
- package/data/services/inquiry.service.js +68 -1
- package/data/services/part-attribute.service.js +118 -1
- package/data/services/part-enrichment.service.js +56 -1
- package/data/services/part.service.js +182 -1
- package/data/services/related-parts.service.js +83 -1
- package/data/services/shopping-cart.service.js +152 -1
- package/find/index.js +51 -1
- package/find/models/assets/asset.js +32 -1
- package/find/models/search-filter.js +205 -1
- package/find/models/search-input.js +3 -1
- package/find/models/search-output.js +3 -1
- package/find/models/search-result-status.js +40 -1
- package/find/models/search-session-log-object.js +22 -1
- package/find/models/search-status/cv-search-status.js +22 -1
- package/find/models/search-status/search-filter-status.js +36 -1
- package/find/models/search-status/search-status.js +56 -1
- package/find/models/search-status/tag-search-status.js +23 -1
- package/find/models/search-status/text-search-status.js +18 -1
- package/find/models/search-tag.js +16 -1
- package/find/models/smart-filter.js +49 -1
- package/find/models/tagable/i18n-tagable.js +37 -1
- package/find/models/tagable/tagable-base.js +22 -1
- package/find/models/tagable/tagable.js +37 -1
- package/find/models/text-search-config.js +70 -1
- package/find/models/text-search-manipulator.js +90 -1
- package/find/models/text-search-result-item/text-search-error.js +12 -1
- package/find/models/text-search-result-item/text-search-result-item-document.js +34 -1
- package/find/models/text-search-result-item/text-search-result-item-part.js +36 -1
- package/find/models/text-search-result-item/text-search-result-item-recent-query.js +35 -1
- package/find/models/text-search-result-item/text-search-result-item-unknown.js +38 -1
- package/find/models/text-search-result-item/text-search-result-item.js +22 -1
- package/find/services/asset.service.js +348 -1
- package/find/services/filter-uploaders/filter-uploader.js +3 -1
- package/find/services/filter-uploaders/update-filters-uploader.js +77 -1
- package/find/services/filter-uploaders/update-filters.model.js +7 -1
- package/find/services/search/cv-search.service.js +214 -1
- package/find/services/search/recent-text-search-queries.service.js +260 -1
- package/find/services/search/search-result.service.js +539 -1
- package/find/services/search/search.service.js +514 -1
- package/find/services/search/tag-search.service.js +124 -1
- package/find/services/search/text-search.service.js +316 -1
- package/find/services/search-filter.service.js +292 -1
- package/find/utils/search-helper.js +75 -1
- package/gen/sdk-version.d.ts +1 -1
- package/gen/sdk-version.js +5 -1
- package/index.js +392 -1
- package/management/index.js +21 -1
- package/management/models/api-key-list-response.js +3 -1
- package/management/models/api-key-type.js +9 -1
- package/management/models/api-key.js +3 -1
- package/management/services/api-key.service.js +53 -1
- package/ocr/index.js +20 -1
- package/ocr/models/detect-response.js +3 -1
- package/ocr/models/detected-text-entry.js +3 -1
- package/ocr/services/ocr.service.js +59 -1
- package/package.json +1 -1
- package/user-data/index.js +21 -1
- package/user-data/models/part-with-nullable.js +3 -1
- package/user-data/models/request-list/request-list.js +63 -1
- package/user-data/services/favorite/favorite.service.js +108 -1
- package/user-data/services/request-list/request-list.service.js +133 -1
package/catalog/index.js
CHANGED
|
@@ -1,2 +1,22 @@
|
|
|
1
1
|
// Copyright © 2022-2025 Partium, Inc. DBA Partium
|
|
2
|
-
"use strict";
|
|
2
|
+
"use strict";
|
|
3
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
4
|
+
if (k2 === undefined) k2 = k;
|
|
5
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
6
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
7
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
8
|
+
}
|
|
9
|
+
Object.defineProperty(o, k2, desc);
|
|
10
|
+
}) : (function(o, m, k, k2) {
|
|
11
|
+
if (k2 === undefined) k2 = k;
|
|
12
|
+
o[k2] = m[k];
|
|
13
|
+
}));
|
|
14
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
15
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
16
|
+
};
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
__exportStar(require("./models/catalog-image-info"), exports);
|
|
19
|
+
__exportStar(require("./models/upsert-catalog-images-dto"), exports);
|
|
20
|
+
__exportStar(require("./models/catalog-image"), exports);
|
|
21
|
+
__exportStar(require("./services/images.service"), exports);
|
|
22
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -1,2 +1,23 @@
|
|
|
1
1
|
// Copyright © 2022-2025 Partium, Inc. DBA Partium
|
|
2
|
-
"use strict";
|
|
2
|
+
"use strict";
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.CatalogImageInfo = void 0;
|
|
5
|
+
/**
|
|
6
|
+
* Meta data information to define the purpose of an image
|
|
7
|
+
*/
|
|
8
|
+
var CatalogImageInfo;
|
|
9
|
+
(function (CatalogImageInfo) {
|
|
10
|
+
/**
|
|
11
|
+
* Image is used a reference image for searching
|
|
12
|
+
*/
|
|
13
|
+
CatalogImageInfo["SEARCHABLE"] = "searchable";
|
|
14
|
+
/**
|
|
15
|
+
* Image is displayed with the corresponding part in the user interface
|
|
16
|
+
*/
|
|
17
|
+
CatalogImageInfo["DISPLAY"] = "display";
|
|
18
|
+
/**
|
|
19
|
+
* Image is used a reference image for searching and displayed with the corresponding part in the user interface
|
|
20
|
+
*/
|
|
21
|
+
CatalogImageInfo["SEARCHABLE_AND_DISPLAY"] = "searchable display";
|
|
22
|
+
})(CatalogImageInfo || (exports.CatalogImageInfo = CatalogImageInfo = {}));
|
|
23
|
+
//# sourceMappingURL=catalog-image-info.js.map
|
|
@@ -1,2 +1,41 @@
|
|
|
1
1
|
// Copyright © 2022-2025 Partium, Inc. DBA Partium
|
|
2
|
-
"use strict";
|
|
2
|
+
"use strict";
|
|
3
|
+
var __extends = (this && this.__extends) || (function () {
|
|
4
|
+
var extendStatics = function (d, b) {
|
|
5
|
+
extendStatics = Object.setPrototypeOf ||
|
|
6
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
7
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
8
|
+
return extendStatics(d, b);
|
|
9
|
+
};
|
|
10
|
+
return function (d, b) {
|
|
11
|
+
if (typeof b !== "function" && b !== null)
|
|
12
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
13
|
+
extendStatics(d, b);
|
|
14
|
+
function __() { this.constructor = d; }
|
|
15
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
16
|
+
};
|
|
17
|
+
})();
|
|
18
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
+
exports.CatalogImage = void 0;
|
|
20
|
+
var core_1 = require("../../core");
|
|
21
|
+
/**
|
|
22
|
+
* An image in the catalog
|
|
23
|
+
*/
|
|
24
|
+
var CatalogImage = /** @class */ (function (_super) {
|
|
25
|
+
__extends(CatalogImage, _super);
|
|
26
|
+
function CatalogImage(init) {
|
|
27
|
+
var _this = _super.call(this) || this;
|
|
28
|
+
Object.assign(_this, init);
|
|
29
|
+
return _this;
|
|
30
|
+
}
|
|
31
|
+
CatalogImage.fromAPIResponse = function (imageFromAPI) {
|
|
32
|
+
return new CatalogImage({
|
|
33
|
+
imageId: imageFromAPI.image_id,
|
|
34
|
+
externalPartId: imageFromAPI.part_id,
|
|
35
|
+
info: imageFromAPI.info,
|
|
36
|
+
});
|
|
37
|
+
};
|
|
38
|
+
return CatalogImage;
|
|
39
|
+
}(core_1.APIObject));
|
|
40
|
+
exports.CatalogImage = CatalogImage;
|
|
41
|
+
//# sourceMappingURL=catalog-image.js.map
|
|
@@ -1,2 +1,63 @@
|
|
|
1
1
|
// Copyright © 2022-2025 Partium, Inc. DBA Partium
|
|
2
|
-
"use strict";
|
|
2
|
+
"use strict";
|
|
3
|
+
var __extends = (this && this.__extends) || (function () {
|
|
4
|
+
var extendStatics = function (d, b) {
|
|
5
|
+
extendStatics = Object.setPrototypeOf ||
|
|
6
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
7
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
8
|
+
return extendStatics(d, b);
|
|
9
|
+
};
|
|
10
|
+
return function (d, b) {
|
|
11
|
+
if (typeof b !== "function" && b !== null)
|
|
12
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
13
|
+
extendStatics(d, b);
|
|
14
|
+
function __() { this.constructor = d; }
|
|
15
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
16
|
+
};
|
|
17
|
+
})();
|
|
18
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
19
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
20
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
21
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
22
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
23
|
+
};
|
|
24
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
+
exports.ImagesServiceImpl = void 0;
|
|
26
|
+
var injection_identifier_1 = require("../../core/decorators/injection-identifier");
|
|
27
|
+
var base_service_1 = require("../../core/services/base.service");
|
|
28
|
+
var https_service_interface_1 = require("../../core/services/http/https.service.interface");
|
|
29
|
+
var ImagesServiceImpl = /** @class */ (function (_super) {
|
|
30
|
+
__extends(ImagesServiceImpl, _super);
|
|
31
|
+
function ImagesServiceImpl(serviceProvider) {
|
|
32
|
+
return _super.call(this, serviceProvider) || this;
|
|
33
|
+
}
|
|
34
|
+
ImagesServiceImpl.prototype.onCreate = function () {
|
|
35
|
+
this.httpsService = this.serviceProvider.getService(https_service_interface_1.HttpsService);
|
|
36
|
+
};
|
|
37
|
+
/**
|
|
38
|
+
* Upserts images.
|
|
39
|
+
*
|
|
40
|
+
* @param request - The images to upsert.
|
|
41
|
+
* @returns An Observable that emits the upserted images.
|
|
42
|
+
*/
|
|
43
|
+
ImagesServiceImpl.prototype.upsert = function (request) {
|
|
44
|
+
var formData = new FormData();
|
|
45
|
+
request.files.forEach(function (file) {
|
|
46
|
+
formData.append('files', file, file.name);
|
|
47
|
+
});
|
|
48
|
+
formData.append('images', JSON.stringify(request.images.map(function (image) { return ({
|
|
49
|
+
image_id: image.imageId,
|
|
50
|
+
part_id: image.externalPartId,
|
|
51
|
+
info: image.info,
|
|
52
|
+
}); })));
|
|
53
|
+
return this.httpsService.post('images', formData, null, https_service_interface_1.BACKEND_SERVICE.CATALOG, {
|
|
54
|
+
'Content-Type': 'multipart/form-data',
|
|
55
|
+
});
|
|
56
|
+
};
|
|
57
|
+
ImagesServiceImpl = __decorate([
|
|
58
|
+
(0, injection_identifier_1.InjectionIdentifier)('ImagesService')
|
|
59
|
+
], ImagesServiceImpl);
|
|
60
|
+
return ImagesServiceImpl;
|
|
61
|
+
}(base_service_1.BaseService));
|
|
62
|
+
exports.ImagesServiceImpl = ImagesServiceImpl;
|
|
63
|
+
//# sourceMappingURL=images.service.js.map
|
|
@@ -1,2 +1,17 @@
|
|
|
1
1
|
// Copyright © 2022-2025 Partium, Inc. DBA Partium
|
|
2
|
-
"use strict";
|
|
2
|
+
"use strict";
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.BACKEND_STATUS_FALLBACK_URL = exports.REL_CATALOG_API_URL = exports.REL_MANAGEMENT_API_URL = exports.REL_STATUS_API_URL = exports.REL_AUTH_API_URL = exports.REL_OCR_API_URL = exports.REL_USER_DATA_API_URL = exports.REL_LOGS_API_URL = exports.REL_CSA_API_URL = exports.REL_DATA_API_URL = exports.REL_FIND_API_URL = exports.PARTIUM_API_VERSION = void 0;
|
|
5
|
+
exports.PARTIUM_API_VERSION = 1;
|
|
6
|
+
exports.REL_FIND_API_URL = '_find';
|
|
7
|
+
exports.REL_DATA_API_URL = '_data';
|
|
8
|
+
exports.REL_CSA_API_URL = '_csa';
|
|
9
|
+
exports.REL_LOGS_API_URL = '_logs';
|
|
10
|
+
exports.REL_USER_DATA_API_URL = '_ud';
|
|
11
|
+
exports.REL_OCR_API_URL = '_ocr';
|
|
12
|
+
exports.REL_AUTH_API_URL = '_auth'; // for non-UI-flows
|
|
13
|
+
exports.REL_STATUS_API_URL = '_status';
|
|
14
|
+
exports.REL_MANAGEMENT_API_URL = 'management';
|
|
15
|
+
exports.REL_CATALOG_API_URL = 'catalog';
|
|
16
|
+
exports.BACKEND_STATUS_FALLBACK_URL = 'https://example.com'; // fallback url to check if internet is available, in case backend-status is not reachable
|
|
17
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -1,2 +1,20 @@
|
|
|
1
1
|
// Copyright © 2022-2025 Partium, Inc. DBA Partium
|
|
2
|
-
"use strict";
|
|
2
|
+
"use strict";
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.InjectionIdentifier = void 0;
|
|
5
|
+
/**
|
|
6
|
+
* Add a static function called getInjectionIdentifierName, that
|
|
7
|
+
* returns the name, that was defined by InjectionIdentifier.
|
|
8
|
+
* Used for ServiceInjection.
|
|
9
|
+
*
|
|
10
|
+
* @param constructor the class that should get the method added
|
|
11
|
+
* @param name unique name to refer to this class during injection
|
|
12
|
+
*/
|
|
13
|
+
var InjectionIdentifier = function (name) { return function (constructor // TODO "Function" instead of "any"
|
|
14
|
+
) {
|
|
15
|
+
constructor.getInjectionIdentifierName = function () {
|
|
16
|
+
return name;
|
|
17
|
+
};
|
|
18
|
+
}; };
|
|
19
|
+
exports.InjectionIdentifier = InjectionIdentifier;
|
|
20
|
+
//# sourceMappingURL=injection-identifier.js.map
|
|
@@ -1,2 +1,34 @@
|
|
|
1
1
|
// Copyright © 2022-2025 Partium, Inc. DBA Partium
|
|
2
|
-
"use strict";
|
|
2
|
+
"use strict";
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.PaginatedRequestServiceFactory = void 0;
|
|
5
|
+
var https_service_interface_1 = require("../services/http/https.service.interface");
|
|
6
|
+
var paginated_request_service_1 = require("../services/paginated-request.service");
|
|
7
|
+
/**
|
|
8
|
+
* Factory that produces Services to fetch paginated items from a defined API-endpoint
|
|
9
|
+
*/
|
|
10
|
+
var PaginatedRequestServiceFactory = /** @class */ (function () {
|
|
11
|
+
function PaginatedRequestServiceFactory() {
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Generate a new service for fetching paginated items from a GET endpoint
|
|
15
|
+
*
|
|
16
|
+
* @param createObject function that can create an object of the requested type from the backend-response
|
|
17
|
+
* @param httpsService https-service to perform requests
|
|
18
|
+
* @param url url of the API-endpoint
|
|
19
|
+
* @param backendService which backend to target (optional)
|
|
20
|
+
* @param urlParams url parameters to append to the request (optional)
|
|
21
|
+
* @param pageSize how many items should be loaded per page (optional)
|
|
22
|
+
* @param cursorPaginationEnabled if the pagination functionality is enabled (optional)
|
|
23
|
+
* @returns service that allows to load parts from the given endpoint+configuration
|
|
24
|
+
*/
|
|
25
|
+
PaginatedRequestServiceFactory.generatePaginatedRequestService = function (createObject, httpsService, url, backendService, urlParams, pageSize, cursorPaginationEnabled) {
|
|
26
|
+
if (backendService === void 0) { backendService = https_service_interface_1.BACKEND_SERVICE.DATA; }
|
|
27
|
+
if (urlParams === void 0) { urlParams = []; }
|
|
28
|
+
if (pageSize === void 0) { pageSize = 25; }
|
|
29
|
+
return new paginated_request_service_1.PaginatedRequestServiceImpl(createObject, httpsService, url, backendService, urlParams, pageSize, cursorPaginationEnabled);
|
|
30
|
+
};
|
|
31
|
+
return PaginatedRequestServiceFactory;
|
|
32
|
+
}());
|
|
33
|
+
exports.PaginatedRequestServiceFactory = PaginatedRequestServiceFactory;
|
|
34
|
+
//# sourceMappingURL=paginated-request-service.factory.js.map
|
package/core/index.js
CHANGED
|
@@ -1,2 +1,64 @@
|
|
|
1
1
|
// Copyright © 2022-2025 Partium, Inc. DBA Partium
|
|
2
|
-
"use strict";
|
|
2
|
+
"use strict";
|
|
3
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
4
|
+
if (k2 === undefined) k2 = k;
|
|
5
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
6
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
7
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
8
|
+
}
|
|
9
|
+
Object.defineProperty(o, k2, desc);
|
|
10
|
+
}) : (function(o, m, k, k2) {
|
|
11
|
+
if (k2 === undefined) k2 = k;
|
|
12
|
+
o[k2] = m[k];
|
|
13
|
+
}));
|
|
14
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
15
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
16
|
+
};
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
__exportStar(require("./decorators/injection-identifier"), exports);
|
|
19
|
+
__exportStar(require("./integration-defaults/js-p-file"), exports);
|
|
20
|
+
__exportStar(require("./integration-defaults/web-local-storage.service"), exports);
|
|
21
|
+
__exportStar(require("./integration-defaults/web-device-status.service"), exports);
|
|
22
|
+
__exportStar(require("./integration-defaults/web-indexeddb.service"), exports);
|
|
23
|
+
__exportStar(require("./integration-defaults/web-file.service"), exports);
|
|
24
|
+
__exportStar(require("./integration-defaults/http/js-oauth-keycloak-https.service"), exports);
|
|
25
|
+
__exportStar(require("./integration-defaults/http/https-client/axios-https-client.service"), exports);
|
|
26
|
+
__exportStar(require("./integration-defaults/http/https-client/fetch-api-https-client.service"), exports);
|
|
27
|
+
__exportStar(require("./integration-defaults/http/file-transfer/axios-file-transfer.service"), exports);
|
|
28
|
+
__exportStar(require("./integration-defaults/http/file-transfer/fetch-api-file-transfer.service"), exports);
|
|
29
|
+
__exportStar(require("./integration-defaults/session/js-oauth-keycloak-session.service"), exports);
|
|
30
|
+
__exportStar(require("./integration-defaults/session/js-oauth-keycloak-auth-config"), exports);
|
|
31
|
+
__exportStar(require("./integration-defaults/session/js-oauth-api-key-session.service"), exports);
|
|
32
|
+
__exportStar(require("./models/i18n-string"), exports);
|
|
33
|
+
__exportStar(require("./models/partium-config"), exports);
|
|
34
|
+
__exportStar(require("./models/auth-config"), exports);
|
|
35
|
+
__exportStar(require("./models/p-file"), exports);
|
|
36
|
+
__exportStar(require("./models/formatted-string"), exports);
|
|
37
|
+
__exportStar(require("./models/i18n-map"), exports);
|
|
38
|
+
__exportStar(require("./models/error"), exports);
|
|
39
|
+
__exportStar(require("./models/organization"), exports);
|
|
40
|
+
__exportStar(require("./models/api-object"), exports);
|
|
41
|
+
__exportStar(require("./models/paginated-list"), exports);
|
|
42
|
+
__exportStar(require("./models/log"), exports);
|
|
43
|
+
__exportStar(require("./models/device-info"), exports);
|
|
44
|
+
__exportStar(require("./models/user-token"), exports);
|
|
45
|
+
__exportStar(require("./models/user"), exports);
|
|
46
|
+
__exportStar(require("./services/service-provider"), exports);
|
|
47
|
+
__exportStar(require("./services/local-storage.service.interface"), exports);
|
|
48
|
+
__exportStar(require("./services/backend-status.service"), exports);
|
|
49
|
+
__exportStar(require("./services/http/https.service.interface"), exports);
|
|
50
|
+
__exportStar(require("./services/http/https-client/https-client.service.interface"), exports);
|
|
51
|
+
__exportStar(require("./services/http/file-transfer/file-transfer.service.interface"), exports);
|
|
52
|
+
__exportStar(require("./services/http/oauth-https.service"), exports);
|
|
53
|
+
__exportStar(require("./services/base.service"), exports);
|
|
54
|
+
__exportStar(require("./services/base-login-init.service"), exports);
|
|
55
|
+
__exportStar(require("./services/device-status.service.interface"), exports);
|
|
56
|
+
__exportStar(require("./services/session/session.service.interface"), exports);
|
|
57
|
+
__exportStar(require("./services/session/oauth-session.service"), exports);
|
|
58
|
+
__exportStar(require("./services/organization.service"), exports);
|
|
59
|
+
__exportStar(require("./services/paginated-request.service"), exports);
|
|
60
|
+
__exportStar(require("./services/log.service"), exports);
|
|
61
|
+
__exportStar(require("./factories/paginated-request-service.factory"), exports);
|
|
62
|
+
__exportStar(require("./services/file.service.interface"), exports);
|
|
63
|
+
__exportStar(require("./services/recent-parts.service"), exports);
|
|
64
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -1,2 +1,130 @@
|
|
|
1
1
|
// Copyright © 2022-2025 Partium, Inc. DBA Partium
|
|
2
|
-
"use strict";
|
|
2
|
+
"use strict";
|
|
3
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
4
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
5
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
6
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
7
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
8
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
9
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
10
|
+
});
|
|
11
|
+
};
|
|
12
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
13
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
14
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
15
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
16
|
+
function step(op) {
|
|
17
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
18
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
19
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
20
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
21
|
+
switch (op[0]) {
|
|
22
|
+
case 0: case 1: t = op; break;
|
|
23
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
24
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
25
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
26
|
+
default:
|
|
27
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
28
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
29
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
30
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
31
|
+
if (t[2]) _.ops.pop();
|
|
32
|
+
_.trys.pop(); continue;
|
|
33
|
+
}
|
|
34
|
+
op = body.call(thisArg, _);
|
|
35
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
36
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
40
|
+
exports.FetchAPIHttpErrorHelper = void 0;
|
|
41
|
+
var rxjs_1 = require("rxjs");
|
|
42
|
+
var operators_1 = require("rxjs/operators");
|
|
43
|
+
var error_1 = require("../../models/error");
|
|
44
|
+
/**
|
|
45
|
+
* Helper function that provides error-handling and -parsing functionality for fetch-API-Errors.
|
|
46
|
+
*/
|
|
47
|
+
var FetchAPIHttpErrorHelper = /** @class */ (function () {
|
|
48
|
+
function FetchAPIHttpErrorHelper() {
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Process and interpret errors that appear during the request and
|
|
52
|
+
* wrap them into SdkError objects
|
|
53
|
+
*
|
|
54
|
+
* @param error the error that occurred
|
|
55
|
+
*/
|
|
56
|
+
FetchAPIHttpErrorHelper.processError = function (error) {
|
|
57
|
+
// console.log("processError", error);
|
|
58
|
+
if (error instanceof error_1.SdkError) {
|
|
59
|
+
return (0, rxjs_1.throwError)(error);
|
|
60
|
+
}
|
|
61
|
+
if (error instanceof Response) {
|
|
62
|
+
return (0, rxjs_1.from)(FetchAPIHttpErrorHelper.getErrorCodeFromError(error)).pipe((0, operators_1.mergeMap)(function (errorCode) {
|
|
63
|
+
switch (error.status) {
|
|
64
|
+
case 400:
|
|
65
|
+
return (0, rxjs_1.throwError)(new error_1.SdkError(error_1.SDK_ERROR_CODES.BAD_REQUEST, error));
|
|
66
|
+
case 401:
|
|
67
|
+
if ([
|
|
68
|
+
error_1.SDK_ERROR_CODES.INVALID_TOKEN,
|
|
69
|
+
error_1.SDK_ERROR_CODES.TOKEN_EXPIRED
|
|
70
|
+
].indexOf(errorCode) !== -1) {
|
|
71
|
+
return (0, rxjs_1.throwError)(new error_1.SdkError(errorCode, error));
|
|
72
|
+
}
|
|
73
|
+
return (0, rxjs_1.throwError)(new error_1.SdkError(error_1.SDK_ERROR_CODES.USER_UNAUTHORIZED, error));
|
|
74
|
+
case 403:
|
|
75
|
+
return (0, rxjs_1.throwError)(new error_1.SdkError(error_1.SDK_ERROR_CODES.FORBIDDEN, error));
|
|
76
|
+
case 404:
|
|
77
|
+
return (0, rxjs_1.throwError)(new error_1.SdkError(error_1.SDK_ERROR_CODES.NOT_FOUND, error));
|
|
78
|
+
case 422:
|
|
79
|
+
if ([
|
|
80
|
+
error_1.SDK_ERROR_CODES.INVALID_MULTIPLE_IMAGE_SEARCHES,
|
|
81
|
+
error_1.SDK_ERROR_CODES.INVALID_SEARCH_LANGUAGE,
|
|
82
|
+
error_1.SDK_ERROR_CODES.INVALID_SEARCH_MODALITY_CONFIG
|
|
83
|
+
].indexOf(errorCode) !== -1) {
|
|
84
|
+
return (0, rxjs_1.throwError)(new error_1.SdkError(errorCode, error));
|
|
85
|
+
}
|
|
86
|
+
return (0, rxjs_1.throwError)(new error_1.SdkError(error_1.SDK_ERROR_CODES.UNPROCESSABLE_ENTITY, error));
|
|
87
|
+
case 500:
|
|
88
|
+
return (0, rxjs_1.throwError)(new error_1.SdkError(error_1.SDK_ERROR_CODES.INTERNAL_SERVER_ERROR, error));
|
|
89
|
+
case 501:
|
|
90
|
+
return (0, rxjs_1.throwError)(new error_1.SdkError(error_1.SDK_ERROR_CODES.NOT_IMPLEMENTED, error));
|
|
91
|
+
case 502:
|
|
92
|
+
return (0, rxjs_1.throwError)(new error_1.SdkError(error_1.SDK_ERROR_CODES.BAD_GATEWAY, error));
|
|
93
|
+
case 503:
|
|
94
|
+
return (0, rxjs_1.throwError)(new error_1.SdkError(error_1.SDK_ERROR_CODES.SERVICE_UNAVAILABLE, error));
|
|
95
|
+
case 504:
|
|
96
|
+
return (0, rxjs_1.throwError)(new error_1.SdkError(error_1.SDK_ERROR_CODES.GATEWAY_TIMEOUT, error));
|
|
97
|
+
}
|
|
98
|
+
}));
|
|
99
|
+
}
|
|
100
|
+
// anything else
|
|
101
|
+
// default behavior -> return unknown error
|
|
102
|
+
return (0, rxjs_1.throwError)(new error_1.SdkError(error_1.SDK_ERROR_CODES.UNKNOWN_ERROR, error));
|
|
103
|
+
};
|
|
104
|
+
FetchAPIHttpErrorHelper.getErrorCodeFromError = function (response) {
|
|
105
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
106
|
+
var res, error_2;
|
|
107
|
+
return __generator(this, function (_a) {
|
|
108
|
+
switch (_a.label) {
|
|
109
|
+
case 0:
|
|
110
|
+
_a.trys.push([0, 2, , 3]);
|
|
111
|
+
return [4 /*yield*/, response.clone().json()];
|
|
112
|
+
case 1:
|
|
113
|
+
res = _a.sent();
|
|
114
|
+
console.log("res");
|
|
115
|
+
if (res === null || res === void 0 ? void 0 : res.errorCode) {
|
|
116
|
+
return [2 /*return*/, res.errorCode];
|
|
117
|
+
}
|
|
118
|
+
return [3 /*break*/, 3];
|
|
119
|
+
case 2:
|
|
120
|
+
error_2 = _a.sent();
|
|
121
|
+
return [2 /*return*/, error_1.SDK_ERROR_CODES.UNKNOWN_ERROR];
|
|
122
|
+
case 3: return [2 /*return*/, error_1.SDK_ERROR_CODES.UNKNOWN_ERROR];
|
|
123
|
+
}
|
|
124
|
+
});
|
|
125
|
+
});
|
|
126
|
+
};
|
|
127
|
+
return FetchAPIHttpErrorHelper;
|
|
128
|
+
}());
|
|
129
|
+
exports.FetchAPIHttpErrorHelper = FetchAPIHttpErrorHelper;
|
|
130
|
+
//# sourceMappingURL=fetch-api-http-error-helper.js.map
|
|
@@ -1,2 +1,139 @@
|
|
|
1
1
|
// Copyright © 2022-2025 Partium, Inc. DBA Partium
|
|
2
|
-
"use strict";
|
|
2
|
+
"use strict";
|
|
3
|
+
var __extends = (this && this.__extends) || (function () {
|
|
4
|
+
var extendStatics = function (d, b) {
|
|
5
|
+
extendStatics = Object.setPrototypeOf ||
|
|
6
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
7
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
8
|
+
return extendStatics(d, b);
|
|
9
|
+
};
|
|
10
|
+
return function (d, b) {
|
|
11
|
+
if (typeof b !== "function" && b !== null)
|
|
12
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
13
|
+
extendStatics(d, b);
|
|
14
|
+
function __() { this.constructor = d; }
|
|
15
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
16
|
+
};
|
|
17
|
+
})();
|
|
18
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
+
exports.AxiosFileTransferService = void 0;
|
|
20
|
+
var file_transfer_service_interface_1 = require("../../../services/http/file-transfer/file-transfer.service.interface");
|
|
21
|
+
var rxjs_1 = require("rxjs");
|
|
22
|
+
var axios_observable_1 = require("axios-observable");
|
|
23
|
+
var js_p_file_1 = require("../../js-p-file");
|
|
24
|
+
var operators_1 = require("rxjs/operators");
|
|
25
|
+
var handle_axios_error_helper_1 = require("../handle-axios-error-helper");
|
|
26
|
+
var device_status_service_interface_1 = require("../../../services/device-status.service.interface");
|
|
27
|
+
var error_1 = require("../../../models/error");
|
|
28
|
+
/**
|
|
29
|
+
* Implementation of the FileTransferService for providing basic file-transfer
|
|
30
|
+
* functionality, such as upload and download, for browser-based applications.
|
|
31
|
+
*
|
|
32
|
+
* In an error case all the functions will return an SDK_ERROR_CODE.
|
|
33
|
+
*/
|
|
34
|
+
var AxiosFileTransferService = /** @class */ (function (_super) {
|
|
35
|
+
__extends(AxiosFileTransferService, _super);
|
|
36
|
+
function AxiosFileTransferService() {
|
|
37
|
+
return _super !== null && _super.apply(this, arguments) || this;
|
|
38
|
+
}
|
|
39
|
+
AxiosFileTransferService.prototype.onCreate = function () {
|
|
40
|
+
_super.prototype.onCreate.call(this);
|
|
41
|
+
this.deviceStatusService = this.serviceProvider.getService(device_status_service_interface_1.DeviceStatusService);
|
|
42
|
+
};
|
|
43
|
+
/**
|
|
44
|
+
* Upload the given file-Blob to the given url and emit the upload status and
|
|
45
|
+
* progress during the upload-process.
|
|
46
|
+
*
|
|
47
|
+
* @param fileToUpload JsPFile object that wraps the file-blob to upload
|
|
48
|
+
* @param uploadUrl the target upload url (must be publicly available without authentication)
|
|
49
|
+
* @returns Observable that emits the UploadStatus
|
|
50
|
+
*/
|
|
51
|
+
AxiosFileTransferService.prototype.uploadFile = function (fileToUpload, uploadUrl) {
|
|
52
|
+
var _this = this;
|
|
53
|
+
return new rxjs_1.Observable(function (observer) {
|
|
54
|
+
var config = {
|
|
55
|
+
method: 'PUT',
|
|
56
|
+
url: uploadUrl,
|
|
57
|
+
data: fileToUpload.file,
|
|
58
|
+
onUploadProgress: function (progressEvent) {
|
|
59
|
+
var percentCompleted = Math.round((progressEvent.loaded * 100) / progressEvent.total);
|
|
60
|
+
observer.next({
|
|
61
|
+
status: file_transfer_service_interface_1.TRANSFER_STATUS.TRANSFERRING,
|
|
62
|
+
progress: percentCompleted
|
|
63
|
+
});
|
|
64
|
+
// console.log("UPLOAD PROGRESS", progressEvent);
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
_this.validateIsKnownUrlOrCry(uploadUrl);
|
|
68
|
+
axios_observable_1.default.request(config)
|
|
69
|
+
.pipe((0, operators_1.catchError)(function (error) { return _this.checkInternetConnectivity(error); }), (0, operators_1.catchError)(handle_axios_error_helper_1.HandleAxiosErrorHelper.processError))
|
|
70
|
+
.subscribe(function (res) {
|
|
71
|
+
observer.next({
|
|
72
|
+
status: file_transfer_service_interface_1.TRANSFER_STATUS.TRANSFER_FINISHED,
|
|
73
|
+
progress: 100
|
|
74
|
+
});
|
|
75
|
+
observer.complete();
|
|
76
|
+
}, function (err) {
|
|
77
|
+
console.log('Error while uploading file: ', err);
|
|
78
|
+
observer.error(err);
|
|
79
|
+
});
|
|
80
|
+
});
|
|
81
|
+
};
|
|
82
|
+
/**
|
|
83
|
+
* Downloads a file-Blob.
|
|
84
|
+
*
|
|
85
|
+
* @param url the file-url to download
|
|
86
|
+
* @returns Observable that emits the DownloadStatus and resolves with a JsPFile that wraps the file-blob
|
|
87
|
+
*/
|
|
88
|
+
AxiosFileTransferService.prototype.downloadFile = function (url) {
|
|
89
|
+
var _this = this;
|
|
90
|
+
return new rxjs_1.Observable(function (observer) {
|
|
91
|
+
var config = {
|
|
92
|
+
method: 'GET',
|
|
93
|
+
url: url,
|
|
94
|
+
responseType: 'blob',
|
|
95
|
+
onDownloadProgress: function (progressEvent) {
|
|
96
|
+
var percentCompleted = Math.round((progressEvent.loaded * 100) / progressEvent.total);
|
|
97
|
+
observer.next({
|
|
98
|
+
status: file_transfer_service_interface_1.TRANSFER_STATUS.TRANSFERRING,
|
|
99
|
+
progress: percentCompleted,
|
|
100
|
+
file: null
|
|
101
|
+
});
|
|
102
|
+
// console.log("UPLOAD PROGRESS", progressEvent);
|
|
103
|
+
}
|
|
104
|
+
};
|
|
105
|
+
_this.validateIsKnownUrlOrCry(url);
|
|
106
|
+
axios_observable_1.default.request(config)
|
|
107
|
+
.pipe((0, operators_1.catchError)(handle_axios_error_helper_1.HandleAxiosErrorHelper.processError))
|
|
108
|
+
.subscribe(function (res) {
|
|
109
|
+
observer.next({
|
|
110
|
+
status: file_transfer_service_interface_1.TRANSFER_STATUS.TRANSFER_FINISHED,
|
|
111
|
+
progress: 100,
|
|
112
|
+
file: new js_p_file_1.JsPFile(res.data)
|
|
113
|
+
});
|
|
114
|
+
observer.complete();
|
|
115
|
+
}, function (err) {
|
|
116
|
+
console.log('Error while downloading file: ', err);
|
|
117
|
+
observer.error(err);
|
|
118
|
+
});
|
|
119
|
+
});
|
|
120
|
+
};
|
|
121
|
+
/**
|
|
122
|
+
* Check if there is internet connection and throw a NO_INTERNET, if so.
|
|
123
|
+
* Rethrow the original error otherwise.
|
|
124
|
+
*/
|
|
125
|
+
AxiosFileTransferService.prototype.checkInternetConnectivity = function (error) {
|
|
126
|
+
return (0, rxjs_1.from)(this.deviceStatusService.isConnectionAvailable())
|
|
127
|
+
.pipe((0, operators_1.map)(function (connectionStatus) {
|
|
128
|
+
if (connectionStatus) {
|
|
129
|
+
throw error;
|
|
130
|
+
}
|
|
131
|
+
else {
|
|
132
|
+
throw new error_1.SdkError(error_1.SDK_ERROR_CODES.NO_INTERNET, error);
|
|
133
|
+
}
|
|
134
|
+
}));
|
|
135
|
+
};
|
|
136
|
+
return AxiosFileTransferService;
|
|
137
|
+
}(file_transfer_service_interface_1.FileTransferService));
|
|
138
|
+
exports.AxiosFileTransferService = AxiosFileTransferService;
|
|
139
|
+
//# sourceMappingURL=axios-file-transfer.service.js.map
|