@meshmakers/octo-services 3.3.34 → 3.3.380

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.
@@ -1,12 +1,2871 @@
1
- import { map, finalize } from 'rxjs/operators';
2
- import { PagedResultDto, MessageService, DataSourceBase } from '@meshmakers/shared-services';
3
- import { InMemoryCache, ApolloLink } from '@apollo/client/core';
4
1
  import * as i0 from '@angular/core';
5
- import { inject, Injector, Injectable, NgModule } from '@angular/core';
2
+ import { inject, Injector, Injectable, InjectionToken, NgModule, makeEnvironmentProviders } from '@angular/core';
6
3
  import { onError } from '@apollo/client/link/error';
4
+ import { MessageService, DataSourceBase, PagedResultDto, provideMmSharedServices } from '@meshmakers/shared-services';
5
+ import { ApolloLink, InMemoryCache } from '@apollo/client/core';
7
6
  import { CombinedGraphQLErrors } from '@apollo/client';
8
- import { map as map$1 } from 'rxjs';
7
+ import * as i1 from 'apollo-angular';
8
+ import { gql } from 'apollo-angular';
9
+ import { map, catchError, finalize } from 'rxjs/operators';
10
+ import { of, firstValueFrom, map as map$1, Subject, throwError } from 'rxjs';
11
+ import { HttpClient, HttpParams, HttpErrorResponse, HttpHeaders } from '@angular/common/http';
12
+ import { Upload } from 'tus-js-client';
13
+ import { AuthorizeService } from '@meshmakers/shared-auth';
9
14
 
