@partium/js-sdk 14.4.1 → 14.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (153) hide show
  1. package/catalog/index.js +1 -21
  2. package/catalog/models/catalog-image-info.js +1 -22
  3. package/catalog/models/catalog-image.js +1 -40
  4. package/catalog/models/upsert-catalog-images-dto.js +1 -3
  5. package/catalog/models/upsert-images-result.js +1 -3
  6. package/catalog/services/images.service.js +1 -62
  7. package/core/constants/constants.d.ts +1 -0
  8. package/core/constants/constants.js +1 -16
  9. package/core/decorators/injection-identifier.js +1 -19
  10. package/core/factories/paginated-request-service.factory.js +1 -33
  11. package/core/index.js +1 -63
  12. package/core/integration-defaults/http/fetch-api-http-error-helper.js +1 -129
  13. package/core/integration-defaults/http/file-transfer/axios-file-transfer.service.js +1 -138
  14. package/core/integration-defaults/http/file-transfer/fetch-api-file-transfer.service.js +1 -210
  15. package/core/integration-defaults/http/handle-axios-error-helper.js +1 -79
  16. package/core/integration-defaults/http/https-client/axios-https-client.service.js +1 -182
  17. package/core/integration-defaults/http/https-client/fetch-api-https-client.service.js +1 -198
  18. package/core/integration-defaults/http/js-oauth-keycloak-https.service.js +1 -32
  19. package/core/integration-defaults/js-p-file.js +1 -36
  20. package/core/integration-defaults/session/js-oauth-api-key-session.service.js +1 -206
  21. package/core/integration-defaults/session/js-oauth-keycloak-auth-config.js +1 -64
  22. package/core/integration-defaults/session/js-oauth-keycloak-session.service.js +1 -257
  23. package/core/integration-defaults/web-device-status.service.js +1 -125
  24. package/core/integration-defaults/web-file.service.js +1 -135
  25. package/core/integration-defaults/web-indexeddb.service.js +1 -142
  26. package/core/integration-defaults/web-local-storage.service.js +1 -310
  27. package/core/models/api-object.js +1 -16
  28. package/core/models/auth-config.js +1 -72
  29. package/core/models/device-info.js +1 -34
  30. package/core/models/error.js +1 -107
  31. package/core/models/formatted-string.js +1 -14
  32. package/core/models/i18n-map.js +1 -61
  33. package/core/models/i18n-string.js +1 -35
  34. package/core/models/log.js +1 -137
  35. package/core/models/organization.js +1 -159
  36. package/core/models/p-file.js +1 -23
  37. package/core/models/paginated-list.js +1 -41
  38. package/core/models/partium-config.js +1 -43
  39. package/core/models/user-token.js +1 -11
  40. package/core/models/user.js +1 -89
  41. package/core/services/backend-status.service.js +1 -147
  42. package/core/services/base-login-init.service.js +1 -57
  43. package/core/services/base.service.js +1 -37
  44. package/core/services/device-status.service.interface.js +1 -117
  45. package/core/services/file.service.interface.js +1 -61
  46. package/core/services/http/file-transfer/file-transfer.service.interface.js +1 -125
  47. package/core/services/http/https-client/https-client.service.interface.js +1 -152
  48. package/core/services/http/https.service.interface.d.ts +3 -1
  49. package/core/services/http/https.service.interface.js +1 -294
  50. package/core/services/http/oauth-https.service.js +1 -218
  51. package/core/services/local-storage.service.interface.js +1 -378
  52. package/core/services/log.service.js +1 -139
  53. package/core/services/organization.service.js +1 -202
  54. package/core/services/paginated-request.service.js +1 -154
  55. package/core/services/recent-parts.service.js +1 -194
  56. package/core/services/service-provider.js +1 -114
  57. package/core/services/session/oauth-session.service.js +1 -104
  58. package/core/services/session/session.service.interface.js +1 -367
  59. package/core/utils/general-helper.js +1 -110
  60. package/data/index.js +1 -44
  61. package/data/models/announcement.js +1 -70
  62. package/data/models/assembly-hierarchy-node-breadcrumb.js +1 -51
  63. package/data/models/assembly-hierarchy-node.js +1 -46
  64. package/data/models/attribute.js +1 -106
  65. package/data/models/csa-request-search.js +1 -46
  66. package/data/models/csa-request-status.js +1 -51
  67. package/data/models/csa-request.js +1 -112
  68. package/data/models/document.js +1 -17
  69. package/data/models/filter-key.js +1 -36
  70. package/data/models/filter-option-value.js +1 -41
  71. package/data/models/image.js +1 -77
  72. package/data/models/inquiry.js +1 -71
  73. package/data/models/mounting-location.js +1 -58
  74. package/data/models/multiple-expert-searches.js +1 -40
  75. package/data/models/part-enrichment-data.js +1 -50
  76. package/data/models/part.d.ts +1 -1
  77. package/data/models/part.js +1 -168
  78. package/data/models/shopping-cart.js +1 -60
  79. package/data/services/announcement.service.js +1 -89
  80. package/data/services/assembly-hierarchy-nodes.service.js +1 -193
  81. package/data/services/csa-helper.service.js +1 -158
  82. package/data/services/customer-service-assistance.service.js +1 -276
  83. package/data/services/filter.service.js +1 -97
  84. package/data/services/inquiry.service.js +1 -68
  85. package/data/services/part-attribute.service.js +1 -118
  86. package/data/services/part-enrichment.service.js +1 -56
  87. package/data/services/part.service.js +1 -182
  88. package/data/services/related-parts.service.js +1 -83
  89. package/data/services/shopping-cart.service.js +1 -152
  90. package/datacuration/index.d.ts +4 -0
  91. package/datacuration/index.js +2 -0
  92. package/datacuration/models/image-submission-request.d.ts +55 -0
  93. package/datacuration/models/image-submission-request.js +2 -0
  94. package/datacuration/models/submitted-image-response.d.ts +27 -0
  95. package/datacuration/models/submitted-image-response.js +2 -0
  96. package/datacuration/services/image-submission.service.d.ts +26 -0
  97. package/datacuration/services/image-submission.service.js +2 -0
  98. package/find/index.js +1 -51
  99. package/find/models/assets/asset.js +1 -32
  100. package/find/models/search-filter.js +1 -205
  101. package/find/models/search-input.js +1 -3
  102. package/find/models/search-output.js +1 -3
  103. package/find/models/search-result-status.js +1 -40
  104. package/find/models/search-session-log-object.js +1 -22
  105. package/find/models/search-status/cv-search-status.js +1 -22
  106. package/find/models/search-status/search-filter-status.js +1 -36
  107. package/find/models/search-status/search-status.js +1 -56
  108. package/find/models/search-status/tag-search-status.js +1 -23
  109. package/find/models/search-status/text-search-status.js +1 -18
  110. package/find/models/search-tag.js +1 -16
  111. package/find/models/smart-filter.js +1 -49
  112. package/find/models/tagable/i18n-tagable.js +1 -37
  113. package/find/models/tagable/tagable-base.js +1 -22
  114. package/find/models/tagable/tagable.js +1 -37
  115. package/find/models/text-search-config.js +1 -70
  116. package/find/models/text-search-manipulator.js +1 -90
  117. package/find/models/text-search-result-item/text-search-error.js +1 -12
  118. package/find/models/text-search-result-item/text-search-result-item-document.js +1 -34
  119. package/find/models/text-search-result-item/text-search-result-item-part.js +1 -36
  120. package/find/models/text-search-result-item/text-search-result-item-recent-query.js +1 -35
  121. package/find/models/text-search-result-item/text-search-result-item-unknown.js +1 -38
  122. package/find/models/text-search-result-item/text-search-result-item.js +1 -22
  123. package/find/services/asset.service.js +1 -348
  124. package/find/services/filter-uploaders/filter-uploader.js +1 -3
  125. package/find/services/filter-uploaders/update-filters-uploader.js +1 -77
  126. package/find/services/filter-uploaders/update-filters.model.js +1 -7
  127. package/find/services/search/cv-search.service.js +1 -214
  128. package/find/services/search/recent-text-search-queries.service.js +1 -260
  129. package/find/services/search/search-result.service.js +1 -539
  130. package/find/services/search/search.service.js +1 -514
  131. package/find/services/search/tag-search.service.js +1 -124
  132. package/find/services/search/text-search.service.js +1 -316
  133. package/find/services/search-filter.service.js +1 -292
  134. package/find/utils/search-helper.js +1 -75
  135. package/gen/sdk-version.d.ts +1 -1
  136. package/gen/sdk-version.js +1 -5
  137. package/index.d.ts +2 -0
  138. package/index.js +1 -392
  139. package/management/index.js +1 -21
  140. package/management/models/api-key-list-response.js +1 -3
  141. package/management/models/api-key-type.js +1 -9
  142. package/management/models/api-key.js +1 -3
  143. package/management/services/api-key.service.js +1 -53
  144. package/ocr/index.js +1 -20
  145. package/ocr/models/detect-response.js +1 -3
  146. package/ocr/models/detected-text-entry.js +1 -3
  147. package/ocr/services/ocr.service.js +1 -59
  148. package/package.json +1 -1
  149. package/user-data/index.js +1 -21
  150. package/user-data/models/part-with-nullable.js +1 -3
  151. package/user-data/models/request-list/request-list.js +1 -63
  152. package/user-data/services/favorite/favorite.service.js +1 -108
  153. package/user-data/services/request-list/request-list.service.js +1 -133
@@ -1,194 +1,2 @@
1
1
  // Copyright © 2022-2025 Partium, Inc. DBA Partium
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
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
25
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
26
- if (ar || !(i in from)) {
27
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
28
- ar[i] = from[i];
29
- }
30
- }
31
- return to.concat(ar || Array.prototype.slice.call(from));
32
- };
33
- Object.defineProperty(exports, "__esModule", { value: true });
34
- exports.AssemblyHierarchyNodesServiceImpl = void 0;
35
- var core_1 = require("../../core");
36
- var rxjs_1 = require("rxjs");
37
- var operators_1 = require("rxjs/operators");
38
- var assembly_hierarchy_node_1 = require("../models/assembly-hierarchy-node");
39
- var AssemblyHierarchyNodesServiceImpl = /** @class */ (function (_super) {
40
- __extends(AssemblyHierarchyNodesServiceImpl, _super);
41
- function AssemblyHierarchyNodesServiceImpl(serviceProvider) {
42
- var _this = _super.call(this, serviceProvider) || this;
43
- _this.DOWNLOAD_PAGE_SIZE = 250; // size of item-patches when downloading all items
44
- _this.PAGINATION_PAGE_SIZE = 25; // size of page when retrieving page of items and user decides when to load next page
45
- return _this;
46
- }
47
- AssemblyHierarchyNodesServiceImpl.prototype.onCreate = function () {
48
- this.httpsService = this.serviceProvider.getService(core_1.HttpsService);
49
- };
50
- AssemblyHierarchyNodesServiceImpl.prototype.getAssemblyHierarchyRootNodes = function (cursorPaginationEnabled, treeOrder) {
51
- if (treeOrder === void 0) { treeOrder = 'root'; }
52
- return this.getAssemblyHierarchyNodesByParentId(null, cursorPaginationEnabled, treeOrder);
53
- };
54
- AssemblyHierarchyNodesServiceImpl.prototype.getAssemblyHierarchyNodesByParentId = function (parentPartiumId, cursorPaginationEnabled, treeOrder) {
55
- if (treeOrder === void 0) { treeOrder = 'root'; }
56
- var urlParams = [];
57
- urlParams.push({ max_depth: 1 });
58
- urlParams.push({ tree_order: treeOrder });
59
- if (parentPartiumId) {
60
- urlParams.push({ assembly_uuid: parentPartiumId });
61
- }
62
- else {
63
- urlParams.push({ root_nodes: true });
64
- }
65
- if (cursorPaginationEnabled) {
66
- urlParams.push({ paginator: 'cursor' });
67
- }
68
- return core_1.PaginatedRequestServiceFactory.generatePaginatedRequestService(assembly_hierarchy_node_1.AssemblyHierarchyNode.fromAPIResponse, this.httpsService, 'assemblies', core_1.BACKEND_SERVICE.DATA, urlParams, this.PAGINATION_PAGE_SIZE, cursorPaginationEnabled);
69
- };
70
- AssemblyHierarchyNodesServiceImpl.prototype.searchAssemblyHierarchyNodesByText = function (query, parentPartiumId, language, maxDepth, cursorPaginationEnabled, treeOrder) {
71
- if (treeOrder === void 0) { treeOrder = 'root'; }
72
- var urlParams = [];
73
- urlParams.push({ search: query });
74
- urlParams.push({ tree_order: treeOrder });
75
- if (parentPartiumId) {
76
- urlParams.push({ assembly_uuid: parentPartiumId });
77
- }
78
- if (language) {
79
- urlParams.push({ lang: language });
80
- }
81
- if (maxDepth !== undefined) {
82
- urlParams.push({ max_depth: maxDepth });
83
- }
84
- return core_1.PaginatedRequestServiceFactory.generatePaginatedRequestService(assembly_hierarchy_node_1.AssemblyHierarchyNode.fromAPIResponse, this.httpsService, 'assemblies', core_1.BACKEND_SERVICE.DATA, urlParams, this.PAGINATION_PAGE_SIZE, cursorPaginationEnabled);
85
- };
86
- AssemblyHierarchyNodesServiceImpl.prototype.getAssemblyHierarchyNode = function (partiumId, treeOrder) {
87
- if (treeOrder === void 0) { treeOrder = 'root'; }
88
- return this.getAssemblyHierarchyNodes([partiumId], treeOrder).pipe((0, operators_1.map)(function (nodes) { return nodes[0]; }));
89
- };
90
- AssemblyHierarchyNodesServiceImpl.prototype.getAssemblyHierarchyNodes = function (partiumIds, treeOrder) {
91
- var _this = this;
92
- if (treeOrder === void 0) { treeOrder = 'root'; }
93
- return this.loadAssemblyHierarchyNodesFromServer(partiumIds, treeOrder).pipe((0, operators_1.map)(function (nodes) { return _this.orderAssemblyHierarchyNodes(nodes, partiumIds); }), (0, operators_1.catchError)(function (error) {
94
- console.log('Error while loading assembly hierarchy node-information from server.', error);
95
- return (0, rxjs_1.throwError)(error);
96
- }));
97
- };
98
- /**
99
- * Load all requested assembly hierarchy nodes from the server.
100
- * Since the response is paginated, it is necessary to do as many request as needed until
101
- * all nodes are loaded.
102
- *
103
- * @param partiumIds the partium-ids of the assembly hierarchy nodes to get
104
- */
105
- AssemblyHierarchyNodesServiceImpl.prototype.loadAssemblyHierarchyNodesFromServer = function (partiumIds, treeOrder) {
106
- var _this = this;
107
- if (treeOrder === void 0) { treeOrder = 'root'; }
108
- var i = 1;
109
- var repeat$ = new rxjs_1.Subject();
110
- var nextPageUrlCursor;
111
- // do as many requests (1 per page) until all nodes are loaded
112
- // we use "defer" here instead of using requestPaginatedAssemblyHierarchyNodes directly, because this allows us to increase the page-number, which is passed to the function. Otherwise it would always be called with the same value.
113
- return (0, rxjs_1.defer)(function () { return _this.requestPaginatedAssemblyHierarchyNodes(partiumIds, i, nextPageUrlCursor, true, treeOrder); }).pipe((0, operators_1.map)(function (res) {
114
- var isCursorPaginationEnabled = !res['pagination']['page_size'] || res['pagination']['items_count'];
115
- if (isCursorPaginationEnabled) {
116
- var nextPage = res['pagination']['next'] && res['pagination']['next'].split('?');
117
- if (!!nextPage) {
118
- nextPageUrlCursor = new URLSearchParams(nextPage[1]).get('cursor');
119
- repeat$.next();
120
- }
121
- else {
122
- repeat$.complete(); // final page reached
123
- }
124
- }
125
- else {
126
- var pageSize = res['pagination']['page_size'];
127
- var itemsCnt = res['pagination']['items_count'];
128
- var pageCnt = Math.ceil(itemsCnt / pageSize);
129
- if (i >= pageCnt) {
130
- repeat$.complete(); // final page reached
131
- }
132
- else if (i++ < pageCnt) {
133
- setTimeout(function () {
134
- repeat$.next(); // more pages to load
135
- });
136
- }
137
- }
138
- return res['results'];
139
- }), (0, operators_1.repeatWhen)(function () { return repeat$.asObservable(); }), (0, operators_1.reduce)(function (cum, newItems) {
140
- return __spreadArray(__spreadArray([], cum, true), newItems, true);
141
- }), (0, operators_1.map)(function (nodesData) {
142
- return nodesData.map(function (nodeData) { return assembly_hierarchy_node_1.AssemblyHierarchyNode.fromAPIResponse(nodeData); });
143
- }));
144
- };
145
- /**
146
- * Send request for one page of nodes
147
- *
148
- * @param page the current page of the pagination (1-indexed)
149
- */
150
- AssemblyHierarchyNodesServiceImpl.prototype.requestPaginatedAssemblyHierarchyNodes = function (partiumIds, page, urlCursorParam, cursorPaginationEnabled, treeOrder) {
151
- if (cursorPaginationEnabled === void 0) { cursorPaginationEnabled = true; }
152
- if (treeOrder === void 0) { treeOrder = 'root'; }
153
- var urlParams = [];
154
- urlParams.push({ page_size: this.DOWNLOAD_PAGE_SIZE });
155
- urlParams.push({ tree_order: treeOrder });
156
- if (page) {
157
- urlParams.push({ page: page });
158
- }
159
- if (cursorPaginationEnabled) {
160
- urlParams.push({ paginator: 'cursor' });
161
- }
162
- if (urlCursorParam) {
163
- urlParams.push({ cursor: urlCursorParam });
164
- }
165
- return this.httpsService.post("assemblies/many", {
166
- uuids: partiumIds,
167
- }, urlParams, core_1.BACKEND_SERVICE.DATA);
168
- };
169
- /**
170
- * Order the given assembly hierarchy nodes by the part-ids given in the part-id-array.
171
- * If any part is not found in unorderedAssemblyHierarchyNodes, the array contains null instead.
172
- *
173
- * @param unorderedAssemblyHierarchyNodes the assembly hierarchy nodes to order
174
- * @param partiumIds the order in which to sort
175
- * @returns array of given assembly hierarchy nodes, ordered by partiumIds (contains null for assembly hierarchy nodes not found)
176
- */
177
- AssemblyHierarchyNodesServiceImpl.prototype.orderAssemblyHierarchyNodes = function (unorderedAssemblyHierarchyNodes, partiumIds) {
178
- var orderedAssemblyHierarchyNodes = [];
179
- var _loop_1 = function (id) {
180
- orderedAssemblyHierarchyNodes.push(unorderedAssemblyHierarchyNodes.find(function (node) { return node && node.partiumId === id; }));
181
- };
182
- for (var _i = 0, partiumIds_1 = partiumIds; _i < partiumIds_1.length; _i++) {
183
- var id = partiumIds_1[_i];
184
- _loop_1(id);
185
- }
186
- return orderedAssemblyHierarchyNodes;
187
- };
188
- AssemblyHierarchyNodesServiceImpl = __decorate([
189
- (0, core_1.InjectionIdentifier)('AssemblyHierarchyNodesService')
190
- ], AssemblyHierarchyNodesServiceImpl);
191
- return AssemblyHierarchyNodesServiceImpl;
192
- }(core_1.BaseService));
193
- exports.AssemblyHierarchyNodesServiceImpl = AssemblyHierarchyNodesServiceImpl;
194
- //# sourceMappingURL=assembly-hierarchy-nodes.service.js.map
2
+ "use strict";var __extends=this&&this.__extends||function(){var e=function(r,t){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,r){e.__proto__=r}||function(e,r){for(var t in r)Object.prototype.hasOwnProperty.call(r,t)&&(e[t]=r[t])},e(r,t)};return function(r,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function o(){this.constructor=r}e(r,t),r.prototype=null===t?Object.create(t):(o.prototype=t.prototype,new o)}}(),__decorate=this&&this.__decorate||function(e,r,t,o){var s,i=arguments.length,n=i<3?r:null===o?o=Object.getOwnPropertyDescriptor(r,t):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,r,t,o);else for(var a=e.length-1;a>=0;a--)(s=e[a])&&(n=(i<3?s(n):i>3?s(r,t,n):s(r,t))||n);return i>3&&n&&Object.defineProperty(r,t,n),n},__spreadArray=this&&this.__spreadArray||function(e,r,t){if(t||2===arguments.length)for(var o,s=0,i=r.length;s<i;s++)!o&&s in r||(o||(o=Array.prototype.slice.call(r,0,s)),o[s]=r[s]);return e.concat(o||Array.prototype.slice.call(r))};Object.defineProperty(exports,"__esModule",{value:!0}),exports.AssemblyHierarchyNodesServiceImpl=void 0;var core_1=require("../../core"),rxjs_1=require("rxjs"),operators_1=require("rxjs/operators"),assembly_hierarchy_node_1=require("../models/assembly-hierarchy-node"),AssemblyHierarchyNodesServiceImpl=function(e){function r(r){var t=e.call(this,r)||this;return t.DOWNLOAD_PAGE_SIZE=250,t.PAGINATION_PAGE_SIZE=25,t}return __extends(r,e),r.prototype.onCreate=function(){this.httpsService=this.serviceProvider.getService(core_1.HttpsService)},r.prototype.getAssemblyHierarchyRootNodes=function(e,r){return void 0===r&&(r="root"),this.getAssemblyHierarchyNodesByParentId(null,e,r)},r.prototype.getAssemblyHierarchyNodesByParentId=function(e,r,t){void 0===t&&(t="root");var o=[];return o.push({max_depth:1}),o.push({tree_order:t}),e?o.push({assembly_uuid:e}):o.push({root_nodes:!0}),r&&o.push({paginator:"cursor"}),core_1.PaginatedRequestServiceFactory.generatePaginatedRequestService(assembly_hierarchy_node_1.AssemblyHierarchyNode.fromAPIResponse,this.httpsService,"assemblies",core_1.BACKEND_SERVICE.DATA,o,this.PAGINATION_PAGE_SIZE,r)},r.prototype.searchAssemblyHierarchyNodesByText=function(e,r,t,o,s,i){void 0===i&&(i="root");var n=[];return n.push({search:e}),n.push({tree_order:i}),r&&n.push({assembly_uuid:r}),t&&n.push({lang:t}),void 0!==o&&n.push({max_depth:o}),core_1.PaginatedRequestServiceFactory.generatePaginatedRequestService(assembly_hierarchy_node_1.AssemblyHierarchyNode.fromAPIResponse,this.httpsService,"assemblies",core_1.BACKEND_SERVICE.DATA,n,this.PAGINATION_PAGE_SIZE,s)},r.prototype.getAssemblyHierarchyNode=function(e,r){return void 0===r&&(r="root"),this.getAssemblyHierarchyNodes([e],r).pipe((0,operators_1.map)((function(e){return e[0]})))},r.prototype.getAssemblyHierarchyNodes=function(e,r){var t=this;return void 0===r&&(r="root"),this.loadAssemblyHierarchyNodesFromServer(e,r).pipe((0,operators_1.map)((function(r){return t.orderAssemblyHierarchyNodes(r,e)})),(0,operators_1.catchError)((function(e){return console.log("Error while loading assembly hierarchy node-information from server.",e),(0,rxjs_1.throwError)(e)})))},r.prototype.loadAssemblyHierarchyNodesFromServer=function(e,r){var t=this;void 0===r&&(r="root");var o,s=1,i=new rxjs_1.Subject;return(0,rxjs_1.defer)((function(){return t.requestPaginatedAssemblyHierarchyNodes(e,s,o,!0,r)})).pipe((0,operators_1.map)((function(e){if(!e.pagination.page_size||e.pagination.items_count){var r=e.pagination.next&&e.pagination.next.split("?");r?(o=new URLSearchParams(r[1]).get("cursor"),i.next()):i.complete()}else{var t=e.pagination.page_size,n=e.pagination.items_count,a=Math.ceil(n/t);s>=a?i.complete():s++<a&&setTimeout((function(){i.next()}))}return e.results})),(0,operators_1.repeatWhen)((function(){return i.asObservable()})),(0,operators_1.reduce)((function(e,r){return __spreadArray(__spreadArray([],e,!0),r,!0)})),(0,operators_1.map)((function(e){return e.map((function(e){return assembly_hierarchy_node_1.AssemblyHierarchyNode.fromAPIResponse(e)}))})))},r.prototype.requestPaginatedAssemblyHierarchyNodes=function(e,r,t,o,s){void 0===o&&(o=!0),void 0===s&&(s="root");var i=[];return i.push({page_size:this.DOWNLOAD_PAGE_SIZE}),i.push({tree_order:s}),r&&i.push({page:r}),o&&i.push({paginator:"cursor"}),t&&i.push({cursor:t}),this.httpsService.post("assemblies/many",{uuids:e},i,core_1.BACKEND_SERVICE.DATA)},r.prototype.orderAssemblyHierarchyNodes=function(e,r){for(var t=[],o=function(r){t.push(e.find((function(e){return e&&e.partiumId===r})))},s=0,i=r;s<i.length;s++){o(i[s])}return t},r=__decorate([(0,core_1.InjectionIdentifier)("AssemblyHierarchyNodesService")],r)}(core_1.BaseService);exports.AssemblyHierarchyNodesServiceImpl=AssemblyHierarchyNodesServiceImpl;
@@ -1,159 +1,2 @@
1
1
  // Copyright © 2022-2025 Partium, Inc. DBA Partium
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.CSAHelperService = void 0;
26
- var lodash_1 = require("lodash");
27
- var rxjs_1 = require("rxjs");
28
- var operators_1 = require("rxjs/operators");
29
- var injection_identifier_1 = require("../../core/decorators/injection-identifier");
30
- var base_service_1 = require("../../core/services/base.service");
31
- var search_filter_1 = require("../../find/models/search-filter");
32
- var search_filter_service_1 = require("../../find/services/search-filter.service");
33
- var assembly_hierarchy_nodes_service_1 = require("./assembly-hierarchy-nodes.service");
34
- var CSAHelperService = /** @class */ (function (_super) {
35
- __extends(CSAHelperService, _super);
36
- function CSAHelperService(serviceProvider) {
37
- return _super.call(this, serviceProvider) || this;
38
- }
39
- CSAHelperService.prototype.onCreate = function () {
40
- this.searchFilterService = this.serviceProvider.getService(search_filter_service_1.SearchFilterServiceImpl);
41
- this.assemblyHierarchyNodesService = this.serviceProvider.getService(assembly_hierarchy_nodes_service_1.AssemblyHierarchyNodesServiceImpl);
42
- };
43
- /**
44
- * Returns all hierarchy-nodes that should be displayed to the user
45
- * as applied hierarchy-filters. This considers excluded nodes.
46
- * The list of filters does not equal the applied hierarchy-filters,
47
- * but it contains also siblings of excluded nodes, which don't
48
- * explicitly have to be added in the filter-service, but it's more
49
- * readable to the user like this.
50
- * Also loads nodes from later pages than page one.
51
- *
52
- * @returns Observable that resolves with an array of AssemblyHierarchyNodes that represent all applied filters
53
- * @deprecated not needed anymore as HierarchyPartiumIdFilter is deprecated
54
- */
55
- CSAHelperService.prototype.getHierarchyFilterNodesForUI = function () {
56
- var _this = this;
57
- var finalImplicitIncludes; // nodes that will be returned from the function
58
- var implicitExcludes; // all parent nodes of excluded nodes
59
- var excludedNodes;
60
- var searchFilters$ = this.searchFilterService.getSearchFilters().pipe((0, operators_1.first)());
61
- var excludedNodes$ = this.searchFilterService.getExcludedHierarchyFilterNodes().pipe((0, operators_1.first)());
62
- return (0, rxjs_1.forkJoin)([
63
- searchFilters$,
64
- excludedNodes$,
65
- ])
66
- .pipe((0, operators_1.mergeMap)(function (_a) {
67
- var filters = _a[0], en = _a[1];
68
- finalImplicitIncludes = [];
69
- implicitExcludes = [];
70
- excludedNodes = en;
71
- // add all included to finalImplicitIncludes
72
- var hierarchyFilter = filters.find(function (f) { return f instanceof search_filter_1.HierarchyPartiumIdFilter; });
73
- if (hierarchyFilter) {
74
- finalImplicitIncludes.push.apply(finalImplicitIncludes, hierarchyFilter.include);
75
- }
76
- // add all breadcrumbs from excluded nodes to implicitExcludes and remove them from finalImplicitIncludes
77
- for (var _i = 0, _b = Object.values(excludedNodes); _i < _b.length; _i++) {
78
- var excluded = _b[_i];
79
- var _loop_1 = function (breadcrumb) {
80
- if (implicitExcludes.filter(function (id) { return id === breadcrumb.partiumId; }).length < 1) {
81
- // not yet included
82
- implicitExcludes.push(breadcrumb.partiumId);
83
- }
84
- finalImplicitIncludes = finalImplicitIncludes.filter(function (id) { return id !== breadcrumb.partiumId; });
85
- };
86
- for (var _c = 0, _d = excluded.breadcrumbs; _c < _d.length; _c++) {
87
- var breadcrumb = _d[_c];
88
- _loop_1(breadcrumb);
89
- }
90
- }
91
- // load all chilren of implicitExcludes
92
- // and add them to finalImplicitIncludes if they are not in excludes or implicitExcludes in the next step
93
- var loadChildren$ = [];
94
- for (var _e = 0, implicitExcludes_1 = implicitExcludes; _e < implicitExcludes_1.length; _e++) {
95
- var ie = implicitExcludes_1[_e];
96
- loadChildren$.push(_this.loadAllChildren(ie));
97
- }
98
- if (loadChildren$.length > 0) {
99
- return (0, rxjs_1.forkJoin)(loadChildren$);
100
- }
101
- else {
102
- return (0, rxjs_1.of)([]);
103
- }
104
- }), (0, operators_1.mergeMap)(function (res) {
105
- for (var _i = 0, res_1 = res; _i < res_1.length; _i++) {
106
- var children = res_1[_i];
107
- for (var _a = 0, children_1 = children; _a < children_1.length; _a++) {
108
- var child = children_1[_a];
109
- if (!Object.keys(excludedNodes).includes(child.partiumId) &&
110
- !implicitExcludes.includes(child.partiumId) &&
111
- !finalImplicitIncludes.includes(child.partiumId)) {
112
- finalImplicitIncludes.push(child.partiumId);
113
- }
114
- }
115
- }
116
- return _this.assemblyHierarchyNodesService.getAssemblyHierarchyNodes(finalImplicitIncludes).pipe((0, operators_1.map)(function (nodes) { return nodes
117
- .filter(function (node) { return node !== null && node !== undefined; }); }));
118
- }), (0, operators_1.map)(function (nodes) {
119
- // order nodes by the length of their breadcrumbs, so that the ones with least breadcrumbs are on top
120
- return (0, lodash_1.sortBy)(nodes, function (node) { return node.breadcrumbs.length; });
121
- }));
122
- };
123
- /**
124
- * Loads all direct children of the node with the given id.
125
- * (Does not only load the first page, but iteratively loads all pages)
126
- *
127
- * @param partiumId id of the parent node
128
- * @returns Observable that resolves with all direct child nodes
129
- */
130
- CSAHelperService.prototype.loadAllChildren = function (partiumId) {
131
- var repeat$ = new rxjs_1.Subject();
132
- var paginatedRequestService = this.assemblyHierarchyNodesService.getAssemblyHierarchyNodesByParentId(partiumId);
133
- return paginatedRequestService.loadInitialPage(true).pipe((0, operators_1.first)(), (0, operators_1.mergeMap)(function (page1) {
134
- if (page1.moreResultsAvailable()) {
135
- // we use "defer" here instead of using loadMore directly, because this allows us to increase the
136
- // page-number after loadMore is called. Otherwise always the same new page would be loaded
137
- return (0, rxjs_1.defer)(function () { return paginatedRequestService.loadMore(); }).pipe((0, operators_1.first)(), (0, operators_1.tap)(function (page) {
138
- if (page.moreResultsAvailable()) {
139
- setTimeout(function () {
140
- repeat$.next(); // more pages to load
141
- });
142
- }
143
- else {
144
- repeat$.complete(); // final page reached
145
- }
146
- }), (0, operators_1.repeatWhen)(function () { return repeat$.asObservable(); }));
147
- }
148
- else {
149
- return (0, rxjs_1.of)(page1);
150
- }
151
- }), (0, operators_1.map)(function (fullPage) { return fullPage.items; }));
152
- };
153
- CSAHelperService = __decorate([
154
- (0, injection_identifier_1.InjectionIdentifier)("CSAHelperService")
155
- ], CSAHelperService);
156
- return CSAHelperService;
157
- }(base_service_1.BaseService));
158
- exports.CSAHelperService = CSAHelperService;
159
- //# sourceMappingURL=csa-helper.service.js.map
2
+ "use strict";var __extends=this&&this.__extends||function(){var e=function(r,t){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,r){e.__proto__=r}||function(e,r){for(var t in r)Object.prototype.hasOwnProperty.call(r,t)&&(e[t]=r[t])},e(r,t)};return function(r,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function i(){this.constructor=r}e(r,t),r.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)}}(),__decorate=this&&this.__decorate||function(e,r,t,i){var o,n=arguments.length,s=n<3?r:null===i?i=Object.getOwnPropertyDescriptor(r,t):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,r,t,i);else for(var c=e.length-1;c>=0;c--)(o=e[c])&&(s=(n<3?o(s):n>3?o(r,t,s):o(r,t))||s);return n>3&&s&&Object.defineProperty(r,t,s),s};Object.defineProperty(exports,"__esModule",{value:!0}),exports.CSAHelperService=void 0;var lodash_1=require("lodash"),rxjs_1=require("rxjs"),operators_1=require("rxjs/operators"),injection_identifier_1=require("../../core/decorators/injection-identifier"),base_service_1=require("../../core/services/base.service"),search_filter_1=require("../../find/models/search-filter"),search_filter_service_1=require("../../find/services/search-filter.service"),assembly_hierarchy_nodes_service_1=require("./assembly-hierarchy-nodes.service"),CSAHelperService=function(e){function r(r){return e.call(this,r)||this}return __extends(r,e),r.prototype.onCreate=function(){this.searchFilterService=this.serviceProvider.getService(search_filter_service_1.SearchFilterServiceImpl),this.assemblyHierarchyNodesService=this.serviceProvider.getService(assembly_hierarchy_nodes_service_1.AssemblyHierarchyNodesServiceImpl)},r.prototype.getHierarchyFilterNodesForUI=function(){var e,r,t,i=this,o=this.searchFilterService.getSearchFilters().pipe((0,operators_1.first)()),n=this.searchFilterService.getExcludedHierarchyFilterNodes().pipe((0,operators_1.first)());return(0,rxjs_1.forkJoin)([o,n]).pipe((0,operators_1.mergeMap)((function(o){var n=o[0],s=o[1];e=[],r=[],t=s;var c=n.find((function(e){return e instanceof search_filter_1.HierarchyPartiumIdFilter}));c&&e.push.apply(e,c.include);for(var a=0,l=Object.values(t);a<l.length;a++)for(var u=function(t){r.filter((function(e){return e===t.partiumId})).length<1&&r.push(t.partiumId),e=e.filter((function(e){return e!==t.partiumId}))},p=0,f=l[a].breadcrumbs;p<f.length;p++){u(f[p])}for(var _=[],h=0,d=r;h<d.length;h++){var v=d[h];_.push(i.loadAllChildren(v))}return _.length>0?(0,rxjs_1.forkJoin)(_):(0,rxjs_1.of)([])})),(0,operators_1.mergeMap)((function(o){for(var n=0,s=o;n<s.length;n++)for(var c=0,a=s[n];c<a.length;c++){var l=a[c];Object.keys(t).includes(l.partiumId)||r.includes(l.partiumId)||e.includes(l.partiumId)||e.push(l.partiumId)}return i.assemblyHierarchyNodesService.getAssemblyHierarchyNodes(e).pipe((0,operators_1.map)((function(e){return e.filter((function(e){return null!=e}))})))})),(0,operators_1.map)((function(e){return(0,lodash_1.sortBy)(e,(function(e){return e.breadcrumbs.length}))})))},r.prototype.loadAllChildren=function(e){var r=new rxjs_1.Subject,t=this.assemblyHierarchyNodesService.getAssemblyHierarchyNodesByParentId(e);return t.loadInitialPage(!0).pipe((0,operators_1.first)(),(0,operators_1.mergeMap)((function(e){return e.moreResultsAvailable()?(0,rxjs_1.defer)((function(){return t.loadMore()})).pipe((0,operators_1.first)(),(0,operators_1.tap)((function(e){e.moreResultsAvailable()?setTimeout((function(){r.next()})):r.complete()})),(0,operators_1.repeatWhen)((function(){return r.asObservable()}))):(0,rxjs_1.of)(e)})),(0,operators_1.map)((function(e){return e.items})))},r=__decorate([(0,injection_identifier_1.InjectionIdentifier)("CSAHelperService")],r)}(base_service_1.BaseService);exports.CSAHelperService=CSAHelperService;