15
+ class OctoServiceOptions {
16
+ assetServices;
17
+ defaultDataSourceId;
18
+ constructor() {
19
+ this.assetServices = null;
20
+ this.defaultDataSourceId = undefined;
21
+ }
22
+ }
23
+
24
+ class OctoErrorLink extends ApolloLink {
25
+ errorLink;
26
+ injector = inject(Injector);
27
+ constructor() {
28
+ super();
29
+ // There is currently no other way to inject a service into an Apollo Link,
30
+ // because Apollo deprecated without replacement
31
+ this.errorLink = onError(({ error, operation, forward }) => {
32
+ if (error) {
33
+ if (error instanceof CombinedGraphQLErrors) {
34
+ this.showError(error);
35
+ }
36
+ else {
37
+ this.showErrorLike(error);
38
+ }
39
+ }
40
+ return forward(operation);
41
+ });
42
+ }
43
+ showErrorLike(error) {
44
+ const messageService = this.injector.get(MessageService);
45
+ console.error(error);
46
+ messageService.showError(error.message);
47
+ }
48
+ showError(combinedGraphQLErrors) {
49
+ const messageService = this.injector.get(MessageService);
50
+ let title = 'GraphQL error';
51
+ let details = '';
52
+ for (const error of combinedGraphQLErrors.errors) {
53
+ console.error(error);
54
+ if (title == 'GraphQL error') {
55
+ title = `${error.message}`;
56
+ }
57
+ else {
58
+ details += `======================`;
59
+ details += `${error.message}`;
60
+ }
61
+ if (error.extensions) {
62
+ // check for custom error properties, OctoDetails should be an array of MessageDetails
63
+ if (error.extensions['code']) {
64
+ details += `Global Result Code: ${error.extensions['code']}`;
65
+ }
66
+ if (error.extensions['OctoDetails'] && Array.isArray(error.extensions['OctoDetails'])) {
67
+ // iterate over the details and add them to the message
68
+ for (const detail of error.extensions['OctoDetails']) {
69
+ if (detail.message) {
70
+ details += `\n\n✗ ${detail.message}`;
71
+ }
72
+ if (detail.details && Array.isArray(detail.details)) {
73
+ for (const subDetail of detail.details) {
74
+ if (subDetail) {
75
+ details += `\n • ${subDetail}`;
76
+ }
77
+ }
78
+ }
79
+ }
80
+ }
81
+ }
82
+ messageService.showErrorWithDetails(title, details);
83
+ }
84
+ }
85
+ request(operation, forward) {
86
+ return this.errorLink.request(operation, forward);
87
+ }
88
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: OctoErrorLink, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
89
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: OctoErrorLink });
90
+ }
91
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: OctoErrorLink, decorators: [{
92
+ type: Injectable
93
+ }], ctorParameters: () => [] });
94
+
95
+ class GraphQL {
96
+ static getCursor(position) {
97
+ return btoa(`arrayconnection:${position}`);
98
+ }
99
+ static offsetToCursor(offset) {
100
+ if (!offset) {
101
+ return null;
102
+ }
103
+ return this.getCursor(offset - 1);
104
+ }
105
+ }
106
+ const GraphQLCommonIgnoredProperties = ['__typename'];
107
+ const GraphQLCloneIgnoredProperties = ['id', 'rtId', 'ckTypeId', '__typename'];
108
+
109
+ class CkTypeMetaData {
110
+ constructor(ckTypeId, name, description, svgIcon) {
111
+ this._ckTypeId = ckTypeId;
112
+ this._name = name;
113
+ this._description = description;
114
+ this._svgIcon = svgIcon;
115
+ }
116
+ _ckTypeId;
117
+ _name;
118
+ _description;
119
+ _svgIcon;
120
+ get ckTypeId() {
121
+ return this._ckTypeId;
122
+ }
123
+ get name() {
124
+ return this._name;
125
+ }
126
+ get description() {
127
+ return this._description;
128
+ }
129
+ get svgIcon() {
130
+ return this._svgIcon;
131
+ }
132
+ }
133
+
134
+ class RtAssociationMetaData {
135
+ _roleId;
136
+ _ckTypeId;
137
+ constructor(roleId, ckTypeId) {
138
+ this._roleId = roleId;
139
+ this._ckTypeId = ckTypeId;
140
+ }
141
+ get ckTypeId() {
142
+ return this._ckTypeId;
143
+ }
144
+ get roleId() {
145
+ return this._roleId;
146
+ }
147
+ }
148
+
149
+ class LevelMetaData {
150
+ constructor(ckTypeId, directRoles, indirectRoles) {
151
+ this._ckTypeId = ckTypeId;
152
+ this._directRoles = directRoles;
153
+ this._indirectRoles = indirectRoles;
154
+ }
155
+ _ckTypeId;
156
+ _directRoles;
157
+ _indirectRoles;
158
+ get ckTypeId() {
159
+ return this._ckTypeId;
160
+ }
161
+ get directRoles() {
162
+ return this._directRoles;
163
+ }
164
+ get indirectRoles() {
165
+ return this._indirectRoles;
166
+ }
167
+ }
168
+
169
+ var HealthStatus;
170
+ (function (HealthStatus) {
171
+ /*
172
+ * Indicates that the health check determined that the component was unhealthy, or an unhandled
173
+ */
174
+ HealthStatus["Unhealthy"] = "Unhealthy";
175
+ /*
176
+ * Indicates that the health check determined that the component was in a degraded state.
177
+ */
178
+ HealthStatus["Degraded"] = "Degraded";
179
+ /*
180
+ * Indicates that the health check determined that the component was healthy.
181
+ */
182
+ HealthStatus["Healthy"] = "Healthy";
183
+ })(HealthStatus || (HealthStatus = {}));
184
+
185
+ var ImportStrategyDto;
186
+ (function (ImportStrategyDto) {
187
+ ImportStrategyDto[ImportStrategyDto["InsertOnly"] = 0] = "InsertOnly";
188
+ ImportStrategyDto[ImportStrategyDto["Upsert"] = 1] = "Upsert";
189
+ })(ImportStrategyDto || (ImportStrategyDto = {}));
190
+
191
+ class ProgressValue {
192
+ statusText;
193
+ progressValue;
194
+ constructor() {
195
+ this.statusText = null;
196
+ this.progressValue = 0;
197
+ }
198
+ }
199
+
200
+ /**
201
+ * Abstract progress window service.
202
+ * Consuming apps must provide a concrete implementation (Material or Kendo).
203
+ *
204
+ * @example
205
+ * ```typescript
206
+ * // In app.config.ts
207
+ * import { ProgressWindowService as AbstractProgressWindowService } from '@meshmakers/octo-services';
208
+ * import { ProgressWindowService } from '@meshmakers/shared-ui-legacy'; // Material impl
209
+ *
210
+ * providers: [
211
+ * { provide: AbstractProgressWindowService, useClass: ProgressWindowService }
212
+ * ]
213
+ * ```
214
+ */
215
+ class ProgressWindowService {
216
+ }
217
+
218
+ /**
219
+ * Communication service DTOs for adapter and pipeline management.
220
+ */
221
+ /**
222
+ * Deployment state for pipeline operations.
223
+ */
224
+ var DeploymentState;
225
+ (function (DeploymentState) {
226
+ DeploymentState[DeploymentState["Processing"] = 0] = "Processing";
227
+ DeploymentState[DeploymentState["Success"] = 1] = "Success";
228
+ DeploymentState[DeploymentState["Failed"] = 2] = "Failed";
229
+ })(DeploymentState || (DeploymentState = {}));
230
+ /**
231
+ * Severity levels for debug messages.
232
+ */
233
+ var LoggerSeverity;
234
+ (function (LoggerSeverity) {
235
+ LoggerSeverity[LoggerSeverity["Debug"] = 0] = "Debug";
236
+ LoggerSeverity[LoggerSeverity["Information"] = 1] = "Information";
237
+ LoggerSeverity[LoggerSeverity["Warning"] = 2] = "Warning";
238
+ LoggerSeverity[LoggerSeverity["Error"] = 3] = "Error";
239
+ })(LoggerSeverity || (LoggerSeverity = {}));
240
+
241
+ /** Defines the type of aggregation for runtime queries. */
242
+ var AggregationInputTypesDto;
243
+ (function (AggregationInputTypesDto) {
244
+ AggregationInputTypesDto["AverageDto"] = "AVERAGE";
245
+ AggregationInputTypesDto["CountDto"] = "COUNT";
246
+ AggregationInputTypesDto["MaximumDto"] = "MAXIMUM";
247
+ AggregationInputTypesDto["MinimumDto"] = "MINIMUM";
248
+ AggregationInputTypesDto["SumDto"] = "SUM";
249
+ })(AggregationInputTypesDto || (AggregationInputTypesDto = {}));
250
+ /** Defines the type of aggregation for runtime query results. */
251
+ var AggregationTypesDto;
252
+ (function (AggregationTypesDto) {
253
+ AggregationTypesDto["AverageDto"] = "AVERAGE";
254
+ AggregationTypesDto["CountDto"] = "COUNT";
255
+ AggregationTypesDto["MaximumDto"] = "MAXIMUM";
256
+ AggregationTypesDto["MinimumDto"] = "MINIMUM";
257
+ AggregationTypesDto["NoneDto"] = "NONE";
258
+ AggregationTypesDto["SumDto"] = "SUM";
259
+ })(AggregationTypesDto || (AggregationTypesDto = {}));
260
+ /** Defines the type of modification during write operations */
261
+ var AssociationModOptionsDto;
262
+ (function (AssociationModOptionsDto) {
263
+ AssociationModOptionsDto["CreateDto"] = "CREATE";
264
+ AssociationModOptionsDto["DeleteDto"] = "DELETE";
265
+ })(AssociationModOptionsDto || (AssociationModOptionsDto = {}));
266
+ /** Enum of valid attribute types */
267
+ var AttributeValueTypeDto;
268
+ (function (AttributeValueTypeDto) {
269
+ AttributeValueTypeDto["BinaryDto"] = "BINARY";
270
+ AttributeValueTypeDto["BinaryLinkedDto"] = "BINARY_LINKED";
271
+ AttributeValueTypeDto["BooleanDto"] = "BOOLEAN";
272
+ AttributeValueTypeDto["DateTimeDto"] = "DATE_TIME";
273
+ AttributeValueTypeDto["DateTimeOffsetDto"] = "DATE_TIME_OFFSET";
274
+ AttributeValueTypeDto["DoubleDto"] = "DOUBLE";
275
+ AttributeValueTypeDto["EnumDto"] = "ENUM";
276
+ AttributeValueTypeDto["GeospatialPointDto"] = "GEOSPATIAL_POINT";
277
+ AttributeValueTypeDto["IntDto"] = "INT";
278
+ AttributeValueTypeDto["IntegerDto"] = "INTEGER";
279
+ AttributeValueTypeDto["Integer_64Dto"] = "INTEGER_64";
280
+ AttributeValueTypeDto["IntegerArrayDto"] = "INTEGER_ARRAY";
281
+ AttributeValueTypeDto["Int_64Dto"] = "INT_64";
282
+ AttributeValueTypeDto["IntArrayDto"] = "INT_ARRAY";
283
+ AttributeValueTypeDto["RecordDto"] = "RECORD";
284
+ AttributeValueTypeDto["RecordArrayDto"] = "RECORD_ARRAY";
285
+ AttributeValueTypeDto["StringDto"] = "STRING";
286
+ AttributeValueTypeDto["StringArrayDto"] = "STRING_ARRAY";
287
+ AttributeValueTypeDto["TimeSpanDto"] = "TIME_SPAN";
288
+ })(AttributeValueTypeDto || (AttributeValueTypeDto = {}));
289
+ /** Runtime entities of construction kit enum 'Basic/LegalEntityType' */
290
+ var BasicLegalEntityTypeDto;
291
+ (function (BasicLegalEntityTypeDto) {
292
+ /** Actor in economic life, such as any natural or legal person with UGB relevance. */
293
+ BasicLegalEntityTypeDto["CompanyDto"] = "COMPANY";
294
+ /** Legal structure with the characteristics of a person */
295
+ BasicLegalEntityTypeDto["LegalPersonDto"] = "LEGAL_PERSON";
296
+ /** Administrative unit with sovereign power such as municipality, federal state, republic. */
297
+ BasicLegalEntityTypeDto["LocalAuthorityDto"] = "LOCAL_AUTHORITY";
298
+ /** A natural person is a human being with legal capacity, in contrast to a legal person (such as a company, organization, or government entity). */
299
+ BasicLegalEntityTypeDto["NaturalPersonDto"] = "NATURAL_PERSON";
300
+ })(BasicLegalEntityTypeDto || (BasicLegalEntityTypeDto = {}));
301
+ /** Runtime entities of construction kit enum 'Basic/Salutation' */
302
+ var BasicSalutationDto;
303
+ (function (BasicSalutationDto) {
304
+ /** The salutation is female */
305
+ BasicSalutationDto["FemaleDto"] = "FEMALE";
306
+ /** The salutation is male */
307
+ BasicSalutationDto["MaleDto"] = "MALE";
308
+ /** The salutation is non-binary */
309
+ BasicSalutationDto["NonBinaryDto"] = "NON_BINARY";
310
+ /** The salutation is unknown or not defined */
311
+ BasicSalutationDto["UnknownDto"] = "UNKNOWN";
312
+ })(BasicSalutationDto || (BasicSalutationDto = {}));
313
+ /** Runtime entities of construction kit enum 'Basic/TypeOfTelephoneBasic' */
314
+ var BasicTypeOfTelephoneBasicDto;
315
+ (function (BasicTypeOfTelephoneBasicDto) {
316
+ BasicTypeOfTelephoneBasicDto["HomeDto"] = "HOME";
317
+ BasicTypeOfTelephoneBasicDto["OfficeDto"] = "OFFICE";
318
+ BasicTypeOfTelephoneBasicDto["SecretaryDto"] = "SECRETARY";
319
+ BasicTypeOfTelephoneBasicDto["SubstituteDto"] = "SUBSTITUTE";
320
+ })(BasicTypeOfTelephoneBasicDto || (BasicTypeOfTelephoneBasicDto = {}));
321
+ /** Runtime entities of construction kit enum 'Basic/TypeOfTelephoneEnhanced' */
322
+ var BasicTypeOfTelephoneEnhancedDto;
323
+ (function (BasicTypeOfTelephoneEnhancedDto) {
324
+ BasicTypeOfTelephoneEnhancedDto["HomeDto"] = "HOME";
325
+ BasicTypeOfTelephoneEnhancedDto["OfficeDto"] = "OFFICE";
326
+ BasicTypeOfTelephoneEnhancedDto["OfficeMobileDto"] = "OFFICE_MOBILE";
327
+ BasicTypeOfTelephoneEnhancedDto["PrivateMobileDto"] = "PRIVATE_MOBILE";
328
+ BasicTypeOfTelephoneEnhancedDto["SecretaryDto"] = "SECRETARY";
329
+ BasicTypeOfTelephoneEnhancedDto["SubstituteDto"] = "SUBSTITUTE";
330
+ })(BasicTypeOfTelephoneEnhancedDto || (BasicTypeOfTelephoneEnhancedDto = {}));
331
+ /** Runtime entities of construction kit enum 'Basic/UnitOfMeasure' */
332
+ var BasicUnitOfMeasureDto;
333
+ (function (BasicUnitOfMeasureDto) {
334
+ /** Kilowatt-hour, a unit of energy equal to one kilowatt of power used for one hour */
335
+ BasicUnitOfMeasureDto["KWhDto"] = "K_WH";
336
+ /** Megawatt-hour, a unit of energy equal to one megawatt of power used for one hour */
337
+ BasicUnitOfMeasureDto["MWhDto"] = "M_WH";
338
+ /** No unit applicable */
339
+ BasicUnitOfMeasureDto["NonUnitDto"] = "NON_UNIT";
340
+ })(BasicUnitOfMeasureDto || (BasicUnitOfMeasureDto = {}));
341
+ /** Defines the possible operation operations to extend construction elements. */
342
+ var CkExtensionUpdateOperationsDto;
343
+ (function (CkExtensionUpdateOperationsDto) {
344
+ CkExtensionUpdateOperationsDto["DeleteDto"] = "DELETE";
345
+ CkExtensionUpdateOperationsDto["InsertDto"] = "INSERT";
346
+ })(CkExtensionUpdateOperationsDto || (CkExtensionUpdateOperationsDto = {}));
347
+ /** Defines possible delete strategies of a runtime type */
348
+ var DeleteStrategiesDto;
349
+ (function (DeleteStrategiesDto) {
350
+ DeleteStrategiesDto["ArchiveDto"] = "ARCHIVE";
351
+ DeleteStrategiesDto["EraseDto"] = "ERASE";
352
+ })(DeleteStrategiesDto || (DeleteStrategiesDto = {}));
353
+ /** Defines the operator of field compare */
354
+ var FieldFilterOperatorsDto;
355
+ (function (FieldFilterOperatorsDto) {
356
+ FieldFilterOperatorsDto["AnyEqDto"] = "ANY_EQ";
357
+ FieldFilterOperatorsDto["AnyLikeDto"] = "ANY_LIKE";
358
+ FieldFilterOperatorsDto["EqualsDto"] = "EQUALS";
359
+ FieldFilterOperatorsDto["GreaterEqualThanDto"] = "GREATER_EQUAL_THAN";
360
+ FieldFilterOperatorsDto["GreaterThanDto"] = "GREATER_THAN";
361
+ FieldFilterOperatorsDto["InDto"] = "IN";
362
+ FieldFilterOperatorsDto["LessEqualThanDto"] = "LESS_EQUAL_THAN";
363
+ FieldFilterOperatorsDto["LessThanDto"] = "LESS_THAN";
364
+ FieldFilterOperatorsDto["LikeDto"] = "LIKE";
365
+ FieldFilterOperatorsDto["MatchRegExDto"] = "MATCH_REG_EX";
366
+ FieldFilterOperatorsDto["NotEqualsDto"] = "NOT_EQUALS";
367
+ FieldFilterOperatorsDto["NotInDto"] = "NOT_IN";
368
+ })(FieldFilterOperatorsDto || (FieldFilterOperatorsDto = {}));
369
+ /** Enum of graph directions */
370
+ var GraphDirectionDto;
371
+ (function (GraphDirectionDto) {
372
+ GraphDirectionDto["AnyDto"] = "ANY";
373
+ GraphDirectionDto["InboundDto"] = "INBOUND";
374
+ GraphDirectionDto["OutboundDto"] = "OUTBOUND";
375
+ })(GraphDirectionDto || (GraphDirectionDto = {}));
376
+ /** Enum of the availability states of models. */
377
+ var ModelStateDto;
378
+ (function (ModelStateDto) {
379
+ ModelStateDto["AvailableDto"] = "AVAILABLE";
380
+ ModelStateDto["ImportingDto"] = "IMPORTING";
381
+ ModelStateDto["ResolveFailedDto"] = "RESOLVE_FAILED";
382
+ })(ModelStateDto || (ModelStateDto = {}));
383
+ /** Enum of valid multiplicities for association roles */
384
+ var MultiplicitiesDto;
385
+ (function (MultiplicitiesDto) {
386
+ MultiplicitiesDto["NDto"] = "N";
387
+ MultiplicitiesDto["OneDto"] = "ONE";
388
+ MultiplicitiesDto["ZeroOrOneDto"] = "ZERO_OR_ONE";
389
+ })(MultiplicitiesDto || (MultiplicitiesDto = {}));
390
+ /** Runtime entities of construction kit enum 'OctoSdkDemo/CustomerStatus' */
391
+ var OctoSdkDemoCustomerStatusDto;
392
+ (function (OctoSdkDemoCustomerStatusDto) {
393
+ OctoSdkDemoCustomerStatusDto["ActiveDto"] = "ACTIVE";
394
+ OctoSdkDemoCustomerStatusDto["PendingDto"] = "PENDING";
395
+ OctoSdkDemoCustomerStatusDto["SuspendedDto"] = "SUSPENDED";
396
+ })(OctoSdkDemoCustomerStatusDto || (OctoSdkDemoCustomerStatusDto = {}));
397
+ /** Runtime entities of construction kit enum 'OctoSdkDemo/NetworkOperator' */
398
+ var OctoSdkDemoNetworkOperatorDto;
399
+ (function (OctoSdkDemoNetworkOperatorDto) {
400
+ OctoSdkDemoNetworkOperatorDto["UnknownDto"] = "UNKNOWN";
401
+ })(OctoSdkDemoNetworkOperatorDto || (OctoSdkDemoNetworkOperatorDto = {}));
402
+ /** Runtime entities of construction kit enum 'OctoSdkDemo/OperatingStatus' */
403
+ var OctoSdkDemoOperatingStatusDto;
404
+ (function (OctoSdkDemoOperatingStatusDto) {
405
+ OctoSdkDemoOperatingStatusDto["MaintenanceDto"] = "MAINTENANCE";
406
+ OctoSdkDemoOperatingStatusDto["OkDto"] = "OK";
407
+ OctoSdkDemoOperatingStatusDto["UnknownDto"] = "UNKNOWN";
408
+ })(OctoSdkDemoOperatingStatusDto || (OctoSdkDemoOperatingStatusDto = {}));
409
+ /** The type of search that is used (a text based search using text analysis (high performance, scoring, maybe more false positives) or filtering of attributes (lower performance, more exact results) */
410
+ var SearchFilterTypesDto;
411
+ (function (SearchFilterTypesDto) {
412
+ SearchFilterTypesDto["AttributeFilterDto"] = "ATTRIBUTE_FILTER";
413
+ SearchFilterTypesDto["TextSearchDto"] = "TEXT_SEARCH";
414
+ })(SearchFilterTypesDto || (SearchFilterTypesDto = {}));
415
+ /** Defines the sort order */
416
+ var SortOrdersDto;
417
+ (function (SortOrdersDto) {
418
+ SortOrdersDto["AscendingDto"] = "ASCENDING";
419
+ SortOrdersDto["DefaultDto"] = "DEFAULT";
420
+ SortOrdersDto["DescendingDto"] = "DESCENDING";
421
+ })(SortOrdersDto || (SortOrdersDto = {}));
422
+ /** Runtime entities of construction kit enum 'System/AggregationTypes' */
423
+ var SystemAggregationTypesDto;
424
+ (function (SystemAggregationTypesDto) {
425
+ /** Calculates the average value */
426
+ SystemAggregationTypesDto["AverageDto"] = "AVERAGE";
427
+ /** Counts the number of items */
428
+ SystemAggregationTypesDto["CountDto"] = "COUNT";
429
+ /** Finds the maximum value */
430
+ SystemAggregationTypesDto["MaximumDto"] = "MAXIMUM";
431
+ /** Finds the minimum value */
432
+ SystemAggregationTypesDto["MinimumDto"] = "MINIMUM";
433
+ /** Calculates the sum of values */
434
+ SystemAggregationTypesDto["SumDto"] = "SUM";
435
+ })(SystemAggregationTypesDto || (SystemAggregationTypesDto = {}));
436
+ /** Runtime entities of construction kit enum 'System.Communication/CommunicationState' */
437
+ var SystemCommunicationCommunicationStateDto;
438
+ (function (SystemCommunicationCommunicationStateDto) {
439
+ SystemCommunicationCommunicationStateDto["OfflineDto"] = "OFFLINE";
440
+ SystemCommunicationCommunicationStateDto["OnlineDto"] = "ONLINE";
441
+ SystemCommunicationCommunicationStateDto["UnregisteredDto"] = "UNREGISTERED";
442
+ })(SystemCommunicationCommunicationStateDto || (SystemCommunicationCommunicationStateDto = {}));
443
+ /** Runtime entities of construction kit enum 'System.Communication/ConfigurationState' */
444
+ var SystemCommunicationConfigurationStateDto;
445
+ (function (SystemCommunicationConfigurationStateDto) {
446
+ SystemCommunicationConfigurationStateDto["ConfiguredDto"] = "CONFIGURED";
447
+ SystemCommunicationConfigurationStateDto["ErrorDto"] = "ERROR";
448
+ SystemCommunicationConfigurationStateDto["PendingDto"] = "PENDING";
449
+ SystemCommunicationConfigurationStateDto["UnconfiguredDto"] = "UNCONFIGURED";
450
+ })(SystemCommunicationConfigurationStateDto || (SystemCommunicationConfigurationStateDto = {}));
451
+ /** Runtime entities of construction kit enum 'System.Communication/DeploymentState' */
452
+ var SystemCommunicationDeploymentStateDto;
453
+ (function (SystemCommunicationDeploymentStateDto) {
454
+ SystemCommunicationDeploymentStateDto["DeployedDto"] = "DEPLOYED";
455
+ SystemCommunicationDeploymentStateDto["ErrorDto"] = "ERROR";
456
+ SystemCommunicationDeploymentStateDto["PendingDto"] = "PENDING";
457
+ SystemCommunicationDeploymentStateDto["UndeployedDto"] = "UNDEPLOYED";
458
+ })(SystemCommunicationDeploymentStateDto || (SystemCommunicationDeploymentStateDto = {}));
459
+ /** Runtime entities of construction kit enum 'System.Communication/PipelineExecutionStatus' */
460
+ var SystemCommunicationPipelineExecutionStatusDto;
461
+ (function (SystemCommunicationPipelineExecutionStatusDto) {
462
+ SystemCommunicationPipelineExecutionStatusDto["CancelledDto"] = "CANCELLED";
463
+ SystemCommunicationPipelineExecutionStatusDto["CompletedDto"] = "COMPLETED";
464
+ SystemCommunicationPipelineExecutionStatusDto["FailedDto"] = "FAILED";
465
+ SystemCommunicationPipelineExecutionStatusDto["InterruptedDto"] = "INTERRUPTED";
466
+ SystemCommunicationPipelineExecutionStatusDto["RunningDto"] = "RUNNING";
467
+ })(SystemCommunicationPipelineExecutionStatusDto || (SystemCommunicationPipelineExecutionStatusDto = {}));
468
+ /** Runtime entities of construction kit enum 'System.Communication/PipelineTriggerType' */
469
+ var SystemCommunicationPipelineTriggerTypeDto;
470
+ (function (SystemCommunicationPipelineTriggerTypeDto) {
471
+ SystemCommunicationPipelineTriggerTypeDto["EventDto"] = "EVENT";
472
+ SystemCommunicationPipelineTriggerTypeDto["ManualDto"] = "MANUAL";
473
+ SystemCommunicationPipelineTriggerTypeDto["ScheduledDto"] = "SCHEDULED";
474
+ SystemCommunicationPipelineTriggerTypeDto["StartupDto"] = "STARTUP";
475
+ })(SystemCommunicationPipelineTriggerTypeDto || (SystemCommunicationPipelineTriggerTypeDto = {}));
476
+ /** Runtime entities of construction kit enum 'System/EnvironmentModes' */
477
+ var SystemEnvironmentModesDto;
478
+ (function (SystemEnvironmentModesDto) {
479
+ /** The tenant is in development mode, used for development and testing */
480
+ SystemEnvironmentModesDto["DevelopmentDto"] = "DEVELOPMENT";
481
+ /** The tenant is in production mode, used for live operations */
482
+ SystemEnvironmentModesDto["ProductionDto"] = "PRODUCTION";
483
+ /** The tenant is in staging mode, used for pre-production testing */
484
+ SystemEnvironmentModesDto["StagingDto"] = "STAGING";
485
+ /** The tenant is in testing mode, used for quality assurance */
486
+ SystemEnvironmentModesDto["TestingDto"] = "TESTING";
487
+ })(SystemEnvironmentModesDto || (SystemEnvironmentModesDto = {}));
488
+ /** Runtime entities of construction kit enum 'System/FieldFilterOperator' */
489
+ var SystemFieldFilterOperatorDto;
490
+ (function (SystemFieldFilterOperatorDto) {
491
+ /** Compares an array field with at least one element that matches the specified value. */
492
+ SystemFieldFilterOperatorDto["AnyEqDto"] = "ANY_EQ";
493
+ /** Compares an array field with at least one element that matches the specified value using a pattern matching comparison. Use * as a wildcard character. */
494
+ SystemFieldFilterOperatorDto["AnyLikeDto"] = "ANY_LIKE";
495
+ /** Compares the specified field to the specified value. */
496
+ SystemFieldFilterOperatorDto["EqualsDto"] = "EQUALS";
497
+ /** Compares the specified field to the specified value and returns true if the field value is greater than or equal to the specified value. */
498
+ SystemFieldFilterOperatorDto["GreaterEqualThanDto"] = "GREATER_EQUAL_THAN";
499
+ /** Compares the specified field to the specified value and returns true if the field value is greater than the specified value. */
500
+ SystemFieldFilterOperatorDto["GreaterThanDto"] = "GREATER_THAN";
501
+ /** Compares a field to be equal any value in the specified array. */
502
+ SystemFieldFilterOperatorDto["InDto"] = "IN";
503
+ /** Compares the specified field to the specified value and returns true if the field value is less than or equal to the specified value. */
504
+ SystemFieldFilterOperatorDto["LessEqualThanDto"] = "LESS_EQUAL_THAN";
505
+ /** Compares the specified field to the specified value and returns true if the field value is less than the specified value. */
506
+ SystemFieldFilterOperatorDto["LessThanDto"] = "LESS_THAN";
507
+ /** Compares a field to the specified value using a pattern matching comparison. Use * as a wildcard character. */
508
+ SystemFieldFilterOperatorDto["LikeDto"] = "LIKE";
509
+ /** Matches an array field with at least one element that matches all the specified query criteria. */
510
+ SystemFieldFilterOperatorDto["MatchDto"] = "MATCH";
511
+ /** Matches a field containing a value that matches the specified regular expression. */
512
+ SystemFieldFilterOperatorDto["MatchRegExDto"] = "MATCH_REG_EX";
513
+ /** Compares the specified field to the specified value and returns true if the values are not equal. */
514
+ SystemFieldFilterOperatorDto["NotEqualsDto"] = "NOT_EQUALS";
515
+ /** Compares a field to be not equal any value in the specified array. */
516
+ SystemFieldFilterOperatorDto["NotInDto"] = "NOT_IN";
517
+ })(SystemFieldFilterOperatorDto || (SystemFieldFilterOperatorDto = {}));
518
+ /** Runtime entities of construction kit enum 'System.Identity/TokenExpiration' */
519
+ var SystemIdentityTokenExpirationDto;
520
+ (function (SystemIdentityTokenExpirationDto) {
521
+ SystemIdentityTokenExpirationDto["AbsoluteDto"] = "ABSOLUTE";
522
+ SystemIdentityTokenExpirationDto["SlidingDto"] = "SLIDING";
523
+ })(SystemIdentityTokenExpirationDto || (SystemIdentityTokenExpirationDto = {}));
524
+ /** Runtime entities of construction kit enum 'System.Identity/TokenType' */
525
+ var SystemIdentityTokenTypeDto;
526
+ (function (SystemIdentityTokenTypeDto) {
527
+ SystemIdentityTokenTypeDto["JwtDto"] = "JWT";
528
+ SystemIdentityTokenTypeDto["ReferenceDto"] = "REFERENCE";
529
+ })(SystemIdentityTokenTypeDto || (SystemIdentityTokenTypeDto = {}));
530
+ /** Runtime entities of construction kit enum 'System.Identity/TokenUsage' */
531
+ var SystemIdentityTokenUsageDto;
532
+ (function (SystemIdentityTokenUsageDto) {
533
+ SystemIdentityTokenUsageDto["OneTimeOnlyDto"] = "ONE_TIME_ONLY";
534
+ SystemIdentityTokenUsageDto["ReUseDto"] = "RE_USE";
535
+ })(SystemIdentityTokenUsageDto || (SystemIdentityTokenUsageDto = {}));
536
+ /** Runtime entities of construction kit enum 'System/MaintenanceLevels' */
537
+ var SystemMaintenanceLevelsDto;
538
+ (function (SystemMaintenanceLevelsDto) {
539
+ /** The full system is in maintenance mode, the tenant is not operational */
540
+ SystemMaintenanceLevelsDto["FullSystemDto"] = "FULL_SYSTEM";
541
+ /** The maintenance mode is off, the tenant is fully operational */
542
+ SystemMaintenanceLevelsDto["OffDto"] = "OFF";
543
+ /** The user apps are in maintenance mode, the tenant is operational but user apps are not available */
544
+ SystemMaintenanceLevelsDto["UserAppsDto"] = "USER_APPS";
545
+ })(SystemMaintenanceLevelsDto || (SystemMaintenanceLevelsDto = {}));
546
+ /** Runtime entities of construction kit enum 'System.Notification/EventLevels' */
547
+ var SystemNotificationEventLevelsDto;
548
+ (function (SystemNotificationEventLevelsDto) {
549
+ /** Critical */
550
+ SystemNotificationEventLevelsDto["CriticalDto"] = "CRITICAL";
551
+ /** Debug */
552
+ SystemNotificationEventLevelsDto["DebugDto"] = "DEBUG";
553
+ /** Error */
554
+ SystemNotificationEventLevelsDto["ErrorDto"] = "ERROR";
555
+ /** Information */
556
+ SystemNotificationEventLevelsDto["InformationDto"] = "INFORMATION";
557
+ /** Warning */
558
+ SystemNotificationEventLevelsDto["WarningDto"] = "WARNING";
559
+ })(SystemNotificationEventLevelsDto || (SystemNotificationEventLevelsDto = {}));
560
+ /** Runtime entities of construction kit enum 'System.Notification/EventSources' */
561
+ var SystemNotificationEventSourcesDto;
562
+ (function (SystemNotificationEventSourcesDto) {
563
+ /** The event was generated by the Admin Panel. */
564
+ SystemNotificationEventSourcesDto["AdminPanelDto"] = "ADMIN_PANEL";
565
+ /** The event was generated by the Asset Repository Service. */
566
+ SystemNotificationEventSourcesDto["AssetRepositoryServiceDto"] = "ASSET_REPOSITORY_SERVICE";
567
+ /** The event was generated by the Bot Service. */
568
+ SystemNotificationEventSourcesDto["BotServiceDto"] = "BOT_SERVICE";
569
+ /** The event was generated by the Communication Service. */
570
+ SystemNotificationEventSourcesDto["CommunicationServiceDto"] = "COMMUNICATION_SERVICE";
571
+ /** The event was generated by the Identity Service. */
572
+ SystemNotificationEventSourcesDto["IdentityServiceDto"] = "IDENTITY_SERVICE";
573
+ /** The event was generated by the Mesh Adapter. */
574
+ SystemNotificationEventSourcesDto["MeshAdapterDto"] = "MESH_ADAPTER";
575
+ /** No source has been assigned to the event. */
576
+ SystemNotificationEventSourcesDto["UndefinedDto"] = "UNDEFINED";
577
+ })(SystemNotificationEventSourcesDto || (SystemNotificationEventSourcesDto = {}));
578
+ /** Runtime entities of construction kit enum 'System.Notification/EventStates' */
579
+ var SystemNotificationEventStatesDto;
580
+ (function (SystemNotificationEventStatesDto) {
581
+ SystemNotificationEventStatesDto["ActiveDto"] = "ACTIVE";
582
+ SystemNotificationEventStatesDto["ErrorDto"] = "ERROR";
583
+ SystemNotificationEventStatesDto["InactiveDto"] = "INACTIVE";
584
+ })(SystemNotificationEventStatesDto || (SystemNotificationEventStatesDto = {}));
585
+ /** Runtime entities of construction kit enum 'System.Notification/NotificationTypes' */
586
+ var SystemNotificationNotificationTypesDto;
587
+ (function (SystemNotificationNotificationTypesDto) {
588
+ SystemNotificationNotificationTypesDto["EMailDto"] = "E_MAIL";
589
+ SystemNotificationNotificationTypesDto["PushDto"] = "PUSH";
590
+ SystemNotificationNotificationTypesDto["SmsDto"] = "SMS";
591
+ })(SystemNotificationNotificationTypesDto || (SystemNotificationNotificationTypesDto = {}));
592
+ /** Runtime entities of construction kit enum 'System.Notification/RenderingTypes' */
593
+ var SystemNotificationRenderingTypesDto;
594
+ (function (SystemNotificationRenderingTypesDto) {
595
+ SystemNotificationRenderingTypesDto["HtmlDto"] = "HTML";
596
+ SystemNotificationRenderingTypesDto["PlainDto"] = "PLAIN";
597
+ })(SystemNotificationRenderingTypesDto || (SystemNotificationRenderingTypesDto = {}));
598
+ /** Runtime entities of construction kit enum 'System/QueryTypes' */
599
+ var SystemQueryTypesDto;
600
+ (function (SystemQueryTypesDto) {
601
+ /** A flat query */
602
+ SystemQueryTypesDto["FlatDto"] = "FLAT";
603
+ /** A tree query that returns results from a tree */
604
+ SystemQueryTypesDto["TreeDto"] = "TREE";
605
+ })(SystemQueryTypesDto || (SystemQueryTypesDto = {}));
606
+ /** Runtime entities of construction kit enum 'System/SortOrders' */
607
+ var SystemSortOrdersDto;
608
+ (function (SystemSortOrdersDto) {
609
+ /** Ascending order */
610
+ SystemSortOrdersDto["AscendingDto"] = "ASCENDING";
611
+ /** Default sorting based on data source type */
612
+ SystemSortOrdersDto["DefaultDto"] = "DEFAULT";
613
+ /** Descending order */
614
+ SystemSortOrdersDto["DescendingDto"] = "DESCENDING";
615
+ })(SystemSortOrdersDto || (SystemSortOrdersDto = {}));
616
+ /** Enum of valid update types */
617
+ var UpdateTypeDto;
618
+ (function (UpdateTypeDto) {
619
+ UpdateTypeDto["DeleteDto"] = "DELETE";
620
+ UpdateTypeDto["InsertDto"] = "INSERT";
621
+ UpdateTypeDto["ReplaceDto"] = "REPLACE";
622
+ UpdateTypeDto["UndefinedDto"] = "UNDEFINED";
623
+ UpdateTypeDto["UpdateDto"] = "UPDATE";
624
+ })(UpdateTypeDto || (UpdateTypeDto = {}));
625
+
626
+ const result = {
627
+ "possibleTypes": {
628
+ "BasicAsset_RelatesFromUnion": [
629
+ "BasicAsset",
630
+ "BasicCity",
631
+ "BasicCountry",
632
+ "BasicDistrict",
633
+ "BasicEmployee",
634
+ "BasicState",
635
+ "BasicTree",
636
+ "BasicTreeNode",
637
+ "OctoSdkDemoCustomer",
638
+ "OctoSdkDemoMeteringPoint",
639
+ "OctoSdkDemoOperatingFacility",
640
+ "SystemAggregationRtQuery",
641
+ "SystemAutoIncrement",
642
+ "SystemBotAttributeAggregateConfiguration",
643
+ "SystemBotFixup",
644
+ "SystemBotServiceHook",
645
+ "SystemCommunicationDataPipeline",
646
+ "SystemCommunicationDataPipelineTrigger",
647
+ "SystemCommunicationEMailSenderConfiguration",
648
+ "SystemCommunicationEdgeAdapter",
649
+ "SystemCommunicationEdgePipeline",
650
+ "SystemCommunicationEnergyCommunityConfiguration",
651
+ "SystemCommunicationMeshAdapter",
652
+ "SystemCommunicationMeshPipeline",
653
+ "SystemCommunicationPipelineExecution",
654
+ "SystemCommunicationPipelineStatistics",
655
+ "SystemCommunicationPool",
656
+ "SystemCommunicationSapConfiguration",
657
+ "SystemCommunicationTag",
658
+ "SystemGroupingAggregationRtQuery",
659
+ "SystemIdentityApiResource",
660
+ "SystemIdentityApiScope",
661
+ "SystemIdentityAzureEntraIdIdentityProvider",
662
+ "SystemIdentityClient",
663
+ "SystemIdentityFacebookIdentityProvider",
664
+ "SystemIdentityGoogleIdentityProvider",
665
+ "SystemIdentityIdentityResource",
666
+ "SystemIdentityMailNotificationConfiguration",
667
+ "SystemIdentityMicrosoftAdIdentityProvider",
668
+ "SystemIdentityMicrosoftIdentityProvider",
669
+ "SystemIdentityOpenLdapIdentityProvider",
670
+ "SystemIdentityPermission",
671
+ "SystemIdentityPermissionRole",
672
+ "SystemIdentityPersistedGrant",
673
+ "SystemIdentityRole",
674
+ "SystemIdentityUser",
675
+ "SystemMigrationHistory",
676
+ "SystemNotificationCssTemplateConfiguration",
677
+ "SystemNotificationEvent",
678
+ "SystemNotificationNotificationTemplate",
679
+ "SystemNotificationStatefulEvent",
680
+ "SystemQuery",
681
+ "SystemReportingConnectionInfo",
682
+ "SystemReportingFileSystemItem",
683
+ "SystemReportingFolder",
684
+ "SystemReportingFolderRoot",
685
+ "SystemSimpleRtQuery",
686
+ "SystemTenant",
687
+ "SystemTenantConfiguration",
688
+ "SystemTenantModeConfiguration",
689
+ "SystemUIDashboard",
690
+ "SystemUIDashboardWidget",
691
+ "SystemUIPage",
692
+ "SystemUIProcessDiagram",
693
+ "SystemUIStudioRoot",
694
+ "SystemUIStudioTreeItem",
695
+ "SystemUISymbolDefinition",
696
+ "SystemUISymbolLibrary"
697
+ ],
698
+ "BasicDocumentInterface": [],
699
+ "BasicNamedEntityInterface": [
700
+ "BasicTree"
701
+ ],
702
+ "BasicTreeNode_ChildrenUnion": [
703
+ "BasicAsset",
704
+ "BasicCity",
705
+ "BasicCountry",
706
+ "BasicDistrict",
707
+ "BasicState",
708
+ "BasicTreeNode",
709
+ "OctoSdkDemoMeteringPoint",
710
+ "OctoSdkDemoOperatingFacility"
711
+ ],
712
+ "BasicTreeNode_RelatesToUnion": [
713
+ "BasicAsset",
714
+ "BasicCity",
715
+ "BasicCountry",
716
+ "BasicDistrict",
717
+ "BasicEmployee",
718
+ "BasicState",
719
+ "BasicTree",
720
+ "BasicTreeNode",
721
+ "OctoSdkDemoCustomer",
722
+ "OctoSdkDemoMeteringPoint",
723
+ "OctoSdkDemoOperatingFacility",
724
+ "SystemAggregationRtQuery",
725
+ "SystemAutoIncrement",
726
+ "SystemBotAttributeAggregateConfiguration",
727
+ "SystemBotFixup",
728
+ "SystemBotServiceHook",
729
+ "SystemCommunicationDataPipeline",
730
+ "SystemCommunicationDataPipelineTrigger",
731
+ "SystemCommunicationEMailSenderConfiguration",
732
+ "SystemCommunicationEdgeAdapter",
733
+ "SystemCommunicationEdgePipeline",
734
+ "SystemCommunicationEnergyCommunityConfiguration",
735
+ "SystemCommunicationMeshAdapter",
736
+ "SystemCommunicationMeshPipeline",
737
+ "SystemCommunicationPipelineExecution",
738
+ "SystemCommunicationPipelineStatistics",
739
+ "SystemCommunicationPool",
740
+ "SystemCommunicationSapConfiguration",
741
+ "SystemCommunicationTag",
742
+ "SystemGroupingAggregationRtQuery",
743
+ "SystemIdentityApiResource",
744
+ "SystemIdentityApiScope",
745
+ "SystemIdentityAzureEntraIdIdentityProvider",
746
+ "SystemIdentityClient",
747
+ "SystemIdentityFacebookIdentityProvider",
748
+ "SystemIdentityGoogleIdentityProvider",
749
+ "SystemIdentityIdentityResource",
750
+ "SystemIdentityMailNotificationConfiguration",
751
+ "SystemIdentityMicrosoftAdIdentityProvider",
752
+ "SystemIdentityMicrosoftIdentityProvider",
753
+ "SystemIdentityOpenLdapIdentityProvider",
754
+ "SystemIdentityPermission",
755
+ "SystemIdentityPermissionRole",
756
+ "SystemIdentityPersistedGrant",
757
+ "SystemIdentityRole",
758
+ "SystemIdentityUser",
759
+ "SystemMigrationHistory",
760
+ "SystemNotificationCssTemplateConfiguration",
761
+ "SystemNotificationEvent",
762
+ "SystemNotificationNotificationTemplate",
763
+ "SystemNotificationStatefulEvent",
764
+ "SystemQuery",
765
+ "SystemReportingConnectionInfo",
766
+ "SystemReportingFileSystemItem",
767
+ "SystemReportingFolder",
768
+ "SystemReportingFolderRoot",
769
+ "SystemSimpleRtQuery",
770
+ "SystemTenant",
771
+ "SystemTenantConfiguration",
772
+ "SystemTenantModeConfiguration",
773
+ "SystemUIDashboard",
774
+ "SystemUIDashboardWidget",
775
+ "SystemUIPage",
776
+ "SystemUIProcessDiagram",
777
+ "SystemUIStudioRoot",
778
+ "SystemUIStudioTreeItem",
779
+ "SystemUISymbolDefinition",
780
+ "SystemUISymbolLibrary"
781
+ ],
782
+ "BasicTree_ParentUnion": [
783
+ "BasicAsset",
784
+ "BasicCity",
785
+ "BasicCountry",
786
+ "BasicDistrict",
787
+ "BasicState",
788
+ "BasicTree",
789
+ "BasicTreeNode",
790
+ "OctoSdkDemoMeteringPoint",
791
+ "OctoSdkDemoOperatingFacility"
792
+ ],
793
+ "OctoSdkDemoCustomer_OwnedByUnion": [
794
+ "OctoSdkDemoCustomer"
795
+ ],
796
+ "OctoSdkDemoOperatingFacility_OwnsUnion": [
797
+ "OctoSdkDemoOperatingFacility"
798
+ ],
799
+ "RtQueryRow": [
800
+ "RtAggregationQueryRow",
801
+ "RtGroupingAggregationQueryRow",
802
+ "RtSimpleQueryRow"
803
+ ],
804
+ "SystemBotAttributeAggregateConfiguration_ConfiguredByUnion": [
805
+ "SystemBotAttributeAggregateConfiguration"
806
+ ],
807
+ "SystemCommunicationAdapterInterface": [
808
+ "SystemCommunicationEdgeAdapter",
809
+ "SystemCommunicationMeshAdapter"
810
+ ],
811
+ "SystemCommunicationAdapter_AdapterExecutionsUnion": [
812
+ "SystemCommunicationEdgeAdapter",
813
+ "SystemCommunicationMeshAdapter"
814
+ ],
815
+ "SystemCommunicationAdapter_ExecutedByUnion": [
816
+ "SystemCommunicationEdgeAdapter",
817
+ "SystemCommunicationMeshAdapter"
818
+ ],
819
+ "SystemCommunicationAdapter_ManagesUnion": [
820
+ "SystemCommunicationEdgeAdapter",
821
+ "SystemCommunicationMeshAdapter"
822
+ ],
823
+ "SystemCommunicationDataPipelineTrigger_TriggeredByUnion": [
824
+ "SystemCommunicationDataPipelineTrigger"
825
+ ],
826
+ "SystemCommunicationDataPipeline_ParentUnion": [
827
+ "SystemCommunicationDataPipeline"
828
+ ],
829
+ "SystemCommunicationDeployableEntityInterface": [
830
+ "SystemCommunicationAdapter",
831
+ "SystemCommunicationDataPipelineTrigger",
832
+ "SystemCommunicationEdgeAdapter",
833
+ "SystemCommunicationEdgePipeline",
834
+ "SystemCommunicationMeshAdapter",
835
+ "SystemCommunicationMeshPipeline",
836
+ "SystemCommunicationPipeline",
837
+ "SystemCommunicationPool"
838
+ ],
839
+ "SystemCommunicationMeshPipeline_TriggersUnion": [
840
+ "SystemCommunicationMeshPipeline"
841
+ ],
842
+ "SystemCommunicationPipelineExecution_ExecutedPipelineUnion": [
843
+ "SystemCommunicationPipelineExecution"
844
+ ],
845
+ "SystemCommunicationPipelineExecution_ExecutingAdapterUnion": [
846
+ "SystemCommunicationPipelineExecution"
847
+ ],
848
+ "SystemCommunicationPipelineInterface": [
849
+ "SystemCommunicationEdgePipeline",
850
+ "SystemCommunicationMeshPipeline"
851
+ ],
852
+ "SystemCommunicationPipelineStatistics_StatisticsForPipelineUnion": [
853
+ "SystemCommunicationPipelineStatistics"
854
+ ],
855
+ "SystemCommunicationPipeline_ChildrenUnion": [
856
+ "SystemCommunicationEdgePipeline",
857
+ "SystemCommunicationMeshPipeline"
858
+ ],
859
+ "SystemCommunicationPipeline_ExecutesUnion": [
860
+ "SystemCommunicationEdgePipeline",
861
+ "SystemCommunicationMeshPipeline"
862
+ ],
863
+ "SystemCommunicationPipeline_PipelineExecutionsUnion": [
864
+ "SystemCommunicationEdgePipeline",
865
+ "SystemCommunicationMeshPipeline"
866
+ ],
867
+ "SystemCommunicationPipeline_PipelineStatisticsUnion": [
868
+ "SystemCommunicationEdgePipeline",
869
+ "SystemCommunicationMeshPipeline"
870
+ ],
871
+ "SystemCommunicationPipeline_UsedByUnion": [
872
+ "SystemCommunicationEdgePipeline",
873
+ "SystemCommunicationMeshPipeline"
874
+ ],
875
+ "SystemCommunicationPool_ManagedByUnion": [
876
+ "SystemCommunicationPool"
877
+ ],
878
+ "SystemCommunicationTag_TaggedByUnion": [
879
+ "SystemCommunicationTag"
880
+ ],
881
+ "SystemConfigurationInterface": [
882
+ "SystemCommunicationEMailSenderConfiguration",
883
+ "SystemCommunicationEnergyCommunityConfiguration",
884
+ "SystemCommunicationSapConfiguration",
885
+ "SystemIdentityMailNotificationConfiguration",
886
+ "SystemNotificationCssTemplateConfiguration",
887
+ "SystemReportingConnectionInfo",
888
+ "SystemTenantConfiguration",
889
+ "SystemTenantModeConfiguration"
890
+ ],
891
+ "SystemConfiguration_IsUsingUnion": [
892
+ "SystemCommunicationEMailSenderConfiguration",
893
+ "SystemCommunicationEnergyCommunityConfiguration",
894
+ "SystemCommunicationSapConfiguration",
895
+ "SystemIdentityMailNotificationConfiguration",
896
+ "SystemNotificationCssTemplateConfiguration",
897
+ "SystemReportingConnectionInfo",
898
+ "SystemTenantConfiguration",
899
+ "SystemTenantModeConfiguration"
900
+ ],
901
+ "SystemEntityInterface": [
902
+ "BasicDocument",
903
+ "BasicEmployee",
904
+ "BasicNamedEntity",
905
+ "BasicTree",
906
+ "OctoSdkDemoCustomer",
907
+ "SystemAggregationRtQuery",
908
+ "SystemAutoIncrement",
909
+ "SystemBotAttributeAggregateConfiguration",
910
+ "SystemBotFixup",
911
+ "SystemBotServiceHook",
912
+ "SystemCommunicationAdapter",
913
+ "SystemCommunicationDataPipeline",
914
+ "SystemCommunicationDataPipelineTrigger",
915
+ "SystemCommunicationDeployableEntity",
916
+ "SystemCommunicationEMailSenderConfiguration",
917
+ "SystemCommunicationEdgeAdapter",
918
+ "SystemCommunicationEdgePipeline",
919
+ "SystemCommunicationEnergyCommunityConfiguration",
920
+ "SystemCommunicationMeshAdapter",
921
+ "SystemCommunicationMeshPipeline",
922
+ "SystemCommunicationPipeline",
923
+ "SystemCommunicationPipelineExecution",
924
+ "SystemCommunicationPipelineStatistics",
925
+ "SystemCommunicationPool",
926
+ "SystemCommunicationSapConfiguration",
927
+ "SystemCommunicationTag",
928
+ "SystemConfiguration",
929
+ "SystemGroupingAggregationRtQuery",
930
+ "SystemIdentityApiResource",
931
+ "SystemIdentityApiScope",
932
+ "SystemIdentityAzureEntraIdIdentityProvider",
933
+ "SystemIdentityClient",
934
+ "SystemIdentityFacebookIdentityProvider",
935
+ "SystemIdentityGoogleIdentityProvider",
936
+ "SystemIdentityIdentityProvider",
937
+ "SystemIdentityIdentityResource",
938
+ "SystemIdentityMailNotificationConfiguration",
939
+ "SystemIdentityMicrosoftAdIdentityProvider",
940
+ "SystemIdentityMicrosoftIdentityProvider",
941
+ "SystemIdentityOpenLdapIdentityProvider",
942
+ "SystemIdentityPermission",
943
+ "SystemIdentityPermissionRole",
944
+ "SystemIdentityPersistedGrant",
945
+ "SystemIdentityResource",
946
+ "SystemIdentityRole",
947
+ "SystemIdentityUser",
948
+ "SystemMigrationHistory",
949
+ "SystemNotificationCssTemplateConfiguration",
950
+ "SystemNotificationEvent",
951
+ "SystemNotificationNotificationTemplate",
952
+ "SystemNotificationStatefulEvent",
953
+ "SystemPersistentQuery",
954
+ "SystemQuery",
955
+ "SystemReportingConnectionInfo",
956
+ "SystemReportingFileSystemContainer",
957
+ "SystemReportingFileSystemEntity",
958
+ "SystemReportingFileSystemItem",
959
+ "SystemReportingFolder",
960
+ "SystemReportingFolderRoot",
961
+ "SystemSimpleRtQuery",
962
+ "SystemTenant",
963
+ "SystemTenantConfiguration",
964
+ "SystemTenantModeConfiguration",
965
+ "SystemUIDashboard",
966
+ "SystemUIDashboardWidget",
967
+ "SystemUIPage",
968
+ "SystemUIProcessDiagram",
969
+ "SystemUIStudioRoot",
970
+ "SystemUIStudioTreeItem",
971
+ "SystemUISymbolDefinition",
972
+ "SystemUISymbolLibrary",
973
+ "SystemUIUIElement"
974
+ ],
975
+ "SystemEntity_ConfiguresUnion": [
976
+ "BasicAsset",
977
+ "BasicCity",
978
+ "BasicCountry",
979
+ "BasicDistrict",
980
+ "BasicEmployee",
981
+ "BasicState",
982
+ "BasicTree",
983
+ "BasicTreeNode",
984
+ "OctoSdkDemoCustomer",
985
+ "OctoSdkDemoMeteringPoint",
986
+ "OctoSdkDemoOperatingFacility",
987
+ "SystemAggregationRtQuery",
988
+ "SystemAutoIncrement",
989
+ "SystemBotAttributeAggregateConfiguration",
990
+ "SystemBotFixup",
991
+ "SystemBotServiceHook",
992
+ "SystemCommunicationDataPipeline",
993
+ "SystemCommunicationDataPipelineTrigger",
994
+ "SystemCommunicationEMailSenderConfiguration",
995
+ "SystemCommunicationEdgeAdapter",
996
+ "SystemCommunicationEdgePipeline",
997
+ "SystemCommunicationEnergyCommunityConfiguration",
998
+ "SystemCommunicationMeshAdapter",
999
+ "SystemCommunicationMeshPipeline",
1000
+ "SystemCommunicationPipelineExecution",
1001
+ "SystemCommunicationPipelineStatistics",
1002
+ "SystemCommunicationPool",
1003
+ "SystemCommunicationSapConfiguration",
1004
+ "SystemCommunicationTag",
1005
+ "SystemGroupingAggregationRtQuery",
1006
+ "SystemIdentityApiResource",
1007
+ "SystemIdentityApiScope",
1008
+ "SystemIdentityAzureEntraIdIdentityProvider",
1009
+ "SystemIdentityClient",
1010
+ "SystemIdentityFacebookIdentityProvider",
1011
+ "SystemIdentityGoogleIdentityProvider",
1012
+ "SystemIdentityIdentityResource",
1013
+ "SystemIdentityMailNotificationConfiguration",
1014
+ "SystemIdentityMicrosoftAdIdentityProvider",
1015
+ "SystemIdentityMicrosoftIdentityProvider",
1016
+ "SystemIdentityOpenLdapIdentityProvider",
1017
+ "SystemIdentityPermission",
1018
+ "SystemIdentityPermissionRole",
1019
+ "SystemIdentityPersistedGrant",
1020
+ "SystemIdentityRole",
1021
+ "SystemIdentityUser",
1022
+ "SystemMigrationHistory",
1023
+ "SystemNotificationCssTemplateConfiguration",
1024
+ "SystemNotificationEvent",
1025
+ "SystemNotificationNotificationTemplate",
1026
+ "SystemNotificationStatefulEvent",
1027
+ "SystemQuery",
1028
+ "SystemReportingConnectionInfo",
1029
+ "SystemReportingFileSystemItem",
1030
+ "SystemReportingFolder",
1031
+ "SystemReportingFolderRoot",
1032
+ "SystemSimpleRtQuery",
1033
+ "SystemTenant",
1034
+ "SystemTenantConfiguration",
1035
+ "SystemTenantModeConfiguration",
1036
+ "SystemUIDashboard",
1037
+ "SystemUIDashboardWidget",
1038
+ "SystemUIPage",
1039
+ "SystemUIProcessDiagram",
1040
+ "SystemUIStudioRoot",
1041
+ "SystemUIStudioTreeItem",
1042
+ "SystemUISymbolDefinition",
1043
+ "SystemUISymbolLibrary"
1044
+ ],
1045
+ "SystemEntity_IsTaggingUnion": [
1046
+ "BasicAsset",
1047
+ "BasicCity",
1048
+ "BasicCountry",
1049
+ "BasicDistrict",
1050
+ "BasicEmployee",
1051
+ "BasicState",
1052
+ "BasicTree",
1053
+ "BasicTreeNode",
1054
+ "OctoSdkDemoCustomer",
1055
+ "OctoSdkDemoMeteringPoint",
1056
+ "OctoSdkDemoOperatingFacility",
1057
+ "SystemAggregationRtQuery",
1058
+ "SystemAutoIncrement",
1059
+ "SystemBotAttributeAggregateConfiguration",
1060
+ "SystemBotFixup",
1061
+ "SystemBotServiceHook",
1062
+ "SystemCommunicationDataPipeline",
1063
+ "SystemCommunicationDataPipelineTrigger",
1064
+ "SystemCommunicationEMailSenderConfiguration",
1065
+ "SystemCommunicationEdgeAdapter",
1066
+ "SystemCommunicationEdgePipeline",
1067
+ "SystemCommunicationEnergyCommunityConfiguration",
1068
+ "SystemCommunicationMeshAdapter",
1069
+ "SystemCommunicationMeshPipeline",
1070
+ "SystemCommunicationPipelineExecution",
1071
+ "SystemCommunicationPipelineStatistics",
1072
+ "SystemCommunicationPool",
1073
+ "SystemCommunicationSapConfiguration",
1074
+ "SystemCommunicationTag",
1075
+ "SystemGroupingAggregationRtQuery",
1076
+ "SystemIdentityApiResource",
1077
+ "SystemIdentityApiScope",
1078
+ "SystemIdentityAzureEntraIdIdentityProvider",
1079
+ "SystemIdentityClient",
1080
+ "SystemIdentityFacebookIdentityProvider",
1081
+ "SystemIdentityGoogleIdentityProvider",
1082
+ "SystemIdentityIdentityResource",
1083
+ "SystemIdentityMailNotificationConfiguration",
1084
+ "SystemIdentityMicrosoftAdIdentityProvider",
1085
+ "SystemIdentityMicrosoftIdentityProvider",
1086
+ "SystemIdentityOpenLdapIdentityProvider",
1087
+ "SystemIdentityPermission",
1088
+ "SystemIdentityPermissionRole",
1089
+ "SystemIdentityPersistedGrant",
1090
+ "SystemIdentityRole",
1091
+ "SystemIdentityUser",
1092
+ "SystemMigrationHistory",
1093
+ "SystemNotificationCssTemplateConfiguration",
1094
+ "SystemNotificationEvent",
1095
+ "SystemNotificationNotificationTemplate",
1096
+ "SystemNotificationStatefulEvent",
1097
+ "SystemQuery",
1098
+ "SystemReportingConnectionInfo",
1099
+ "SystemReportingFileSystemItem",
1100
+ "SystemReportingFolder",
1101
+ "SystemReportingFolderRoot",
1102
+ "SystemSimpleRtQuery",
1103
+ "SystemTenant",
1104
+ "SystemTenantConfiguration",
1105
+ "SystemTenantModeConfiguration",
1106
+ "SystemUIDashboard",
1107
+ "SystemUIDashboardWidget",
1108
+ "SystemUIPage",
1109
+ "SystemUIProcessDiagram",
1110
+ "SystemUIStudioRoot",
1111
+ "SystemUIStudioTreeItem",
1112
+ "SystemUISymbolDefinition",
1113
+ "SystemUISymbolLibrary"
1114
+ ],
1115
+ "SystemEntity_RelatesFromUnion": [
1116
+ "BasicAsset",
1117
+ "BasicCity",
1118
+ "BasicCountry",
1119
+ "BasicDistrict",
1120
+ "BasicEmployee",
1121
+ "BasicState",
1122
+ "BasicTree",
1123
+ "BasicTreeNode",
1124
+ "OctoSdkDemoCustomer",
1125
+ "OctoSdkDemoMeteringPoint",
1126
+ "OctoSdkDemoOperatingFacility",
1127
+ "SystemAggregationRtQuery",
1128
+ "SystemAutoIncrement",
1129
+ "SystemBotAttributeAggregateConfiguration",
1130
+ "SystemBotFixup",
1131
+ "SystemBotServiceHook",
1132
+ "SystemCommunicationDataPipeline",
1133
+ "SystemCommunicationDataPipelineTrigger",
1134
+ "SystemCommunicationEMailSenderConfiguration",
1135
+ "SystemCommunicationEdgeAdapter",
1136
+ "SystemCommunicationEdgePipeline",
1137
+ "SystemCommunicationEnergyCommunityConfiguration",
1138
+ "SystemCommunicationMeshAdapter",
1139
+ "SystemCommunicationMeshPipeline",
1140
+ "SystemCommunicationPipelineExecution",
1141
+ "SystemCommunicationPipelineStatistics",
1142
+ "SystemCommunicationPool",
1143
+ "SystemCommunicationSapConfiguration",
1144
+ "SystemCommunicationTag",
1145
+ "SystemGroupingAggregationRtQuery",
1146
+ "SystemIdentityApiResource",
1147
+ "SystemIdentityApiScope",
1148
+ "SystemIdentityAzureEntraIdIdentityProvider",
1149
+ "SystemIdentityClient",
1150
+ "SystemIdentityFacebookIdentityProvider",
1151
+ "SystemIdentityGoogleIdentityProvider",
1152
+ "SystemIdentityIdentityResource",
1153
+ "SystemIdentityMailNotificationConfiguration",
1154
+ "SystemIdentityMicrosoftAdIdentityProvider",
1155
+ "SystemIdentityMicrosoftIdentityProvider",
1156
+ "SystemIdentityOpenLdapIdentityProvider",
1157
+ "SystemIdentityPermission",
1158
+ "SystemIdentityPermissionRole",
1159
+ "SystemIdentityPersistedGrant",
1160
+ "SystemIdentityRole",
1161
+ "SystemIdentityUser",
1162
+ "SystemMigrationHistory",
1163
+ "SystemNotificationCssTemplateConfiguration",
1164
+ "SystemNotificationEvent",
1165
+ "SystemNotificationNotificationTemplate",
1166
+ "SystemNotificationStatefulEvent",
1167
+ "SystemQuery",
1168
+ "SystemReportingConnectionInfo",
1169
+ "SystemReportingFileSystemItem",
1170
+ "SystemReportingFolder",
1171
+ "SystemReportingFolderRoot",
1172
+ "SystemSimpleRtQuery",
1173
+ "SystemTenant",
1174
+ "SystemTenantConfiguration",
1175
+ "SystemTenantModeConfiguration",
1176
+ "SystemUIDashboard",
1177
+ "SystemUIDashboardWidget",
1178
+ "SystemUIPage",
1179
+ "SystemUIProcessDiagram",
1180
+ "SystemUIStudioRoot",
1181
+ "SystemUIStudioTreeItem",
1182
+ "SystemUISymbolDefinition",
1183
+ "SystemUISymbolLibrary"
1184
+ ],
1185
+ "SystemEntity_RelatesToUnion": [
1186
+ "BasicAsset",
1187
+ "BasicCity",
1188
+ "BasicCountry",
1189
+ "BasicDistrict",
1190
+ "BasicEmployee",
1191
+ "BasicState",
1192
+ "BasicTree",
1193
+ "BasicTreeNode",
1194
+ "OctoSdkDemoCustomer",
1195
+ "OctoSdkDemoMeteringPoint",
1196
+ "OctoSdkDemoOperatingFacility",
1197
+ "SystemAggregationRtQuery",
1198
+ "SystemAutoIncrement",
1199
+ "SystemBotAttributeAggregateConfiguration",
1200
+ "SystemBotFixup",
1201
+ "SystemBotServiceHook",
1202
+ "SystemCommunicationDataPipeline",
1203
+ "SystemCommunicationDataPipelineTrigger",
1204
+ "SystemCommunicationEMailSenderConfiguration",
1205
+ "SystemCommunicationEdgeAdapter",
1206
+ "SystemCommunicationEdgePipeline",
1207
+ "SystemCommunicationEnergyCommunityConfiguration",
1208
+ "SystemCommunicationMeshAdapter",
1209
+ "SystemCommunicationMeshPipeline",
1210
+ "SystemCommunicationPipelineExecution",
1211
+ "SystemCommunicationPipelineStatistics",
1212
+ "SystemCommunicationPool",
1213
+ "SystemCommunicationSapConfiguration",
1214
+ "SystemCommunicationTag",
1215
+ "SystemGroupingAggregationRtQuery",
1216
+ "SystemIdentityApiResource",
1217
+ "SystemIdentityApiScope",
1218
+ "SystemIdentityAzureEntraIdIdentityProvider",
1219
+ "SystemIdentityClient",
1220
+ "SystemIdentityFacebookIdentityProvider",
1221
+ "SystemIdentityGoogleIdentityProvider",
1222
+ "SystemIdentityIdentityResource",
1223
+ "SystemIdentityMailNotificationConfiguration",
1224
+ "SystemIdentityMicrosoftAdIdentityProvider",
1225
+ "SystemIdentityMicrosoftIdentityProvider",
1226
+ "SystemIdentityOpenLdapIdentityProvider",
1227
+ "SystemIdentityPermission",
1228
+ "SystemIdentityPermissionRole",
1229
+ "SystemIdentityPersistedGrant",
1230
+ "SystemIdentityRole",
1231
+ "SystemIdentityUser",
1232
+ "SystemMigrationHistory",
1233
+ "SystemNotificationCssTemplateConfiguration",
1234
+ "SystemNotificationEvent",
1235
+ "SystemNotificationNotificationTemplate",
1236
+ "SystemNotificationStatefulEvent",
1237
+ "SystemQuery",
1238
+ "SystemReportingConnectionInfo",
1239
+ "SystemReportingFileSystemItem",
1240
+ "SystemReportingFolder",
1241
+ "SystemReportingFolderRoot",
1242
+ "SystemSimpleRtQuery",
1243
+ "SystemTenant",
1244
+ "SystemTenantConfiguration",
1245
+ "SystemTenantModeConfiguration",
1246
+ "SystemUIDashboard",
1247
+ "SystemUIDashboardWidget",
1248
+ "SystemUIPage",
1249
+ "SystemUIProcessDiagram",
1250
+ "SystemUIStudioRoot",
1251
+ "SystemUIStudioTreeItem",
1252
+ "SystemUISymbolDefinition",
1253
+ "SystemUISymbolLibrary"
1254
+ ],
1255
+ "SystemIdentityIdentityProviderInterface": [
1256
+ "SystemIdentityAzureEntraIdIdentityProvider",
1257
+ "SystemIdentityFacebookIdentityProvider",
1258
+ "SystemIdentityGoogleIdentityProvider",
1259
+ "SystemIdentityMicrosoftAdIdentityProvider",
1260
+ "SystemIdentityMicrosoftIdentityProvider",
1261
+ "SystemIdentityOpenLdapIdentityProvider"
1262
+ ],
1263
+ "SystemIdentityResourceInterface": [
1264
+ "SystemIdentityApiResource",
1265
+ "SystemIdentityApiScope",
1266
+ "SystemIdentityIdentityResource"
1267
+ ],
1268
+ "SystemPersistentQueryInterface": [
1269
+ "SystemAggregationRtQuery",
1270
+ "SystemGroupingAggregationRtQuery",
1271
+ "SystemSimpleRtQuery"
1272
+ ],
1273
+ "SystemReportingFileSystemContainerInterface": [
1274
+ "SystemReportingFileSystemItem",
1275
+ "SystemReportingFolder"
1276
+ ],
1277
+ "SystemReportingFileSystemContainer_ChildrenUnion": [
1278
+ "SystemReportingFileSystemItem",
1279
+ "SystemReportingFolder"
1280
+ ],
1281
+ "SystemReportingFileSystemEntityInterface": [
1282
+ "SystemReportingFileSystemContainer",
1283
+ "SystemReportingFileSystemItem",
1284
+ "SystemReportingFolder",
1285
+ "SystemReportingFolderRoot"
1286
+ ],
1287
+ "SystemReportingFolder_ParentUnion": [
1288
+ "SystemReportingFolder",
1289
+ "SystemReportingFolderRoot"
1290
+ ],
1291
+ "SystemUIDashboardWidget_ChildrenUnion": [
1292
+ "SystemUIDashboardWidget"
1293
+ ],
1294
+ "SystemUIDashboard_ParentUnion": [
1295
+ "SystemUIDashboard"
1296
+ ],
1297
+ "SystemUIStudioTreeItem_ChildrenUnion": [
1298
+ "SystemUIStudioTreeItem"
1299
+ ],
1300
+ "SystemUIStudioTreeItem_ParentUnion": [
1301
+ "SystemUIStudioRoot",
1302
+ "SystemUIStudioTreeItem"
1303
+ ],
1304
+ "SystemUISymbolDefinition_ChildrenUnion": [
1305
+ "SystemUISymbolDefinition"
1306
+ ],
1307
+ "SystemUISymbolLibrary_ParentUnion": [
1308
+ "SystemUISymbolLibrary"
1309
+ ],
1310
+ "SystemUIUIElementInterface": [
1311
+ "SystemUIDashboard",
1312
+ "SystemUIDashboardWidget",
1313
+ "SystemUIPage",
1314
+ "SystemUIProcessDiagram",
1315
+ "SystemUIStudioRoot",
1316
+ "SystemUIStudioTreeItem",
1317
+ "SystemUISymbolDefinition",
1318
+ "SystemUISymbolLibrary"
1319
+ ]
1320
+ }
1321
+ };
1322
+
1323
+ const GetCkTypeAttributesDocumentDto = gql `
1324
+ query getCkTypeAttributes($ckTypeId: String!, $first: Int) {
1325
+ constructionKit {
1326
+ types(ckId: $ckTypeId) {
1327
+ items {
1328
+ ckTypeId {
1329
+ fullName
1330
+ }
1331
+ rtCkTypeId
1332
+ attributes(first: $first) {
1333
+ items {
1334
+ attributeName
1335
+ attributeValueType
1336
+ }
1337
+ }
1338
+ }
1339
+ }
1340
+ }
1341
+ }
1342
+ `;
1343
+ class GetCkTypeAttributesDtoGQL extends i1.Query {
1344
+ document = GetCkTypeAttributesDocumentDto;
1345
+ constructor(apollo) {
1346
+ super(apollo);
1347
+ }
1348
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: GetCkTypeAttributesDtoGQL, deps: [{ token: i1.Apollo }], target: i0.ɵɵFactoryTarget.Injectable });
1349
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: GetCkTypeAttributesDtoGQL, providedIn: 'root' });
1350
+ }
1351
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: GetCkTypeAttributesDtoGQL, decorators: [{
1352
+ type: Injectable,
1353
+ args: [{
1354
+ providedIn: 'root'
1355
+ }]
1356
+ }], ctorParameters: () => [{ type: i1.Apollo }] });
1357
+
1358
+ const GetCkRecordAttributesDocumentDto = gql `
1359
+ query getCkRecordAttributes($ckRecordId: String!, $first: Int) {
1360
+ constructionKit {
1361
+ records(ckId: $ckRecordId) {
1362
+ items {
1363
+ ckRecordId {
1364
+ fullName
1365
+ }
1366
+ rtCkRecordId
1367
+ attributes(first: $first) {
1368
+ items {
1369
+ attributeName
1370
+ attributeValueType
1371
+ }
1372
+ }
1373
+ }
1374
+ }
1375
+ }
1376
+ }
1377
+ `;
1378
+ class GetCkRecordAttributesDtoGQL extends i1.Query {
1379
+ document = GetCkRecordAttributesDocumentDto;
1380
+ constructor(apollo) {
1381
+ super(apollo);
1382
+ }
1383
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: GetCkRecordAttributesDtoGQL, deps: [{ token: i1.Apollo }], target: i0.ɵɵFactoryTarget.Injectable });
1384
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: GetCkRecordAttributesDtoGQL, providedIn: 'root' });
1385
+ }
1386
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: GetCkRecordAttributesDtoGQL, decorators: [{
1387
+ type: Injectable,
1388
+ args: [{
1389
+ providedIn: 'root'
1390
+ }]
1391
+ }], ctorParameters: () => [{ type: i1.Apollo }] });
1392
+
1393
+ const GetCkTypeAvailableQueryColumnsDocumentDto = gql `
1394
+ query getCkTypeAvailableQueryColumns($after: String, $first: Int, $rtCkId: String!, $filter: String) {
1395
+ constructionKit {
1396
+ types(rtCkId: $rtCkId) {
1397
+ items {
1398
+ ckTypeId {
1399
+ fullName
1400
+ }
1401
+ rtCkTypeId
1402
+ availableQueryColumns(
1403
+ after: $after
1404
+ first: $first
1405
+ attributePathContains: $filter
1406
+ ) {
1407
+ totalCount
1408
+ pageInfo {
1409
+ hasNextPage
1410
+ hasPreviousPage
1411
+ startCursor
1412
+ endCursor
1413
+ }
1414
+ items {
1415
+ attributePath
1416
+ attributeValueType
1417
+ }
1418
+ }
1419
+ }
1420
+ }
1421
+ }
1422
+ }
1423
+ `;
1424
+ class GetCkTypeAvailableQueryColumnsDtoGQL extends i1.Query {
1425
+ document = GetCkTypeAvailableQueryColumnsDocumentDto;
1426
+ constructor(apollo) {
1427
+ super(apollo);
1428
+ }
1429
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: GetCkTypeAvailableQueryColumnsDtoGQL, deps: [{ token: i1.Apollo }], target: i0.ɵɵFactoryTarget.Injectable });
1430
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: GetCkTypeAvailableQueryColumnsDtoGQL, providedIn: 'root' });
1431
+ }
1432
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: GetCkTypeAvailableQueryColumnsDtoGQL, decorators: [{
1433
+ type: Injectable,
1434
+ args: [{
1435
+ providedIn: 'root'
1436
+ }]
1437
+ }], ctorParameters: () => [{ type: i1.Apollo }] });
1438
+
1439
+ const GetCkTypesDocumentDto = gql `
1440
+ query getCkTypes($after: String, $first: Int, $searchFilter: SearchFilter, $fieldFilters: [FieldFilter], $sort: [Sort], $ckModelIds: [String]) {
1441
+ constructionKit {
1442
+ types(
1443
+ after: $after
1444
+ first: $first
1445
+ searchFilter: $searchFilter
1446
+ fieldFilter: $fieldFilters
1447
+ sortOrder: $sort
1448
+ ckModelIds: $ckModelIds
1449
+ ) {
1450
+ totalCount
1451
+ items {
1452
+ baseType {
1453
+ ckTypeId {
1454
+ fullName
1455
+ }
1456
+ rtCkTypeId
1457
+ isAbstract
1458
+ isFinal
1459
+ }
1460
+ ckTypeId {
1461
+ fullName
1462
+ }
1463
+ rtCkTypeId
1464
+ isAbstract
1465
+ isFinal
1466
+ description
1467
+ }
1468
+ }
1469
+ }
1470
+ }
1471
+ `;
1472
+ class GetCkTypesDtoGQL extends i1.Query {
1473
+ document = GetCkTypesDocumentDto;
1474
+ constructor(apollo) {
1475
+ super(apollo);
1476
+ }
1477
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: GetCkTypesDtoGQL, deps: [{ token: i1.Apollo }], target: i0.ɵɵFactoryTarget.Injectable });
1478
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: GetCkTypesDtoGQL, providedIn: 'root' });
1479
+ }
1480
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: GetCkTypesDtoGQL, decorators: [{
1481
+ type: Injectable,
1482
+ args: [{
1483
+ providedIn: 'root'
1484
+ }]
1485
+ }], ctorParameters: () => [{ type: i1.Apollo }] });
1486
+
1487
+ const GetCkModelByIdDocumentDto = gql `
1488
+ query getCkModelById($model: SimpleScalar!) {
1489
+ constructionKit {
1490
+ models(
1491
+ fieldFilter: [{attributePath: "modelState", operator: EQUALS, comparisonValue: "AVAILABLE"}, {attributePath: "modelId", operator: EQUALS, comparisonValue: $model}]
1492
+ ) {
1493
+ totalCount
1494
+ items {
1495
+ id {
1496
+ name
1497
+ version
1498
+ fullName
1499
+ semanticVersionedFullName
1500
+ }
1501
+ modelState
1502
+ }
1503
+ }
1504
+ }
1505
+ }
1506
+ `;
1507
+ class GetCkModelByIdDtoGQL extends i1.Query {
1508
+ document = GetCkModelByIdDocumentDto;
1509
+ constructor(apollo) {
1510
+ super(apollo);
1511
+ }
1512
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: GetCkModelByIdDtoGQL, deps: [{ token: i1.Apollo }], target: i0.ɵɵFactoryTarget.Injectable });
1513
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: GetCkModelByIdDtoGQL, providedIn: 'root' });
1514
+ }
1515
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: GetCkModelByIdDtoGQL, decorators: [{
1516
+ type: Injectable,
1517
+ args: [{
1518
+ providedIn: 'root'
1519
+ }]
1520
+ }], ctorParameters: () => [{ type: i1.Apollo }] });
1521
+
1522
+ /**
1523
+ * Injection token for the ConfigurationService.
1524
+ * Allows each application to provide its own implementation.
1525
+ *
1526
+ * @example
1527
+ * ```typescript
1528
+ * // In app.config.ts
1529
+ * providers: [
1530
+ * { provide: CONFIGURATION_SERVICE, useClass: AppConfigurationService }
1531
+ * ]
1532
+ * ```
1533
+ */
1534
+ const CONFIGURATION_SERVICE = new InjectionToken('IConfigurationService');
1535
+
1536
+ class AttributeSelectorService {
1537
+ getCkTypeAvailableQueryColumnsGQL = inject(GetCkTypeAvailableQueryColumnsDtoGQL);
1538
+ getAvailableAttributes(ckTypeId, filter, first = 1000, after) {
1539
+ return this.getCkTypeAvailableQueryColumnsGQL.fetch({
1540
+ variables: {
1541
+ rtCkId: ckTypeId,
1542
+ filter: filter,
1543
+ first: first,
1544
+ after: after
1545
+ },
1546
+ fetchPolicy: 'network-only'
1547
+ }).pipe(map(result => {
1548
+ const type = result.data?.constructionKit?.types?.items?.[0];
1549
+ if (!type) {
1550
+ return { items: [], totalCount: 0 };
1551
+ }
1552
+ const items = (type.availableQueryColumns?.items || [])
1553
+ .filter((item) => item !== null)
1554
+ .map(item => ({
1555
+ attributePath: item.attributePath,
1556
+ attributeValueType: item.attributeValueType
1557
+ }));
1558
+ return {
1559
+ items,
1560
+ totalCount: type.availableQueryColumns?.totalCount || 0
1561
+ };
1562
+ }));
1563
+ }
1564
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: AttributeSelectorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1565
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: AttributeSelectorService, providedIn: 'root' });
1566
+ }
1567
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: AttributeSelectorService, decorators: [{
1568
+ type: Injectable,
1569
+ args: [{
1570
+ providedIn: 'root'
1571
+ }]
1572
+ }] });
1573
+
1574
+ class CkTypeAttributeService {
1575
+ getCkTypeAttributesGQL = inject(GetCkTypeAttributesDtoGQL);
1576
+ getCkRecordAttributesGQL = inject(GetCkRecordAttributesDtoGQL);
1577
+ /**
1578
+ * Load CK type attributes for a given ckTypeId
1579
+ * @param ckTypeId The fullName of the CK type
1580
+ * @returns Observable of CkTypeAttributeInfo array
1581
+ */
1582
+ getCkTypeAttributes(ckTypeId) {
1583
+ return this.getCkTypeAttributesGQL.fetch({
1584
+ variables: {
1585
+ ckTypeId: ckTypeId,
1586
+ first: 1000
1587
+ },
1588
+ fetchPolicy: 'network-only'
1589
+ }).pipe(map(result => {
1590
+ const type = result.data?.constructionKit?.types?.items?.[0];
1591
+ if (!type?.attributes?.items) {
1592
+ console.warn(`CK Type '${ckTypeId}' not found or has no attributes`);
1593
+ return [];
1594
+ }
1595
+ return type.attributes.items
1596
+ .filter((attr) => attr !== null)
1597
+ .map(attr => ({
1598
+ attributeName: attr.attributeName,
1599
+ attributeValueType: attr.attributeValueType
1600
+ }));
1601
+ }), catchError(err => {
1602
+ console.error(`Error fetching CK type attributes for '${ckTypeId}':`, err);
1603
+ return of([]);
1604
+ }));
1605
+ }
1606
+ /**
1607
+ * Load CK record attributes for a given ckRecordId
1608
+ * @param ckRecordId The fullName of the CK record
1609
+ * @returns Observable of CkTypeAttributeInfo array
1610
+ */
1611
+ getCkRecordAttributes(ckRecordId) {
1612
+ return this.getCkRecordAttributesGQL.fetch({
1613
+ variables: {
1614
+ ckRecordId: ckRecordId,
1615
+ first: 1000
1616
+ },
1617
+ fetchPolicy: 'network-only'
1618
+ }).pipe(map(result => {
1619
+ const record = result.data?.constructionKit?.records?.items?.[0];
1620
+ if (!record?.attributes?.items) {
1621
+ console.warn(`CK Record '${ckRecordId}' not found or has no attributes`);
1622
+ return [];
1623
+ }
1624
+ return record.attributes.items
1625
+ .filter((attr) => attr !== null)
1626
+ .map(attr => ({
1627
+ attributeName: attr.attributeName,
1628
+ attributeValueType: attr.attributeValueType
1629
+ }));
1630
+ }), catchError(err => {
1631
+ console.error(`Error fetching CK record attributes for '${ckRecordId}':`, err);
1632
+ return of([]);
1633
+ }));
1634
+ }
1635
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: CkTypeAttributeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1636
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: CkTypeAttributeService, providedIn: 'root' });
1637
+ }
1638
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: CkTypeAttributeService, decorators: [{
1639
+ type: Injectable,
1640
+ args: [{
1641
+ providedIn: 'root'
1642
+ }]
1643
+ }] });
1644
+
1645
+ const GetCkTypeByRtCkTypeIdDocumentDto = gql `
1646
+ query getCkTypeByRtCkTypeId($rtCkTypeId: String!) {
1647
+ constructionKit {
1648
+ types(rtCkId: $rtCkTypeId) {
1649
+ items {
1650
+ ckTypeId {
1651
+ fullName
1652
+ }
1653
+ rtCkTypeId
1654
+ }
1655
+ }
1656
+ }
1657
+ }
1658
+ `;
1659
+ class GetCkTypeByRtCkTypeIdDtoGQL extends i1.Query {
1660
+ document = GetCkTypeByRtCkTypeIdDocumentDto;
1661
+ constructor(apollo) {
1662
+ super(apollo);
1663
+ }
1664
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: GetCkTypeByRtCkTypeIdDtoGQL, deps: [{ token: i1.Apollo }], target: i0.ɵɵFactoryTarget.Injectable });
1665
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: GetCkTypeByRtCkTypeIdDtoGQL, providedIn: 'root' });
1666
+ }
1667
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: GetCkTypeByRtCkTypeIdDtoGQL, decorators: [{
1668
+ type: Injectable,
1669
+ args: [{
1670
+ providedIn: 'root'
1671
+ }]
1672
+ }], ctorParameters: () => [{ type: i1.Apollo }] });
1673
+
1674
+ class CkTypeSelectorService {
1675
+ getCkTypesGQL = inject(GetCkTypesDtoGQL);
1676
+ getCkTypeByRtCkTypeIdGQL = inject(GetCkTypeByRtCkTypeIdDtoGQL);
1677
+ /**
1678
+ * Get a CkType by its rtCkTypeId
1679
+ * @param rtCkTypeId The runtime CK type ID, e.g., "OctoSdkDemo-1.0.0/Customer"
1680
+ * @returns Observable of CkTypeSelectorItem or null if not found
1681
+ */
1682
+ getCkTypeByRtCkTypeId(rtCkTypeId) {
1683
+ return this.getCkTypeByRtCkTypeIdGQL.fetch({
1684
+ variables: { rtCkTypeId },
1685
+ fetchPolicy: 'network-only'
1686
+ }).pipe(map(result => {
1687
+ const items = result.data?.constructionKit?.types?.items;
1688
+ if (!items || items.length === 0) {
1689
+ return null;
1690
+ }
1691
+ const item = items[0];
1692
+ if (!item) {
1693
+ return null;
1694
+ }
1695
+ // Note: This query returns minimal data, so we only have ckTypeId info
1696
+ return {
1697
+ fullName: item.ckTypeId.fullName,
1698
+ rtCkTypeId: item.rtCkTypeId,
1699
+ isAbstract: false,
1700
+ isFinal: false
1701
+ };
1702
+ }));
1703
+ }
1704
+ /**
1705
+ * Get CkTypes with optional filtering by model IDs and search text
1706
+ * @param options Search options
1707
+ * @returns Observable of CkTypeSelectorResult
1708
+ */
1709
+ getCkTypes(options = {}) {
1710
+ const { ckModelIds, searchText, first = 50, skip = 0 } = options;
1711
+ return this.getCkTypesGQL.fetch({
1712
+ variables: {
1713
+ ckModelIds: ckModelIds && ckModelIds.length > 0 ? ckModelIds : null,
1714
+ first: first,
1715
+ after: GraphQL.offsetToCursor(skip),
1716
+ searchFilter: searchText ? {
1717
+ type: SearchFilterTypesDto.AttributeFilterDto,
1718
+ attributePaths: ['ckTypeId'],
1719
+ searchTerm: searchText
1720
+ } : null
1721
+ },
1722
+ fetchPolicy: 'network-only'
1723
+ }).pipe(map(result => {
1724
+ const types = result.data?.constructionKit?.types;
1725
+ if (!types) {
1726
+ return { items: [], totalCount: 0 };
1727
+ }
1728
+ const items = (types.items || [])
1729
+ .filter((item) => item !== null)
1730
+ .map(item => this.mapToSelectorItem(item));
1731
+ return {
1732
+ items,
1733
+ totalCount: types.totalCount || 0
1734
+ };
1735
+ }));
1736
+ }
1737
+ mapToSelectorItem(item) {
1738
+ return {
1739
+ fullName: item.ckTypeId.fullName,
1740
+ rtCkTypeId: item.rtCkTypeId,
1741
+ baseTypeFullName: item.baseType?.ckTypeId.fullName,
1742
+ baseTypeRtCkTypeId: item.baseType?.rtCkTypeId,
1743
+ isAbstract: item.isAbstract,
1744
+ isFinal: item.isFinal,
1745
+ description: item.description ?? undefined
1746
+ };
1747
+ }
1748
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: CkTypeSelectorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1749
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: CkTypeSelectorService, providedIn: 'root' });
1750
+ }
1751
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: CkTypeSelectorService, decorators: [{
1752
+ type: Injectable,
1753
+ args: [{
1754
+ providedIn: 'root'
1755
+ }]
1756
+ }] });
1757
+
1758
+ /**
1759
+ * Service for checking CK model availability in the current tenant.
1760
+ */
1761
+ class CkModelService {
1762
+ getCkModelByIdGQL = inject(GetCkModelByIdDtoGQL);
1763
+ /**
1764
+ * Checks if a construction kit model is available in the current tenant.
1765
+ * @param modelId The model ID to check (e.g., 'System.UI')
1766
+ * @returns true if the model is available and in AVAILABLE state
1767
+ */
1768
+ async isModelAvailable(modelId) {
1769
+ const result = await firstValueFrom(this.getCkModelByIdGQL.fetch({ variables: { model: modelId } }));
1770
+ if (result?.data?.constructionKit?.models?.items) {
1771
+ return result.data.constructionKit.models.items.length > 0;
1772
+ }
1773
+ return false;
1774
+ }
1775
+ /**
1776
+ * Checks if a construction kit model is available with at least the specified version.
1777
+ * @param modelId The model ID to check (e.g., 'System.UI')
1778
+ * @param minVersion The minimum required version (e.g., '1.0.1')
1779
+ * @returns true if the model is available and version >= minVersion
1780
+ */
1781
+ async isModelAvailableWithMinVersion(modelId, minVersion) {
1782
+ const result = await firstValueFrom(this.getCkModelByIdGQL.fetch({ variables: { model: modelId } }));
1783
+ const items = result?.data?.constructionKit?.models?.items;
1784
+ if (!items || items.length === 0) {
1785
+ return false;
1786
+ }
1787
+ const model = items[0];
1788
+ if (!model?.id?.version) {
1789
+ return false;
1790
+ }
1791
+ const modelVersion = this.parseVersion(model.id.version);
1792
+ const requiredVersion = this.parseVersion(minVersion);
1793
+ if (!modelVersion || !requiredVersion) {
1794
+ console.warn(`Could not parse version: model=${model.id.version}, required=${minVersion}`);
1795
+ return false;
1796
+ }
1797
+ return this.compareVersions(modelVersion, requiredVersion) >= 0;
1798
+ }
1799
+ /**
1800
+ * Gets the version of an available model.
1801
+ * @param modelId The model ID to check
1802
+ * @returns The version string or null if not available
1803
+ */
1804
+ async getModelVersion(modelId) {
1805
+ const result = await firstValueFrom(this.getCkModelByIdGQL.fetch({ variables: { model: modelId } }));
1806
+ const items = result?.data?.constructionKit?.models?.items;
1807
+ if (!items || items.length === 0 || !items[0]?.id?.version) {
1808
+ return null;
1809
+ }
1810
+ return String(items[0].id.version);
1811
+ }
1812
+ /**
1813
+ * Parses a version string into its components.
1814
+ * Supports formats: "1.0.1", "1.0", "1"
1815
+ */
1816
+ parseVersion(version) {
1817
+ let versionStr;
1818
+ if (typeof version === 'object' && version !== null) {
1819
+ // Handle object format like { major: 1, minor: 0, patch: 1 }
1820
+ const v = version;
1821
+ if (typeof v.major === 'number') {
1822
+ return {
1823
+ major: v.major,
1824
+ minor: v.minor ?? 0,
1825
+ patch: v.patch ?? 0
1826
+ };
1827
+ }
1828
+ versionStr = String(version);
1829
+ }
1830
+ else {
1831
+ versionStr = String(version);
1832
+ }
1833
+ const parts = versionStr.split('.').map(p => parseInt(p, 10));
1834
+ if (parts.some(isNaN)) {
1835
+ return null;
1836
+ }
1837
+ return {
1838
+ major: parts[0] ?? 0,
1839
+ minor: parts[1] ?? 0,
1840
+ patch: parts[2] ?? 0
1841
+ };
1842
+ }
1843
+ /**
1844
+ * Compares two semantic versions.
1845
+ * @returns negative if a < b, 0 if equal, positive if a > b
1846
+ */
1847
+ compareVersions(a, b) {
1848
+ if (a.major !== b.major) {
1849
+ return a.major - b.major;
1850
+ }
1851
+ if (a.minor !== b.minor) {
1852
+ return a.minor - b.minor;
1853
+ }
1854
+ return a.patch - b.patch;
1855
+ }
1856
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: CkModelService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1857
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: CkModelService, providedIn: 'root' });
1858
+ }
1859
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: CkModelService, decorators: [{
1860
+ type: Injectable,
1861
+ args: [{
1862
+ providedIn: 'root'
1863
+ }]
1864
+ }] });
1865
+
1866
+ class AssetRepoService {
1867
+ httpClient = inject(HttpClient);
1868
+ configurationService = inject(CONFIGURATION_SERVICE);
1869
+ async getTenants(skip, take) {
1870
+ const params = new HttpParams().set('skip', '' + skip.toString()).set('take', '' + take.toString());
1871
+ if (this.configurationService.config?.assetServices) {
1872
+ const r = await firstValueFrom(this.httpClient
1873
+ .get(this.configurationService.config.assetServices + 'system/v1/tenants', {
1874
+ params,
1875
+ observe: 'response'
1876
+ }));
1877
+ return r.body;
1878
+ }
1879
+ return null;
1880
+ }
1881
+ async getTenantDetails(tenantId) {
1882
+ if (this.configurationService.config?.assetServices) {
1883
+ const r = await firstValueFrom(this.httpClient
1884
+ .get(this.configurationService.config.assetServices + `system/v1/tenants/${tenantId}`, {
1885
+ observe: 'response'
1886
+ }));
1887
+ return r.body;
1888
+ }
1889
+ return null;
1890
+ }
1891
+ async createTenant(tenantDto) {
1892
+ const params = new HttpParams().set('tenantId', tenantDto.tenantId).set('databaseName', tenantDto.database);
1893
+ if (this.configurationService.config?.assetServices) {
1894
+ await firstValueFrom(this.httpClient.post(this.configurationService.config.assetServices + 'system/v1/tenants', null, {
1895
+ params,
1896
+ observe: 'response'
1897
+ }));
1898
+ }
1899
+ }
1900
+ async attachTenant(dataSourceDto) {
1901
+ const params = new HttpParams().set('tenantId', dataSourceDto.tenantId).set('databaseName', dataSourceDto.database);
1902
+ if (this.configurationService.config?.assetServices) {
1903
+ await firstValueFrom(this.httpClient.post(this.configurationService.config.assetServices + 'system/v1/tenants/attach', null, {
1904
+ params,
1905
+ observe: 'response'
1906
+ }));
1907
+ }
1908
+ }
1909
+ async detachTenant(tenantId) {
1910
+ const params = new HttpParams().set('tenantId', tenantId);
1911
+ if (this.configurationService.config?.assetServices) {
1912
+ await firstValueFrom(this.httpClient.post(this.configurationService.config.assetServices + 'system/v1/tenants/detach', null, {
1913
+ params,
1914
+ observe: 'response'
1915
+ }));
1916
+ }
1917
+ }
1918
+ async deleteTenant(tenantId) {
1919
+ const params = new HttpParams().set('tenantId', tenantId);
1920
+ if (this.configurationService.config?.assetServices) {
1921
+ await firstValueFrom(this.httpClient.delete(this.configurationService.config.assetServices + 'system/v1/tenants', {
1922
+ params,
1923
+ observe: 'response'
1924
+ }));
1925
+ }
1926
+ }
1927
+ async importRtModel(tenantId, file, importStrategy = ImportStrategyDto.InsertOnly) {
1928
+ const params = new HttpParams()
1929
+ .set('tenantId', tenantId)
1930
+ .set('importStrategy', importStrategy.toString());
1931
+ if (this.configurationService.config?.assetServices) {
1932
+ const formData = new FormData();
1933
+ formData.append("file", file);
1934
+ const r = await firstValueFrom(this.httpClient.post(this.configurationService.config.assetServices + 'system/v1/Models/ImportRt', formData, {
1935
+ params,
1936
+ observe: 'response'
1937
+ }));
1938
+ return r.body?.jobId ?? null;
1939
+ }
1940
+ return null;
1941
+ }
1942
+ async importCkModel(tenantId, file, importStrategy = ImportStrategyDto.InsertOnly) {
1943
+ const params = new HttpParams()
1944
+ .set('tenantId', tenantId)
1945
+ .set('importStrategy', importStrategy.toString());
1946
+ if (this.configurationService.config?.assetServices) {
1947
+ const formData = new FormData();
1948
+ formData.append("file", file);
1949
+ const r = await firstValueFrom(this.httpClient.post(this.configurationService.config.assetServices + 'system/v1/Models/ImportCk', formData, {
1950
+ params,
1951
+ observe: 'response'
1952
+ }));
1953
+ return r.body?.jobId ?? null;
1954
+ }
1955
+ return null;
1956
+ }
1957
+ async exportRtModelByQuery(tenantId, queryId) {
1958
+ const params = new HttpParams().set('tenantId', tenantId);
1959
+ if (this.configurationService.config?.assetServices) {
1960
+ const r = await firstValueFrom(this.httpClient
1961
+ .post(this.configurationService.config.assetServices + 'system/v1/Models/ExportRtByQuery', { queryId }, {
1962
+ params,
1963
+ observe: 'response'
1964
+ }));
1965
+ return r.body?.jobId ?? null;
1966
+ }
1967
+ return null;
1968
+ }
1969
+ async exportRtModelDeepGraph(tenantId, originRtIds, originCkTypeId) {
1970
+ const params = new HttpParams().set('tenantId', tenantId);
1971
+ if (this.configurationService.config?.assetServices) {
1972
+ const r = await firstValueFrom(this.httpClient
1973
+ .post(this.configurationService.config.assetServices + 'system/v1/Models/ExportRtByDeepGraph', { originRtIds, originCkTypeId }, {
1974
+ params,
1975
+ observe: 'response'
1976
+ }));
1977
+ return r.body?.jobId ?? null;
1978
+ }
1979
+ return null;
1980
+ }
1981
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: AssetRepoService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1982
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: AssetRepoService, providedIn: 'root' });
1983
+ }
1984
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: AssetRepoService, decorators: [{
1985
+ type: Injectable,
1986
+ args: [{
1987
+ providedIn: 'root'
1988
+ }]
1989
+ }] });
1990
+
1991
+ class BotService {
1992
+ httpClient = inject(HttpClient);
1993
+ configurationService = inject(CONFIGURATION_SERVICE);
1994
+ async runFixupScripts(tenantId) {
1995
+ const params = new HttpParams().set('tenantId', tenantId);
1996
+ if (this.configurationService.config?.botServices) {
1997
+ const r = await firstValueFrom(this.httpClient.post(this.configurationService.config.botServices + 'system/v1/jobs/run-fixup-scripts', null, {
1998
+ params,
1999
+ observe: 'response'
2000
+ }));
2001
+ return r.body;
2002
+ }
2003
+ return null;
2004
+ }
2005
+ async dumpRepository(tenantId) {
2006
+ const params = new HttpParams().set('tenantId', tenantId);
2007
+ if (this.configurationService.config?.botServices) {
2008
+ const r = await firstValueFrom(this.httpClient.post(this.configurationService.config.botServices + 'system/v1/jobs/dump-repository', null, {
2009
+ params,
2010
+ observe: 'response'
2011
+ }));
2012
+ return r.body;
2013
+ }
2014
+ return null;
2015
+ }
2016
+ /** @deprecated Use TusUploadService.startUpload() instead for resumable uploads supporting large files. */
2017
+ async restoreRepository(tenantId, databaseName, file) {
2018
+ const params = new HttpParams().set('tenantId', tenantId).set('databaseName', databaseName);
2019
+ if (this.configurationService.config?.botServices) {
2020
+ const formData = new FormData();
2021
+ formData.append('file', file, file.name);
2022
+ const r = await firstValueFrom(this.httpClient.post(this.configurationService.config.botServices + 'system/v1/jobs/restore-repository', formData, {
2023
+ params,
2024
+ observe: 'response'
2025
+ }));
2026
+ return r.body;
2027
+ }
2028
+ return null;
2029
+ }
2030
+ async downloadJobResultBinary(tenantId, jobId) {
2031
+ const params = new HttpParams().set('tenantId', tenantId).set('id', jobId);
2032
+ if (this.configurationService.config?.botServices) {
2033
+ return await firstValueFrom(this.httpClient.get(this.configurationService.config.botServices + 'system/v1/jobs/download', {
2034
+ params,
2035
+ responseType: 'blob'
2036
+ }));
2037
+ }
2038
+ return null;
2039
+ }
2040
+ async getJobStatus(jobId) {
2041
+ const params = new HttpParams().set('id', jobId);
2042
+ if (this.configurationService.config?.botServices) {
2043
+ return firstValueFrom(this.httpClient
2044
+ .get(this.configurationService.config.botServices + 'system/v1/jobs', {
2045
+ params,
2046
+ observe: 'response'
2047
+ })
2048
+ .pipe(map$1((res) => {
2049
+ return res.body;
2050
+ })));
2051
+ }
2052
+ return null;
2053
+ }
2054
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: BotService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
2055
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: BotService, providedIn: 'root' });
2056
+ }
2057
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: BotService, decorators: [{
2058
+ type: Injectable,
2059
+ args: [{
2060
+ providedIn: 'root'
2061
+ }]
2062
+ }] });
2063
+
2064
+ class HealthService {
2065
+ httpClient = inject(HttpClient);
2066
+ configurationService = inject(CONFIGURATION_SERVICE);
2067
+ async getStatusAsync(uri) {
2068
+ try {
2069
+ const r = await firstValueFrom(this.httpClient.get(uri + 'health', {
2070
+ observe: 'response'
2071
+ }));
2072
+ if (r.status === 200) {
2073
+ return r.body;
2074
+ }
2075
+ }
2076
+ catch (error) {
2077
+ if (error instanceof HttpErrorResponse) {
2078
+ if (error.status == 503) {
2079
+ return error.error;
2080
+ }
2081
+ }
2082
+ console.error("error", error);
2083
+ }
2084
+ return null;
2085
+ }
2086
+ async getAssetRepoServiceHealthAsync() {
2087
+ return this.getStatusAsync(this.configurationService.config.assetServices);
2088
+ }
2089
+ async getIdentityServiceAsync() {
2090
+ return this.getStatusAsync(this.configurationService.config.issuer);
2091
+ }
2092
+ async getBotServiceAsync() {
2093
+ return this.getStatusAsync(this.configurationService.config.botServices);
2094
+ }
2095
+ async getCommunicationControllerServiceAsync() {
2096
+ return this.getStatusAsync(this.configurationService.config.communicationServices);
2097
+ }
2098
+ async getMeshAdapterAsync() {
2099
+ return this.getStatusAsync(this.configurationService.config.meshAdapterUrl);
2100
+ }
2101
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: HealthService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
2102
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: HealthService, providedIn: 'root' });
2103
+ }
2104
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: HealthService, decorators: [{
2105
+ type: Injectable,
2106
+ args: [{
2107
+ providedIn: 'root'
2108
+ }]
2109
+ }] });
2110
+
2111
+ class IdentityService {
2112
+ httpClient = inject(HttpClient);
2113
+ configurationService = inject(CONFIGURATION_SERVICE);
2114
+ async userDiagnostics() {
2115
+ if (this.configurationService.config?.issuer) {
2116
+ return await firstValueFrom(this.httpClient.get(this.configurationService.config.issuer + 'system/v1/Diagnostics'));
2117
+ }
2118
+ return null;
2119
+ }
2120
+ async getUsers(skip, take) {
2121
+ const params = new HttpParams().set('skip', '' + skip.toString()).set('take', '' + take.toString());
2122
+ if (this.configurationService.config?.issuer) {
2123
+ const response = await firstValueFrom(this.httpClient.get(this.configurationService.config.issuer + 'system/v1/users/getPaged', {
2124
+ params,
2125
+ observe: 'response'
2126
+ }));
2127
+ return response.body;
2128
+ }
2129
+ return null;
2130
+ }
2131
+ async getUserDetails(userName) {
2132
+ if (this.configurationService.config?.issuer) {
2133
+ const response = await firstValueFrom(this.httpClient.get(this.configurationService.config.issuer + `system/v1/users/${userName}`, {
2134
+ observe: 'response'
2135
+ }));
2136
+ return response.body;
2137
+ }
2138
+ return null;
2139
+ }
2140
+ async createUser(userDto) {
2141
+ if (this.configurationService.config?.issuer) {
2142
+ await firstValueFrom(this.httpClient.post(this.configurationService.config.issuer + 'system/v1/users', userDto, {
2143
+ observe: 'response'
2144
+ }));
2145
+ }
2146
+ }
2147
+ async updateUser(userName, userDto) {
2148
+ if (this.configurationService.config?.issuer) {
2149
+ await firstValueFrom(this.httpClient.put(this.configurationService.config.issuer + `system/v1/users/${userName}`, userDto, {
2150
+ observe: 'response'
2151
+ }));
2152
+ }
2153
+ }
2154
+ async deleteUser(userName) {
2155
+ if (this.configurationService.config?.issuer) {
2156
+ await firstValueFrom(this.httpClient.delete(this.configurationService.config.issuer + `system/v1/users/${userName}`, {
2157
+ observe: 'response'
2158
+ }));
2159
+ }
2160
+ }
2161
+ async getUserRoles(userName) {
2162
+ if (this.configurationService.config?.issuer) {
2163
+ const response = await firstValueFrom(this.httpClient.get(this.configurationService.config.issuer + `system/v1/users/${userName}/roles`, {
2164
+ observe: 'response'
2165
+ }));
2166
+ return response.body;
2167
+ }
2168
+ return null;
2169
+ }
2170
+ async updateUserRoles(userName, roles) {
2171
+ if (this.configurationService.config?.issuer) {
2172
+ const roleIds = roles.map((role) => role.id);
2173
+ await firstValueFrom(this.httpClient.put(this.configurationService.config.issuer + `system/v1/users/${userName}/roles`, roleIds, {
2174
+ observe: 'response'
2175
+ }));
2176
+ }
2177
+ }
2178
+ async addUserToRole(userName, roleName) {
2179
+ if (this.configurationService.config?.issuer) {
2180
+ await firstValueFrom(this.httpClient.put(this.configurationService.config.issuer + `system/v1/users/${userName}/roles/${roleName}`, null, {
2181
+ observe: 'response'
2182
+ }));
2183
+ }
2184
+ }
2185
+ async removeRoleFromUser(userName, roleName) {
2186
+ if (this.configurationService.config?.issuer) {
2187
+ await firstValueFrom(this.httpClient.delete(this.configurationService.config.issuer + `system/v1/users/${userName}/roles/${roleName}`, {
2188
+ observe: 'response'
2189
+ }));
2190
+ }
2191
+ }
2192
+ async resetPassword(userName, password) {
2193
+ const params = new HttpParams().set('userName', userName).set('password', password);
2194
+ if (this.configurationService.config?.issuer) {
2195
+ const response = await firstValueFrom(this.httpClient.post(this.configurationService.config.issuer + 'system/v1/users/ResetPassword', null, {
2196
+ params,
2197
+ observe: 'response'
2198
+ }));
2199
+ return response.body;
2200
+ }
2201
+ return null;
2202
+ }
2203
+ async getClients(skip, take) {
2204
+ const params = new HttpParams().set('skip', '' + skip.toString()).set('take', '' + take.toString());
2205
+ if (this.configurationService.config?.issuer) {
2206
+ const response = await firstValueFrom(this.httpClient.get(this.configurationService.config.issuer + 'system/v1/clients/getPaged', {
2207
+ params,
2208
+ observe: 'response'
2209
+ }));
2210
+ return response.body;
2211
+ }
2212
+ return null;
2213
+ }
2214
+ async getClientDetails(clientId) {
2215
+ if (this.configurationService.config?.issuer) {
2216
+ const response = await firstValueFrom(this.httpClient.get(this.configurationService.config.issuer + `system/v1/clients/${clientId}`, {
2217
+ observe: 'response'
2218
+ }));
2219
+ return response.body;
2220
+ }
2221
+ return null;
2222
+ }
2223
+ async createClient(clientDto) {
2224
+ if (this.configurationService.config?.issuer) {
2225
+ await firstValueFrom(this.httpClient.post(this.configurationService.config.issuer + 'system/v1/clients', clientDto, {
2226
+ observe: 'response'
2227
+ }));
2228
+ }
2229
+ }
2230
+ async updateClient(clientId, clientDto) {
2231
+ if (this.configurationService.config?.issuer) {
2232
+ await firstValueFrom(this.httpClient.put(this.configurationService.config.issuer + `system/v1/clients/${clientId}`, clientDto, {
2233
+ observe: 'response'
2234
+ }));
2235
+ }
2236
+ }
2237
+ async deleteClient(clientId) {
2238
+ if (this.configurationService.config?.issuer) {
2239
+ await firstValueFrom(this.httpClient.delete(this.configurationService.config.issuer + `system/v1/clients/${clientId}`, {
2240
+ observe: 'response'
2241
+ }));
2242
+ }
2243
+ }
2244
+ async generatePassword() {
2245
+ const params = new HttpParams();
2246
+ if (this.configurationService.config?.issuer) {
2247
+ const r = await firstValueFrom(this.httpClient
2248
+ .get(this.configurationService.config.issuer + 'system/v1/tools/generatePassword', {
2249
+ params,
2250
+ observe: 'response'
2251
+ }));
2252
+ return r.body;
2253
+ }
2254
+ return null;
2255
+ }
2256
+ // ========================================
2257
+ // Role Management
2258
+ // ========================================
2259
+ async getRoles(skip, take) {
2260
+ const params = new HttpParams().set('skip', '' + skip.toString()).set('take', '' + take.toString());
2261
+ if (this.configurationService.config?.issuer) {
2262
+ const response = await firstValueFrom(this.httpClient.get(this.configurationService.config.issuer + 'system/v1/roles/getPaged', {
2263
+ params,
2264
+ observe: 'response'
2265
+ }));
2266
+ return response.body;
2267
+ }
2268
+ return null;
2269
+ }
2270
+ async getRoleDetails(roleName) {
2271
+ if (this.configurationService.config?.issuer) {
2272
+ const response = await firstValueFrom(this.httpClient.get(this.configurationService.config.issuer + `system/v1/roles/names/${roleName}`, {
2273
+ observe: 'response'
2274
+ }));
2275
+ return response.body;
2276
+ }
2277
+ return null;
2278
+ }
2279
+ async createRole(roleDto) {
2280
+ if (this.configurationService.config?.issuer) {
2281
+ await firstValueFrom(this.httpClient.post(this.configurationService.config.issuer + 'system/v1/roles', roleDto, {
2282
+ observe: 'response'
2283
+ }));
2284
+ }
2285
+ }
2286
+ async updateRole(roleName, roleDto) {
2287
+ if (this.configurationService.config?.issuer) {
2288
+ await firstValueFrom(this.httpClient.put(this.configurationService.config.issuer + `system/v1/roles/${roleName}`, roleDto, {
2289
+ observe: 'response'
2290
+ }));
2291
+ }
2292
+ }
2293
+ async deleteRole(roleName) {
2294
+ if (this.configurationService.config?.issuer) {
2295
+ await firstValueFrom(this.httpClient.delete(this.configurationService.config.issuer + `system/v1/roles/${roleName}`, {
2296
+ observe: 'response'
2297
+ }));
2298
+ }
2299
+ }
2300
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: IdentityService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
2301
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: IdentityService, providedIn: 'root' });
2302
+ }
2303
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: IdentityService, decorators: [{
2304
+ type: Injectable,
2305
+ args: [{
2306
+ providedIn: 'root'
2307
+ }]
2308
+ }] });
2309
+
2310
+ class JobManagementService {
2311
+ botService = inject(BotService);
2312
+ messageService = inject(MessageService);
2313
+ progressWindowService = inject(ProgressWindowService);
2314
+ async downloadJobResult(tenantId, jobId, fileName) {
2315
+ this.messageService.showInformation('Operation completed. Download has been initialized.');
2316
+ const blob = await this.botService.downloadJobResultBinary(tenantId, jobId);
2317
+ if (blob) {
2318
+ const downloadURL = window.URL.createObjectURL(blob);
2319
+ const link = document.createElement('a');
2320
+ link.href = downloadURL;
2321
+ link.download = fileName;
2322
+ link.click();
2323
+ }
2324
+ }
2325
+ async waitForJob(jobId, title, operation) {
2326
+ let cancelled = false;
2327
+ const progressSubject = new Subject();
2328
+ const progressDialog = this.progressWindowService.showIndeterminateProgress(title, progressSubject.asObservable(), {
2329
+ isCancelOperationAvailable: true,
2330
+ cancelOperation: () => {
2331
+ cancelled = true;
2332
+ console.log('Wait job task cancelled');
2333
+ progressDialog.close();
2334
+ },
2335
+ width: 500
2336
+ });
2337
+ while (true) {
2338
+ const jobDto = await this.botService.getJobStatus(jobId);
2339
+ if (jobDto == null) {
2340
+ this.messageService.showError(`${operation}: Job not found`);
2341
+ break;
2342
+ }
2343
+ if (jobDto.status === 'Succeeded' || jobDto.status === 'Failed'
2344
+ || jobDto.status === 'Deleted' || cancelled) {
2345
+ if (jobDto.status === 'Succeeded') {
2346
+ progressDialog.close();
2347
+ return true;
2348
+ }
2349
+ else {
2350
+ const errorDetails = jobDto.errorMessage || jobDto.reason || 'Unknown error';
2351
+ this.messageService.showErrorWithDetails(errorDetails, operation);
2352
+ }
2353
+ break;
2354
+ }
2355
+ const progressValue = new ProgressValue();
2356
+ progressValue.statusText = `Operation '${jobDto.status ?? '<unknown>'}'. Please wait...`;
2357
+ progressSubject.next(progressValue);
2358
+ await new Promise((resolve) => setTimeout(resolve, 1000));
2359
+ }
2360
+ return false;
2361
+ }
2362
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: JobManagementService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
2363
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: JobManagementService, providedIn: 'root' });
2364
+ }
2365
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: JobManagementService, decorators: [{
2366
+ type: Injectable,
2367
+ args: [{
2368
+ providedIn: 'root'
2369
+ }]
2370
+ }] });
2371
+
2372
+ /**
2373
+ * Service for communication controller operations.
2374
+ * Handles adapter deployment, pipeline execution, and debugging.
2375
+ */
2376
+ class CommunicationService {
2377
+ httpClient = inject(HttpClient);
2378
+ configurationService = inject(CONFIGURATION_SERVICE);
2379
+ /** Headers to prevent browser caching of debug/execution data. */
2380
+ noCacheHeaders = new HttpHeaders()
2381
+ .set('Cache-Control', 'no-cache, no-store')
2382
+ .set('Pragma', 'no-cache');
2383
+ /**
2384
+ * Gets the base URL for communication services.
2385
+ */
2386
+ get communicationServicesUrl() {
2387
+ return this.configurationService.config?.communicationServices;
2388
+ }
2389
+ // ============================================================================
2390
+ // Trigger Deployment
2391
+ // ============================================================================
2392
+ /**
2393
+ * Deploys all data pipeline triggers for a tenant.
2394
+ */
2395
+ async deployTrigger(tenantId) {
2396
+ if (this.communicationServicesUrl) {
2397
+ const uri = `${this.communicationServicesUrl}${tenantId}/v1/dataPipelineTrigger/deploy`;
2398
+ await firstValueFrom(this.httpClient.post(uri, null, { observe: 'response' }));
2399
+ }
2400
+ }
2401
+ // ============================================================================
2402
+ // Adapter Configuration Deployment
2403
+ // ============================================================================
2404
+ /**
2405
+ * Deploys an adapter configuration update.
2406
+ * This triggers the adapter to reload its configuration.
2407
+ */
2408
+ async deployAdapterConfigurationUpdate(tenantId, adapterRtId, adapterCkTypeId) {
2409
+ if (this.communicationServicesUrl) {
2410
+ const params = new HttpParams()
2411
+ .set('adapterRtEntityId', `${adapterCkTypeId}@${adapterRtId}`);
2412
+ const uri = `${this.communicationServicesUrl}${tenantId}/v1/adapter/deployUpdate`;
2413
+ await firstValueFrom(this.httpClient.post(uri, null, { params, observe: 'response' }));
2414
+ }
2415
+ }
2416
+ // ============================================================================
2417
+ // Pool-Level Adapter Deployment
2418
+ // ============================================================================
2419
+ /**
2420
+ * Deploys all adapters of a pool.
2421
+ */
2422
+ async deployAllAdaptersOfPool(tenantId, poolRtId) {
2423
+ if (this.communicationServicesUrl) {
2424
+ const params = new HttpParams().set('poolRtId', poolRtId);
2425
+ const uri = `${this.communicationServicesUrl}${tenantId}/v1/pool/deployAllAdaptersOfPool`;
2426
+ await firstValueFrom(this.httpClient.post(uri, null, { params, observe: 'response' }));
2427
+ }
2428
+ }
2429
+ /**
2430
+ * Undeploys all adapters of a pool.
2431
+ */
2432
+ async undeployAllAdaptersOfPool(tenantId, poolRtId) {
2433
+ if (this.communicationServicesUrl) {
2434
+ const params = new HttpParams().set('poolRtId', poolRtId);
2435
+ const uri = `${this.communicationServicesUrl}${tenantId}/v1/pool/undeployAllAdaptersOfPool`;
2436
+ await firstValueFrom(this.httpClient.post(uri, null, { params, observe: 'response' }));
2437
+ }
2438
+ }
2439
+ // ============================================================================
2440
+ // Individual Adapter Deployment
2441
+ // ============================================================================
2442
+ /**
2443
+ * Deploys a single adapter to a pool.
2444
+ */
2445
+ async deployAdapter(tenantId, poolRtId, adapterRtId, adapterCkTypeId) {
2446
+ if (this.communicationServicesUrl) {
2447
+ const params = new HttpParams()
2448
+ .set('poolRtId', poolRtId)
2449
+ .set('adapterRtEntityId', `${adapterCkTypeId}@${adapterRtId}`);
2450
+ const uri = `${this.communicationServicesUrl}${tenantId}/v1/pool/deployAdapter`;
2451
+ await firstValueFrom(this.httpClient.post(uri, null, { params, observe: 'response' }));
2452
+ }
2453
+ }
2454
+ /**
2455
+ * Undeploys a single adapter from a pool.
2456
+ */
2457
+ async undeployAdapter(tenantId, poolRtId, adapterRtId, adapterCkTypeId) {
2458
+ if (this.communicationServicesUrl) {
2459
+ const params = new HttpParams()
2460
+ .set('poolRtId', poolRtId)
2461
+ .set('adapterRtEntityId', `${adapterCkTypeId}@${adapterRtId}`);
2462
+ const uri = `${this.communicationServicesUrl}${tenantId}/v1/pool/unDeployAdapter`;
2463
+ await firstValueFrom(this.httpClient.post(uri, null, { params, observe: 'response' }));
2464
+ }
2465
+ }
2466
+ // ============================================================================
2467
+ // Pipeline Execution
2468
+ // ============================================================================
2469
+ /**
2470
+ * Executes a data pipeline manually.
2471
+ */
2472
+ async executePipeline(tenantId, dataPipelineRtId) {
2473
+ if (this.communicationServicesUrl) {
2474
+ const params = new HttpParams().set('dataPipelineRtId', dataPipelineRtId);
2475
+ const uri = `${this.communicationServicesUrl}${tenantId}/v1/pipeline/execute`;
2476
+ const response = await firstValueFrom(this.httpClient.post(uri, null, {
2477
+ params,
2478
+ observe: 'response'
2479
+ }));
2480
+ return response.body;
2481
+ }
2482
+ return null;
2483
+ }
2484
+ // ============================================================================
2485
+ // Pipeline Deployment
2486
+ // ============================================================================
2487
+ /**
2488
+ * Deploys a pipeline definition to an adapter.
2489
+ */
2490
+ async deployPipelineDefinition(tenantId, adapterRtId, adapterCkTypeId, pipelineRtId, pipelineCkTypeId, pipelineDefinition) {
2491
+ if (this.communicationServicesUrl) {
2492
+ const params = new HttpParams()
2493
+ .set('pipelineRtEntityId', `${pipelineCkTypeId}@${pipelineRtId}`)
2494
+ .set('adapterRtEntityId', `${adapterCkTypeId}@${adapterRtId}`)
2495
+ .set('Content-Type', 'text/yaml');
2496
+ const uri = `${this.communicationServicesUrl}${tenantId}/v1/pipeline/deploy`;
2497
+ await firstValueFrom(this.httpClient.post(uri, pipelineDefinition, {
2498
+ params,
2499
+ observe: 'response'
2500
+ }));
2501
+ }
2502
+ }
2503
+ /**
2504
+ * Deploys a data pipeline.
2505
+ */
2506
+ async deployDataPipeline(tenantId, dataPipelineRtId) {
2507
+ if (this.communicationServicesUrl) {
2508
+ const params = new HttpParams().set('dataPipelineRtId', dataPipelineRtId);
2509
+ const uri = `${this.communicationServicesUrl}${tenantId}/v1/dataPipeline/deploy`;
2510
+ await firstValueFrom(this.httpClient.post(uri, null, { params, observe: 'response' }));
2511
+ }
2512
+ }
2513
+ /**
2514
+ * Undeploys a data pipeline.
2515
+ */
2516
+ async undeployDataPipeline(tenantId, dataPipelineRtId) {
2517
+ if (this.communicationServicesUrl) {
2518
+ const params = new HttpParams().set('dataPipelineRtId', dataPipelineRtId);
2519
+ const uri = `${this.communicationServicesUrl}${tenantId}/v1/dataPipeline/undeploy`;
2520
+ await firstValueFrom(this.httpClient.post(uri, null, { params, observe: 'response' }));
2521
+ }
2522
+ }
2523
+ /**
2524
+ * Gets the deployment status of a pipeline.
2525
+ */
2526
+ async getPipelineStatus(tenantId, pipelineRtId, pipelineCkTypeId) {
2527
+ if (this.communicationServicesUrl) {
2528
+ const params = new HttpParams()
2529
+ .set('pipelineRtEntityId', `${pipelineCkTypeId}@${pipelineRtId}`);
2530
+ const uri = `${this.communicationServicesUrl}${tenantId}/v1/pipeline/status`;
2531
+ return await firstValueFrom(this.httpClient.get(uri, { params }).pipe(catchError((error) => {
2532
+ if (error.status === 404) {
2533
+ return throwError(() => new Error('No pipeline status found'));
2534
+ }
2535
+ return throwError(() => new Error('An error occurred'));
2536
+ })));
2537
+ }
2538
+ return null;
2539
+ }
2540
+ // ============================================================================
2541
+ // Pipeline Schema
2542
+ // ============================================================================
2543
+ /**
2544
+ * Gets the JSON Schema for a pipeline adapter.
2545
+ * Returns null if no schema is available (404).
2546
+ */
2547
+ async getPipelineSchema(tenantId, adapterRtId, adapterCkTypeId) {
2548
+ if (this.communicationServicesUrl) {
2549
+ const params = new HttpParams()
2550
+ .set('adapterRtEntityId', `${adapterCkTypeId}@${adapterRtId}`);
2551
+ const uri = `${this.communicationServicesUrl}${tenantId}/v1/adapter/pipeline-schema`;
2552
+ return await firstValueFrom(this.httpClient.get(uri, { params }).pipe(catchError((error) => {
2553
+ if (error.status === 404) {
2554
+ return of(null);
2555
+ }
2556
+ return throwError(() => error);
2557
+ })));
2558
+ }
2559
+ return null;
2560
+ }
2561
+ // ============================================================================
2562
+ // Pipeline Debugging
2563
+ // ============================================================================
2564
+ /**
2565
+ * Gets pipeline execution history.
2566
+ * Returns empty array if no executions found (404).
2567
+ */
2568
+ async getPipelineExecutions(tenantId, pipelineRtId, pipelineCkTypeId, skip, take) {
2569
+ if (this.communicationServicesUrl) {
2570
+ const params = new HttpParams()
2571
+ .set('skip', skip.toString())
2572
+ .set('take', take.toString());
2573
+ const uri = `${this.communicationServicesUrl}${tenantId}/v1/pipelineDebug/${encodeURIComponent(`${pipelineCkTypeId}@${pipelineRtId}`)}`;
2574
+ return await firstValueFrom(this.httpClient.get(uri, { params, headers: this.noCacheHeaders }).pipe(catchError((error) => {
2575
+ // 404 means no executions found - return empty array
2576
+ if (error.status === 404) {
2577
+ return of([]);
2578
+ }
2579
+ return throwError(() => error);
2580
+ })));
2581
+ }
2582
+ return [];
2583
+ }
2584
+ /**
2585
+ * Gets the latest pipeline execution.
2586
+ * Returns null if no executions found (404).
2587
+ */
2588
+ async getLatestPipelineExecution(tenantId, pipelineRtId, pipelineCkTypeId) {
2589
+ if (this.communicationServicesUrl) {
2590
+ const uri = `${this.communicationServicesUrl}${tenantId}/v1/pipelineDebug/${encodeURIComponent(`${pipelineCkTypeId}@${pipelineRtId}`)}/latest`;
2591
+ return await firstValueFrom(this.httpClient.get(uri, { headers: this.noCacheHeaders }).pipe(catchError((error) => {
2592
+ // 404 means no executions found - return null
2593
+ if (error.status === 404) {
2594
+ return of(null);
2595
+ }
2596
+ return throwError(() => error);
2597
+ })));
2598
+ }
2599
+ return null;
2600
+ }
2601
+ /**
2602
+ * Gets debug point nodes for a pipeline execution.
2603
+ * Returns null if execution not found (404).
2604
+ */
2605
+ async getPipelineExecutionDebugPointNodes(tenantId, pipelineRtId, pipelineCkTypeId, pipelineExecutionId) {
2606
+ if (this.communicationServicesUrl) {
2607
+ const uri = `${this.communicationServicesUrl}${tenantId}/v1/pipelineDebug/${encodeURIComponent(`${pipelineCkTypeId}@${pipelineRtId}`)}/${pipelineExecutionId}`;
2608
+ return await firstValueFrom(this.httpClient.get(uri, { headers: this.noCacheHeaders }).pipe(catchError((error) => {
2609
+ // 404 means execution not found - return null
2610
+ if (error.status === 404) {
2611
+ return of(null);
2612
+ }
2613
+ return throwError(() => error);
2614
+ })));
2615
+ }
2616
+ return null;
2617
+ }
2618
+ /**
2619
+ * Gets data captured at a specific debug point.
2620
+ * Returns null if debug point not found (404).
2621
+ */
2622
+ async getDebugPoint(tenantId, pipelineRtId, pipelineCkTypeId, pipelineExecutionId, nodeId) {
2623
+ if (this.communicationServicesUrl) {
2624
+ const uri = `${this.communicationServicesUrl}${tenantId}/v1/pipelineDebug/${encodeURIComponent(`${pipelineCkTypeId}@${pipelineRtId}`)}/${pipelineExecutionId}/${encodeURIComponent(nodeId)}`;
2625
+ return await firstValueFrom(this.httpClient.get(uri, { headers: this.noCacheHeaders }).pipe(catchError((error) => {
2626
+ // 404 means debug point not found - return null
2627
+ if (error.status === 404) {
2628
+ return of(null);
2629
+ }
2630
+ return throwError(() => error);
2631
+ })));
2632
+ }
2633
+ return null;
2634
+ }
2635
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: CommunicationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
2636
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: CommunicationService, providedIn: 'root' });
2637
+ }
2638
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: CommunicationService, decorators: [{
2639
+ type: Injectable,
2640
+ args: [{
2641
+ providedIn: 'root'
2642
+ }]
2643
+ }] });
2644
+
2645
+ class TusUploadService {
2646
+ httpClient = inject(HttpClient);
2647
+ configurationService = inject(CONFIGURATION_SERVICE);
2648
+ authorizeService = inject(AuthorizeService);
2649
+ async startUpload(options) {
2650
+ const botServicesUrl = this.configurationService.config?.botServices;
2651
+ if (!botServicesUrl) {
2652
+ throw new Error('Bot services URL not configured');
2653
+ }
2654
+ const tusFileId = await this.performTusUpload(botServicesUrl, options);
2655
+ const jobResponse = await this.startRestoreJob(botServicesUrl, tusFileId, options);
2656
+ if (!jobResponse?.jobId) {
2657
+ throw new Error('Failed to start restore job');
2658
+ }
2659
+ return { jobId: jobResponse.jobId };
2660
+ }
2661
+ performTusUpload(botServicesUrl, options) {
2662
+ return new Promise((resolve, reject) => {
2663
+ const metadata = {
2664
+ filename: options.file.name,
2665
+ filetype: options.file.type || 'application/gzip',
2666
+ tenantId: options.tenantId,
2667
+ databaseName: options.databaseName
2668
+ };
2669
+ if (options.oldDatabaseName) {
2670
+ metadata['oldDatabaseName'] = options.oldDatabaseName;
2671
+ }
2672
+ const upload = new Upload(options.file, {
2673
+ endpoint: botServicesUrl + 'system/v1/tus-upload',
2674
+ retryDelays: [0, 1000, 3000, 5000, 10000],
2675
+ chunkSize: 50 * 1024 * 1024,
2676
+ metadata,
2677
+ onBeforeRequest: (req) => {
2678
+ const token = this.authorizeService.getAccessTokenSync();
2679
+ if (token) {
2680
+ req.setHeader('Authorization', `Bearer ${token}`);
2681
+ }
2682
+ },
2683
+ onProgress: (bytesUploaded, bytesTotal) => {
2684
+ options.onProgress?.(bytesUploaded, bytesTotal);
2685
+ },
2686
+ onSuccess: () => {
2687
+ const uploadUrl = upload.url;
2688
+ if (!uploadUrl) {
2689
+ reject(new Error('Upload succeeded but no URL returned'));
2690
+ return;
2691
+ }
2692
+ const tusFileId = uploadUrl.substring(uploadUrl.lastIndexOf('/') + 1);
2693
+ resolve(tusFileId);
2694
+ },
2695
+ onError: (error) => {
2696
+ reject(new Error(`Upload failed: ${error.message}`));
2697
+ }
2698
+ });
2699
+ upload.start();
2700
+ });
2701
+ }
2702
+ async startRestoreJob(botServicesUrl, tusFileId, options) {
2703
+ let params = new HttpParams()
2704
+ .set('tusFileId', tusFileId)
2705
+ .set('tenantId', options.tenantId)
2706
+ .set('databaseName', options.databaseName);
2707
+ if (options.oldDatabaseName) {
2708
+ params = params.set('oldDatabaseName', options.oldDatabaseName);
2709
+ }
2710
+ const r = await firstValueFrom(this.httpClient.post(botServicesUrl + 'system/v1/jobs/restore-from-upload', null, { params, observe: 'response' }));
2711
+ return r.body;
2712
+ }
2713
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: TusUploadService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
2714
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: TusUploadService, providedIn: 'root' });
2715
+ }
2716
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: TusUploadService, decorators: [{
2717
+ type: Injectable,
2718
+ args: [{
2719
+ providedIn: 'root'
2720
+ }]
2721
+ }] });
2722
+
2723
+ /**
2724
+ * Injection token for providing the current tenant ID.
2725
+ * This is required for operations that need tenant context, such as:
2726
+ * - Exporting/importing runtime models
2727
+ * - Asset repository operations
2728
+ * - Job management
2729
+ *
2730
+ * @example
2731
+ * ```typescript
2732
+ * // app.config.ts
2733
+ * import { TENANT_ID_PROVIDER } from '@meshmakers/octo-services';
2734
+ * import { ActivatedRoute } from '@angular/router';
2735
+ * import { firstValueFrom } from 'rxjs';
2736
+ *
2737
+ * export const appConfig: ApplicationConfig = {
2738
+ * providers: [
2739
+ * {
2740
+ * provide: TENANT_ID_PROVIDER,
2741
+ * useFactory: () => {
2742
+ * const route = inject(ActivatedRoute);
2743
+ * const configService = inject(CONFIGURATION_SERVICE);
2744
+ * return async (): Promise<string | null> => {
2745
+ * if (route.firstChild) {
2746
+ * const params = await firstValueFrom(route.firstChild.params);
2747
+ * const tenantId = params['tenantId'] as string;
2748
+ * if (tenantId) {
2749
+ * return tenantId;
2750
+ * }
2751
+ * }
2752
+ * return configService.config?.systemTenantId ?? null;
2753
+ * };
2754
+ * }
2755
+ * }
2756
+ * ]
2757
+ * };
2758
+ * ```
2759
+ */
2760
+ const TENANT_ID_PROVIDER = new InjectionToken('TENANT_ID_PROVIDER');
2761
+
2762
+ /**
2763
+ * Backward-compatible OctoServicesModule for legacy apps that use
2764
+ * importProvidersFrom(OctoServicesModule.forRoot(options)).
2765
+ *
2766
+ * New code should use provideOctoServices(options) directly.
2767
+ */
2768
+ class OctoServicesModule {
2769
+ static forRoot(octoServiceOptions) {
2770
+ return {
2771
+ ngModule: OctoServicesModule,
2772
+ providers: [
2773
+ {
2774
+ provide: OctoServiceOptions,
2775
+ useValue: octoServiceOptions
2776
+ },
2777
+ OctoErrorLink
2778
+ ]
2779
+ };
2780
+ }
2781
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: OctoServicesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2782
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.1.5", ngImport: i0, type: OctoServicesModule });
2783
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: OctoServicesModule });
2784
+ }
2785
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: OctoServicesModule, decorators: [{
2786
+ type: NgModule,
2787
+ args: [{
2788
+ declarations: [],
2789
+ imports: [],
2790
+ exports: []
2791
+ }]
2792
+ }] });
2793
+
2794
+ /**
2795
+ * Backward-compatible AssetRepoGraphQlDataSource for legacy apps.
2796
+ *
2797
+ * New code in Refinery Studio should use OctoGraphQlDataSource from @meshmakers/octo-ui.
2798
+ */
2799
+ class GraphQlDataSource extends DataSourceBase {
2800
+ }
2801
+ class AssetRepoGraphQlDataSource extends GraphQlDataSource {
2802
+ messageService;
2803
+ query;
2804
+ defaultSort;
2805
+ queryRef;
2806
+ subscription;
2807
+ constructor(messageService, query, defaultSort = null) {
2808
+ super();
2809
+ this.messageService = messageService;
2810
+ this.query = query;
2811
+ this.defaultSort = defaultSort;
2812
+ this.queryRef = null;
2813
+ this.subscription = null;
2814
+ }
2815
+ clear() {
2816
+ super.clear();
2817
+ this.queryRef?.stopPolling();
2818
+ this.queryRef = null;
2819
+ this.subscription?.unsubscribe();
2820
+ this.subscription = null;
2821
+ }
2822
+ async refetch() {
2823
+ await this.queryRef?.refetch();
2824
+ }
2825
+ async refetchWith(skip = 0, take = 10, searchFilter = null, fieldFilter = null, sort = null) {
2826
+ const variables = this.createVariables(skip, take, searchFilter, fieldFilter, sort);
2827
+ await this.queryRef?.refetch(variables);
2828
+ }
2829
+ createVariables(skip = 0, take = 10, searchFilter = null, fieldFilter = null, sort = null) {
2830
+ if ((!sort || (sort && sort.length === 0)) && searchFilter === null) {
2831
+ sort = new Array();
2832
+ if (this.defaultSort) {
2833
+ sort = this.defaultSort;
2834
+ }
2835
+ }
2836
+ return {
2837
+ first: take,
2838
+ after: GraphQL.offsetToCursor(skip),
2839
+ sort,
2840
+ searchFilter,
2841
+ fieldFilters: fieldFilter
2842
+ };
2843
+ }
2844
+ loadData(skip = 0, take = 10, searchFilter = null, fieldFilter = null, sort = null) {
2845
+ this.clear();
2846
+ super.onBeginLoad();
2847
+ const variables = this.createVariables(skip, take, searchFilter, fieldFilter, sort);
2848
+ this.queryRef = this.query.watch({ variables, errorPolicy: 'all' });
2849
+ this.subscription = this.queryRef.valueChanges
2850
+ .pipe(map$1((v, i) => this.executeLoad(v, i)))
2851
+ .subscribe({
2852
+ next: (pagedResult) => super.onCompleteLoad(pagedResult),
2853
+ error: (e) => {
2854
+ const errorMessage = e instanceof Error ? e.message : String(e);
2855
+ this.messageService.showErrorWithDetails(errorMessage, '');
2856
+ super.onCompleteLoad(new PagedResultDto());
2857
+ }
2858
+ });
2859
+ }
2860
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2861
+ executeLoad(_value, _index) {
2862
+ return new PagedResultDto();
2863
+ }
2864
+ }
2865
+
2866
+ /**
2867
+ * Backward-compatible PagedGraphResultDto for legacy apps.
2868
+ */
10
2869
  class PagedGraphResultDto extends PagedResultDto {
11
2870
  document;
12
2871
  constructor() {
@@ -121,9 +2980,7 @@ class OctoGraphQLServiceBase {
121
2980
  variables
122
2981
  })
123
2982
  .pipe(map((value) => f(value.data)), finalize(() => {
124
- const promise = this.apollo.use(tenantId).client.reFetchObservableQueries(true);
125
- promise
126
- .then(() => { })
2983
+ this.apollo.use(tenantId).client.reFetchObservableQueries(true)
127
2984
  .catch((error) => {
128
2985
  console.error(error);
129
2986
  });
@@ -138,9 +2995,7 @@ class OctoGraphQLServiceBase {
138
2995
  variables
139
2996
  })
140
2997
  .pipe(map((value) => f(value.data)), finalize(() => {
141
- const promise = this.apollo.use(tenantId).client.reFetchObservableQueries(true);
142
- promise
143
- .then(() => { })
2998
+ this.apollo.use(tenantId).client.reFetchObservableQueries(true)
144
2999
  .catch((error) => {
145
3000
  console.error(error);
146
3001
  });
@@ -177,237 +3032,23 @@ class OctoGraphQLServiceBase {
177
3032
  }
178
3033
  }
179
3034
 
180
- class OctoServiceOptions {
181
- assetServices;
182
- defaultDataSourceId;
183
- constructor() {
184
- this.assetServices = null;
185
- this.defaultDataSourceId = undefined;
186
- }
187
- }
188
-
189
- class OctoErrorLink extends ApolloLink {
190
- errorLink;
191
- injector = inject(Injector);
192
- constructor() {
193
- super();
194
- // There is currently no other way to inject a service into an Apollo Link,
195
- // because Apollo deprecated without replacement
196
- this.errorLink = onError(({ error, operation, forward }) => {
197
- if (error) {
198
- if (error instanceof CombinedGraphQLErrors) {
199
- this.showError(error);
200
- }
201
- else {
202
- this.showErrorLike(error);
203
- }
204
- }
205
- return forward(operation);
206
- });
207
- }
208
- showErrorLike(error) {
209
- const messageService = this.injector.get(MessageService);
210
- const title = error.message;
211
- const details = error.message;
212
- console.error(error);
213
- messageService.showError(details, title);
214
- }
215
- showError(combinedGraphQLErrors) {
216
- const messageService = this.injector.get(MessageService);
217
- let title = 'GraphQL error';
218
- let details = '';
219
- for (const error of combinedGraphQLErrors.errors) {
220
- console.error(error);
221
- if (title == 'GraphQL error') {
222
- title = `${error.message}`;
223
- }
224
- else {
225
- details += `======================`;
226
- details += `${error.message}`;
227
- }
228
- if (error.extensions) {
229
- // check for custom error properties, OctoDetails should be an array of MessageDetails
230
- if (error.extensions['code']) {
231
- details += `Global Result Code: ${error.extensions['code']}`;
232
- }
233
- if (error.extensions['OctoDetails'] && Array.isArray(error.extensions['OctoDetails'])) {
234
- // iterate over the details and add them to the message
235
- for (const detail of error.extensions['OctoDetails']) {
236
- if (detail.message) {
237
- details += `\n\n✗ ${detail.message}`;
238
- }
239
- if (detail.details && Array.isArray(detail.details)) {
240
- for (const subDetail of detail.details) {
241
- if (subDetail) {
242
- details += `\n • ${subDetail}`;
243
- }
244
- }
245
- }
246
- }
247
- }
248
- }
249
- messageService.showError(details, title);
250
- }
251
- }
252
- request(operation, forward) {
253
- return this.errorLink.request(operation, forward);
254
- }
255
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: OctoErrorLink, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
256
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: OctoErrorLink });
257
- }
258
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: OctoErrorLink, decorators: [{
259
- type: Injectable
260
- }], ctorParameters: () => [] });
261
-
262
- class OctoServicesModule {
263
- static forRoot(octoServiceOptions) {
264
- return {
265
- ngModule: OctoServicesModule,
266
- providers: [
267
- {
268
- provide: OctoServiceOptions,
269
- useValue: octoServiceOptions
270
- },
271
- OctoErrorLink
272
- ]
273
- };
274
- }
275
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: OctoServicesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
276
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.12", ngImport: i0, type: OctoServicesModule });
277
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: OctoServicesModule });
278
- }
279
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: OctoServicesModule, decorators: [{
280
- type: NgModule,
281
- args: [{
282
- declarations: [],
283
- imports: [],
284
- exports: []
285
- }]
286
- }] });
287
-
288
- class GraphQL {
289
- static getCursor(position) {
290
- return btoa(`arrayconnection:${position}`);
291
- }
292
- static offsetToCursor(offset) {
293
- if (!offset) {
294
- return null;
295
- }
296
- return this.getCursor(offset - 1);
297
- }
298
- }
299
- const GraphQLCommonIgnoredProperties = ['__typename'];
300
- const GraphQLCloneIgnoredProperties = ['id', 'rtId', 'ckTypeId', '__typename'];
301
-
302
- class GraphQlDataSource extends DataSourceBase {
303
- }
304
- class AssetRepoGraphQlDataSource extends GraphQlDataSource {
305
- messageService;
306
- query;
307
- defaultSort;
308
- queryRef;
309
- subscription;
310
- constructor(messageService, query, defaultSort = null) {
311
- super();
312
- this.messageService = messageService;
313
- this.query = query;
314
- this.defaultSort = defaultSort;
315
- this.queryRef = null;
316
- this.subscription = null;
317
- }
318
- clear() {
319
- super.clear();
320
- this.queryRef?.stopPolling();
321
- this.queryRef = null;
322
- this.subscription?.unsubscribe();
323
- this.subscription = null;
324
- }
325
- async refetch() {
326
- await this.queryRef?.refetch();
327
- }
328
- async refetchWith(skip = 0, take = 10, searchFilter = null, fieldFilter = null, sort = null) {
329
- const variables = this.createVariables(skip, take, searchFilter, fieldFilter, sort);
330
- await this.queryRef?.refetch(variables);
331
- }
332
- createVariables(skip = 0, take = 10, searchFilter = null, fieldFilter = null, sort = null) {
333
- // Default sort
334
- if ((!sort || (sort && sort.length === 0)) && searchFilter === null) {
335
- sort = new Array();
336
- if (this.defaultSort) {
337
- sort = this.defaultSort;
338
- }
339
- }
340
- return {
341
- first: take,
342
- after: GraphQL.offsetToCursor(skip),
343
- sort,
344
- searchFilter,
345
- fieldFilters: fieldFilter
346
- };
347
- }
348
- loadData(skip = 0, take = 10, searchFilter = null, fieldFilter = null, sort = null) {
349
- this.clear();
350
- super.onBeginLoad();
351
- const variables = this.createVariables(skip, take, searchFilter, fieldFilter, sort);
352
- this.queryRef = this.query.watch({ variables, errorPolicy: 'all' });
353
- this.subscription = this.queryRef.valueChanges
354
- .pipe(map$1((v, i) => this.executeLoad(v, i)))
355
- .subscribe({
356
- next: (pagedResult) => super.onCompleteLoad(pagedResult),
357
- error: (e) => {
358
- this.messageService.showErrorWithDetails(e);
359
- super.onCompleteLoad(new PagedResultDto());
360
- }
361
- });
362
- }
363
- executeLoad(_value, _index) {
364
- return new PagedResultDto();
365
- }
366
- }
367
-
368
- /* eslint-disable */
369
- // @generated
370
- // This file was automatically generated and should not be edited.
371
- /** Defines the operator of field compare */
372
- var FieldFilterOperatorsDto;
373
- (function (FieldFilterOperatorsDto) {
374
- FieldFilterOperatorsDto["AnyEqDto"] = "ANY_EQ";
375
- FieldFilterOperatorsDto["AnyLikeDto"] = "ANY_LIKE";
376
- FieldFilterOperatorsDto["EqualsDto"] = "EQUALS";
377
- FieldFilterOperatorsDto["GreaterEqualThanDto"] = "GREATER_EQUAL_THAN";
378
- FieldFilterOperatorsDto["GreaterThanDto"] = "GREATER_THAN";
379
- FieldFilterOperatorsDto["InDto"] = "IN";
380
- FieldFilterOperatorsDto["LessEqualThanDto"] = "LESS_EQUAL_THAN";
381
- FieldFilterOperatorsDto["LessThanDto"] = "LESS_THAN";
382
- FieldFilterOperatorsDto["LikeDto"] = "LIKE";
383
- FieldFilterOperatorsDto["MatchRegExDto"] = "MATCH_REG_EX";
384
- FieldFilterOperatorsDto["NotEqualsDto"] = "NOT_EQUALS";
385
- FieldFilterOperatorsDto["NotInDto"] = "NOT_IN";
386
- })(FieldFilterOperatorsDto || (FieldFilterOperatorsDto = {}));
387
- /** The type of search that is used (a text based search using text analysis (high performance, scoring, maybe more false positives) or filtering of attributes (lower performance, more exact results) */
388
- var SearchFilterTypesDto;
389
- (function (SearchFilterTypesDto) {
390
- SearchFilterTypesDto["AttributeFilterDto"] = "ATTRIBUTE_FILTER";
391
- SearchFilterTypesDto["TextSearchDto"] = "TEXT_SEARCH";
392
- })(SearchFilterTypesDto || (SearchFilterTypesDto = {}));
393
- /** Defines the sort order */
394
- var SortOrdersDto;
395
- (function (SortOrdersDto) {
396
- SortOrdersDto["AscendingDto"] = "ASCENDING";
397
- SortOrdersDto["DefaultDto"] = "DEFAULT";
398
- SortOrdersDto["DescendingDto"] = "DESCENDING";
399
- })(SortOrdersDto || (SortOrdersDto = {}));
400
- //==============================================================
401
- // END Enums and Input Objects
402
- //==============================================================
403
-
404
3035
  /*
405
3036
  * Public API Surface of octo-services
406
3037
  */
3038
+ function provideOctoServices(octoServiceOptions) {
3039
+ return makeEnvironmentProviders([
3040
+ provideMmSharedServices(),
3041
+ OctoErrorLink,
3042
+ {
3043
+ provide: OctoServiceOptions,
3044
+ useValue: octoServiceOptions
3045
+ }
3046
+ ]);
3047
+ }
407
3048
 
408
3049
  /**
409
3050
  * Generated bundle index. Do not edit.
410
3051
  */
411
3052
 
412
- export { AssetRepoGraphQlDataSource, FieldFilterOperatorsDto, GraphQL, GraphQLCloneIgnoredProperties, GraphQLCommonIgnoredProperties, GraphQlDataSource, OctoErrorLink, OctoGraphQLServiceBase, OctoServiceOptions, OctoServicesModule, PagedGraphResultDto, SearchFilterTypesDto, SortOrdersDto };
3053
+ export { AggregationInputTypesDto, AggregationTypesDto, AssetRepoGraphQlDataSource, AssetRepoService, AssociationModOptionsDto, AttributeSelectorService, AttributeValueTypeDto, BasicLegalEntityTypeDto, BasicSalutationDto, BasicTypeOfTelephoneBasicDto, BasicTypeOfTelephoneEnhancedDto, BasicUnitOfMeasureDto, BotService, CONFIGURATION_SERVICE, CkExtensionUpdateOperationsDto, CkModelService, CkTypeAttributeService, CkTypeMetaData, CkTypeSelectorService, CommunicationService, DeleteStrategiesDto, DeploymentState, FieldFilterOperatorsDto, GetCkModelByIdDocumentDto, GetCkModelByIdDtoGQL, GetCkRecordAttributesDocumentDto, GetCkRecordAttributesDtoGQL, GetCkTypeAttributesDocumentDto, GetCkTypeAttributesDtoGQL, GetCkTypeAvailableQueryColumnsDocumentDto, GetCkTypeAvailableQueryColumnsDtoGQL, GetCkTypesDocumentDto, GetCkTypesDtoGQL, GraphDirectionDto, GraphQL, GraphQLCloneIgnoredProperties, GraphQLCommonIgnoredProperties, GraphQlDataSource, HealthService, HealthStatus, IdentityService, ImportStrategyDto, JobManagementService, LevelMetaData, LoggerSeverity, ModelStateDto, MultiplicitiesDto, OctoErrorLink, OctoGraphQLServiceBase, OctoSdkDemoCustomerStatusDto, OctoSdkDemoNetworkOperatorDto, OctoSdkDemoOperatingStatusDto, OctoServiceOptions, OctoServicesModule, PagedGraphResultDto, ProgressValue, ProgressWindowService, RtAssociationMetaData, SearchFilterTypesDto, SortOrdersDto, SystemAggregationTypesDto, SystemCommunicationCommunicationStateDto, SystemCommunicationConfigurationStateDto, SystemCommunicationDeploymentStateDto, SystemCommunicationPipelineExecutionStatusDto, SystemCommunicationPipelineTriggerTypeDto, SystemEnvironmentModesDto, SystemFieldFilterOperatorDto, SystemIdentityTokenExpirationDto, SystemIdentityTokenTypeDto, SystemIdentityTokenUsageDto, SystemMaintenanceLevelsDto, SystemNotificationEventLevelsDto, SystemNotificationEventSourcesDto, SystemNotificationEventStatesDto, SystemNotificationNotificationTypesDto, SystemNotificationRenderingTypesDto, SystemQueryTypesDto, SystemSortOrdersDto, TENANT_ID_PROVIDER, TusUploadService, UpdateTypeDto, result as possibleTypes, provideOctoServices };
413
3054
  //# sourceMappingURL=meshmakers-octo-services.mjs.map