@alfresco/adf-process-services-cloud 9.2.0-38778559181 → 9.2.0-39158629344
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.
|
@@ -3,7 +3,7 @@ import { inject, Injectable, InjectionToken, EventEmitter, DestroyRef, Output, I
|
|
|
3
3
|
import * as i3 from '@alfresco/adf-core';
|
|
4
4
|
import { AppConfigService, JwtHelperService, OAuth2Service, TranslationService, DataTableSchema, UserPreferencesService, UserPreferenceValues, CustomEmptyContentTemplateDirective, ObjectDataTableAdapter, ColumnsSelectorComponent, MainMenuDataTableTemplateDirective, EmptyContentComponent, NoContentTemplateDirective, LoadingContentTemplateDirective, DataTableComponent, AdfDateFnsAdapter, MOMENT_DATE_FORMATS, AuthenticationService, StorageService, IconModule, DateFnsUtils, ADF_DATE_FORMATS, FullNamePipe, InitialUsernamePipe, FormFieldTypes, FormService, FormModel, ROW_ID_PREFIX, FormBaseComponent, ADF_DISPLAY_TEXT_SETTINGS, WidgetVisibilityService, FormExpressionService, UploadWidgetContentLinkModel, FormEvent, FormOutcomeModel, ConfirmDialogComponent, FormRulesEvent, FormOutcomeEvent, FormRendererComponent, ToolbarDividerComponent, ToolbarComponent, FormatSpacePipe, NotificationService, DownloadService, WidgetComponent, ThumbnailService, ErrorWidgetComponent, LocalizedDatePipe, UploadDirective, ContentLinkModel, getDynamicDateFieldRange, getDateFieldRange, isEmptyFieldValue, getValidationSummaryTranslationParameters, DEFAULT_DATE_FORMAT, FormFieldValueFormatterService, ADF_TYPED_VALUE_FORMATTING_ENABLED, FormFieldEvent, SelectFilterInputComponent, FormRenderingService, DynamicComponentMapper, CardViewUpdateService, ClipboardService, CardViewTextItemModel, CardViewSelectItemModel, CardViewDatetimeItemModel, CardViewDateItemModel, CardViewArrayItemModel, CardViewComponent, CustomLoadingContentTemplateDirective, isOutcomeButtonVisible, FormOutcomeNotFoundError, InplaceFormInputComponent, BaseViewerWidgetComponent, ErrorMessageModel, BaseDisplayTextWidgetComponent, ObjectDataColumn, ObjectDataRow, FormBaseModule, provideTranslations } from '@alfresco/adf-core';
|
|
5
5
|
import { from, EMPTY, isObservable, of, Subject, throwError, BehaviorSubject, combineLatest, defer, merge, asapScheduler, firstValueFrom, forkJoin, catchError as catchError$1 } from 'rxjs';
|
|
6
|
-
import { map, take, switchMap, catchError, distinctUntilChanged, filter, tap, finalize, debounceTime, shareReplay,
|
|
6
|
+
import { map, take, switchMap, catchError, distinctUntilChanged, filter, tap, finalize, debounceTime, shareReplay, mergeMap, expand, reduce, mapTo, concatMap } from 'rxjs/operators';
|
|
7
7
|
import { AlfrescoApiService, NodeAction, ContentNodeSelectorComponent, NodesApiService, ContentService, ContentNodeSelectorPanelService, NewVersionUploaderService, NewVersionUploaderDataAction, ContentMetadataComponent, AlfrescoViewerComponent } from '@alfresco/adf-content-services';
|
|
8
8
|
import { AdfHttpClient } from '@alfresco/adf-core/api';
|
|
9
9
|
import { takeUntilDestroyed, toSignal } from '@angular/core/rxjs-interop';
|
|
@@ -4193,23 +4193,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
|
|
|
4193
4193
|
args: [{ providedIn: 'root' }]
|
|
4194
4194
|
}] });
|
|
4195
4195
|
|
|
4196
|
-
/*!
|
|
4197
|
-
* @license
|
|
4198
|
-
* Copyright © 2005-2026 Hyland Software, Inc. and its affiliates. All rights reserved.
|
|
4199
|
-
*
|
|
4200
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
4201
|
-
* you may not use this file except in compliance with the License.
|
|
4202
|
-
* You may obtain a copy of the License at
|
|
4203
|
-
*
|
|
4204
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
4205
|
-
*
|
|
4206
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
4207
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
4208
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4209
|
-
* See the License for the specific language governing permissions and
|
|
4210
|
-
* limitations under the License.
|
|
4211
|
-
*/
|
|
4212
|
-
|
|
4213
4196
|
/*!
|
|
4214
4197
|
* @license
|
|
4215
4198
|
* Copyright © 2005-2026 Hyland Software, Inc. and its affiliates. All rights reserved.
|
|
@@ -4393,259 +4376,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
|
|
|
4393
4376
|
* limitations under the License.
|
|
4394
4377
|
*/
|
|
4395
4378
|
|
|
4396
|
-
/*!
|
|
4397
|
-
* @license
|
|
4398
|
-
* Copyright © 2005-2026 Hyland Software, Inc. and its affiliates. All rights reserved.
|
|
4399
|
-
*
|
|
4400
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
4401
|
-
* you may not use this file except in compliance with the License.
|
|
4402
|
-
* You may obtain a copy of the License at
|
|
4403
|
-
*
|
|
4404
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
4405
|
-
*
|
|
4406
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
4407
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
4408
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4409
|
-
* See the License for the specific language governing permissions and
|
|
4410
|
-
* limitations under the License.
|
|
4411
|
-
*/
|
|
4412
|
-
const PUSHED_COUNTER_SUBSCRIPTIONS_BY_ENTITY_TYPE = {
|
|
4413
|
-
[FilterCounterEntityType.TASK]: [
|
|
4414
|
-
{
|
|
4415
|
-
filterKey: 'my-tasks',
|
|
4416
|
-
graphQlFieldName: 'assignedTasks',
|
|
4417
|
-
subscriptionQuery: `
|
|
4418
|
-
subscription {
|
|
4419
|
-
assignedTasks {
|
|
4420
|
-
count
|
|
4421
|
-
asOf
|
|
4422
|
-
}
|
|
4423
|
-
}
|
|
4424
|
-
`
|
|
4425
|
-
},
|
|
4426
|
-
{
|
|
4427
|
-
filterKey: 'queued-tasks',
|
|
4428
|
-
graphQlFieldName: 'queuedTasks',
|
|
4429
|
-
subscriptionQuery: `
|
|
4430
|
-
subscription {
|
|
4431
|
-
queuedTasks {
|
|
4432
|
-
count
|
|
4433
|
-
asOf
|
|
4434
|
-
}
|
|
4435
|
-
}
|
|
4436
|
-
`
|
|
4437
|
-
}
|
|
4438
|
-
],
|
|
4439
|
-
[FilterCounterEntityType.PROCESS_INSTANCE]: [
|
|
4440
|
-
{
|
|
4441
|
-
filterKey: 'running-processes',
|
|
4442
|
-
graphQlFieldName: 'runningProcesses',
|
|
4443
|
-
subscriptionQuery: `
|
|
4444
|
-
subscription {
|
|
4445
|
-
runningProcesses {
|
|
4446
|
-
count
|
|
4447
|
-
asOf
|
|
4448
|
-
}
|
|
4449
|
-
}
|
|
4450
|
-
`
|
|
4451
|
-
}
|
|
4452
|
-
]
|
|
4453
|
-
};
|
|
4454
|
-
class QueryPushedFilterCountersCloudService extends BaseCloudService {
|
|
4455
|
-
constructor() {
|
|
4456
|
-
super(...arguments);
|
|
4457
|
-
this.notificationCloudService = inject(NotificationCloudService);
|
|
4458
|
-
this.taskListCloudService = inject(TaskListCloudService);
|
|
4459
|
-
this.processListCloudService = inject(ProcessListCloudService);
|
|
4460
|
-
this.injector = inject(Injector);
|
|
4461
|
-
this.taskFiltersPerApp = new Map();
|
|
4462
|
-
this.processFiltersPerApp = new Map();
|
|
4463
|
-
this.recountTriggerPerApp = new Map();
|
|
4464
|
-
this.entityTypeCountersPerApp = new Map();
|
|
4465
|
-
this.activeEntityTypesPerApp = new Map();
|
|
4466
|
-
this.activeSubscriberCountPerEntityType = new Map();
|
|
4467
|
-
this.initialCountersPerApp = new Map();
|
|
4468
|
-
this.applyCounterUpdate = (entries, event) => {
|
|
4469
|
-
if (event.source === 'initialFetch') {
|
|
4470
|
-
const mergedEntries = { ...entries };
|
|
4471
|
-
Object.entries(event.counters).forEach(([filterKey, count]) => {
|
|
4472
|
-
if (mergedEntries[filterKey]?.source === 'webSocketPush') {
|
|
4473
|
-
return;
|
|
4474
|
-
}
|
|
4475
|
-
mergedEntries[filterKey] = { count, source: 'initialFetch' };
|
|
4476
|
-
});
|
|
4477
|
-
return mergedEntries;
|
|
4478
|
-
}
|
|
4479
|
-
const existingEntry = entries[event.filterKey];
|
|
4480
|
-
const isOutOfOrderPush = existingEntry?.source === 'webSocketPush' &&
|
|
4481
|
-
existingEntry.asOf !== undefined &&
|
|
4482
|
-
event.asOf !== undefined &&
|
|
4483
|
-
event.asOf < existingEntry.asOf;
|
|
4484
|
-
if (isOutOfOrderPush) {
|
|
4485
|
-
return entries;
|
|
4486
|
-
}
|
|
4487
|
-
return { ...entries, [event.filterKey]: { count: event.count, asOf: event.asOf, source: 'webSocketPush' } };
|
|
4488
|
-
};
|
|
4489
|
-
}
|
|
4490
|
-
getTaskFilters(appName) {
|
|
4491
|
-
return this.shareFilters(this.taskFiltersPerApp, appName, () => this.injector.get(TaskFilterCloudService).getTaskListFilters(appName));
|
|
4492
|
-
}
|
|
4493
|
-
getProcessFilters(appName) {
|
|
4494
|
-
return this.shareFilters(this.processFiltersPerApp, appName, () => this.injector.get(ProcessFilterCloudService).getProcessFilters(appName));
|
|
4495
|
-
}
|
|
4496
|
-
getFilterCounters(appName, entityType) {
|
|
4497
|
-
if (!appName) {
|
|
4498
|
-
return EMPTY;
|
|
4499
|
-
}
|
|
4500
|
-
return defer(() => {
|
|
4501
|
-
this.activateEntityType(appName, entityType);
|
|
4502
|
-
return this.watchEntityTypeCounters(appName, entityType);
|
|
4503
|
-
}).pipe(map((counters) => ({ counters })), finalize(() => this.deactivateEntityType(appName, entityType)));
|
|
4504
|
-
}
|
|
4505
|
-
refreshFilterCounters(appName) {
|
|
4506
|
-
this.recountTrigger(appName).next();
|
|
4507
|
-
}
|
|
4508
|
-
getEngineEvents(_appName, _entityType) {
|
|
4509
|
-
return EMPTY;
|
|
4510
|
-
}
|
|
4511
|
-
watchEntityTypeCounters(appName, entityType) {
|
|
4512
|
-
const key = this.entityTypeKey(appName, entityType);
|
|
4513
|
-
let entityTypeCounters$ = this.entityTypeCountersPerApp.get(key);
|
|
4514
|
-
if (!entityTypeCounters$) {
|
|
4515
|
-
const initialCountersEvents$ = this.initialCounters(appName).pipe(map((counters) => ({
|
|
4516
|
-
source: 'initialFetch',
|
|
4517
|
-
counters: counters[entityType] ?? {}
|
|
4518
|
-
})));
|
|
4519
|
-
const pushedCounterEvents$ = this.pushedCounterUpdates(appName, entityType).pipe(map(({ filterKey, count, asOf }) => ({
|
|
4520
|
-
source: 'webSocketPush',
|
|
4521
|
-
filterKey,
|
|
4522
|
-
count,
|
|
4523
|
-
asOf
|
|
4524
|
-
})));
|
|
4525
|
-
entityTypeCounters$ = merge(initialCountersEvents$, pushedCounterEvents$).pipe(scan(this.applyCounterUpdate, {}), map((entries) => this.toEntityTypeCounters(entries)), shareReplay({ bufferSize: 1, refCount: true }));
|
|
4526
|
-
this.entityTypeCountersPerApp.set(key, entityTypeCounters$);
|
|
4527
|
-
}
|
|
4528
|
-
return entityTypeCounters$;
|
|
4529
|
-
}
|
|
4530
|
-
activateEntityType(appName, entityType) {
|
|
4531
|
-
const key = this.entityTypeKey(appName, entityType);
|
|
4532
|
-
const activeSubscriberCount = (this.activeSubscriberCountPerEntityType.get(key) ?? 0) + 1;
|
|
4533
|
-
this.activeSubscriberCountPerEntityType.set(key, activeSubscriberCount);
|
|
4534
|
-
if (activeSubscriberCount > 1) {
|
|
4535
|
-
return;
|
|
4536
|
-
}
|
|
4537
|
-
const activeEntityTypes = this.activeEntityTypes(appName);
|
|
4538
|
-
const joinsAlreadyActiveEntityTypes = activeEntityTypes.size > 0;
|
|
4539
|
-
activeEntityTypes.add(entityType);
|
|
4540
|
-
if (joinsAlreadyActiveEntityTypes) {
|
|
4541
|
-
this.refreshFilterCounters(appName);
|
|
4542
|
-
}
|
|
4543
|
-
}
|
|
4544
|
-
deactivateEntityType(appName, entityType) {
|
|
4545
|
-
const key = this.entityTypeKey(appName, entityType);
|
|
4546
|
-
const activeSubscriberCount = (this.activeSubscriberCountPerEntityType.get(key) ?? 1) - 1;
|
|
4547
|
-
if (activeSubscriberCount > 0) {
|
|
4548
|
-
this.activeSubscriberCountPerEntityType.set(key, activeSubscriberCount);
|
|
4549
|
-
return;
|
|
4550
|
-
}
|
|
4551
|
-
this.activeSubscriberCountPerEntityType.delete(key);
|
|
4552
|
-
this.activeEntityTypes(appName).delete(entityType);
|
|
4553
|
-
}
|
|
4554
|
-
activeEntityTypes(appName) {
|
|
4555
|
-
let activeEntityTypes = this.activeEntityTypesPerApp.get(appName);
|
|
4556
|
-
if (!activeEntityTypes) {
|
|
4557
|
-
activeEntityTypes = new Set();
|
|
4558
|
-
this.activeEntityTypesPerApp.set(appName, activeEntityTypes);
|
|
4559
|
-
}
|
|
4560
|
-
return activeEntityTypes;
|
|
4561
|
-
}
|
|
4562
|
-
initialCounters(appName) {
|
|
4563
|
-
let initialCounters$ = this.initialCountersPerApp.get(appName);
|
|
4564
|
-
if (!initialCounters$) {
|
|
4565
|
-
initialCounters$ = merge(of(undefined), this.recountTrigger(appName)).pipe(debounceTime(0), switchMap(() => this.fetchActiveEntityTypesCounters(appName)), shareReplay({ bufferSize: 1, refCount: true }));
|
|
4566
|
-
this.initialCountersPerApp.set(appName, initialCounters$);
|
|
4567
|
-
}
|
|
4568
|
-
return initialCounters$;
|
|
4569
|
-
}
|
|
4570
|
-
pushedCounterUpdates(appName, entityType) {
|
|
4571
|
-
return merge(...PUSHED_COUNTER_SUBSCRIPTIONS_BY_ENTITY_TYPE[entityType].map((subscription) => this.pushedCounterUpdate(appName, subscription)));
|
|
4572
|
-
}
|
|
4573
|
-
pushedCounterUpdate(appName, subscription) {
|
|
4574
|
-
return defer(() => this.notificationCloudService.makeGQLQuery(appName, subscription.subscriptionQuery)).pipe(map((result) => result.data?.[subscription.graphQlFieldName]), filter((value) => value?.count !== undefined), map((value) => ({ filterKey: subscription.filterKey, count: value.count, asOf: value.asOf })), catchError(() => EMPTY));
|
|
4575
|
-
}
|
|
4576
|
-
toEntityTypeCounters(entries) {
|
|
4577
|
-
return Object.fromEntries(Object.entries(entries).map(([filterKey, entry]) => [filterKey, entry.count]));
|
|
4578
|
-
}
|
|
4579
|
-
fetchActiveEntityTypesCounters(appName) {
|
|
4580
|
-
const activeEntityTypes = this.activeEntityTypes(appName);
|
|
4581
|
-
return combineLatest({
|
|
4582
|
-
[FilterCounterEntityType.TASK]: activeEntityTypes.has(FilterCounterEntityType.TASK)
|
|
4583
|
-
? this.getTaskFilters(appName).pipe(catchError(() => of([])))
|
|
4584
|
-
: of([]),
|
|
4585
|
-
[FilterCounterEntityType.PROCESS_INSTANCE]: activeEntityTypes.has(FilterCounterEntityType.PROCESS_INSTANCE)
|
|
4586
|
-
? this.getProcessFilters(appName).pipe(catchError(() => of([])))
|
|
4587
|
-
: of([])
|
|
4588
|
-
}).pipe(take(1), switchMap((filters) => this.fetchFilterCounters(appName, this.buildRequest(filters))), catchError(() => EMPTY));
|
|
4589
|
-
}
|
|
4590
|
-
buildRequest(filters) {
|
|
4591
|
-
const request = {};
|
|
4592
|
-
const taskQueries = this.buildQueries(filters[FilterCounterEntityType.TASK], (taskFilter) => this.taskListCloudService.buildQueryData(new TaskFilterCloudAdapter(taskFilter)));
|
|
4593
|
-
if (taskQueries.length) {
|
|
4594
|
-
request[FilterCounterEntityType.TASK] = taskQueries;
|
|
4595
|
-
}
|
|
4596
|
-
const processQueries = this.buildQueries(filters[FilterCounterEntityType.PROCESS_INSTANCE], (processFilter) => this.processListCloudService.buildQueryData(new ProcessFilterCloudAdapter(processFilter)));
|
|
4597
|
-
if (processQueries.length) {
|
|
4598
|
-
request[FilterCounterEntityType.PROCESS_INSTANCE] = processQueries;
|
|
4599
|
-
}
|
|
4600
|
-
return request;
|
|
4601
|
-
}
|
|
4602
|
-
buildQueries(filters, buildQuery) {
|
|
4603
|
-
return (filters ?? [])
|
|
4604
|
-
.filter((candidate) => candidate?.showCounter && !!candidate?.key)
|
|
4605
|
-
.map((candidate) => {
|
|
4606
|
-
try {
|
|
4607
|
-
return { ...buildQuery(candidate), requestId: candidate.key };
|
|
4608
|
-
}
|
|
4609
|
-
catch {
|
|
4610
|
-
return undefined;
|
|
4611
|
-
}
|
|
4612
|
-
})
|
|
4613
|
-
.filter((query) => !!query);
|
|
4614
|
-
}
|
|
4615
|
-
fetchFilterCounters(appName, request) {
|
|
4616
|
-
if (!Object.keys(request).length) {
|
|
4617
|
-
return of({});
|
|
4618
|
-
}
|
|
4619
|
-
const queryUrl = `${this.getBasePath(appName)}/query/v1/count`;
|
|
4620
|
-
return this.post(queryUrl, request).pipe(map((counters) => counters || {}));
|
|
4621
|
-
}
|
|
4622
|
-
shareFilters(cache, appName, loadFilters) {
|
|
4623
|
-
let filters$ = cache.get(appName);
|
|
4624
|
-
if (!filters$) {
|
|
4625
|
-
filters$ = defer(loadFilters).pipe(shareReplay({ bufferSize: 1, refCount: true }));
|
|
4626
|
-
cache.set(appName, filters$);
|
|
4627
|
-
}
|
|
4628
|
-
return filters$;
|
|
4629
|
-
}
|
|
4630
|
-
recountTrigger(appName) {
|
|
4631
|
-
let recountTrigger$ = this.recountTriggerPerApp.get(appName);
|
|
4632
|
-
if (!recountTrigger$) {
|
|
4633
|
-
recountTrigger$ = new Subject();
|
|
4634
|
-
this.recountTriggerPerApp.set(appName, recountTrigger$);
|
|
4635
|
-
}
|
|
4636
|
-
return recountTrigger$;
|
|
4637
|
-
}
|
|
4638
|
-
entityTypeKey(appName, entityType) {
|
|
4639
|
-
return `${appName}|${entityType}`;
|
|
4640
|
-
}
|
|
4641
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: QueryPushedFilterCountersCloudService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4642
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: QueryPushedFilterCountersCloudService, providedIn: 'root' }); }
|
|
4643
|
-
}
|
|
4644
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: QueryPushedFilterCountersCloudService, decorators: [{
|
|
4645
|
-
type: Injectable,
|
|
4646
|
-
args: [{ providedIn: 'root' }]
|
|
4647
|
-
}] });
|
|
4648
|
-
|
|
4649
4379
|
/*!
|
|
4650
4380
|
* @license
|
|
4651
4381
|
* Copyright © 2005-2026 Hyland Software, Inc. and its affiliates. All rights reserved.
|
|
@@ -4988,13 +4718,6 @@ class TaskFiltersCloudComponent extends BaseTaskFiltersCloudComponent {
|
|
|
4988
4718
|
*
|
|
4989
4719
|
*/
|
|
4990
4720
|
this.searchApiMethod = 'GET';
|
|
4991
|
-
/**
|
|
4992
|
-
* (optional) Resolves the initial counters of the filters with a single call to
|
|
4993
|
-
* `POST /query/v1/count`, then keeps the counters of the `my-tasks` and `queued-tasks`
|
|
4994
|
-
* filters in sync with the counts pushed by the engine over the web socket, without any
|
|
4995
|
-
* further call to the count endpoint. Both filter components have to use the same value.
|
|
4996
|
-
*/
|
|
4997
|
-
this.queryPushedCounter = false;
|
|
4998
4721
|
/** Emitted when a filter is being selected based on the filterParam input. */
|
|
4999
4722
|
this.filterSelected = new EventEmitter();
|
|
5000
4723
|
/** Emitted when a filter is being clicked from the UI. */
|
|
@@ -5010,15 +4733,11 @@ class TaskFiltersCloudComponent extends BaseTaskFiltersCloudComponent {
|
|
|
5010
4733
|
this.taskFilterCloudService = inject(TaskFilterCloudService);
|
|
5011
4734
|
this.taskListCloudService = inject(TaskListCloudService);
|
|
5012
4735
|
this.filterCountersCloudService = inject(FilterCountersCloudService);
|
|
5013
|
-
this.queryPushedFilterCountersCloudService = inject(QueryPushedFilterCountersCloudService);
|
|
5014
4736
|
this.translationService = inject(TranslationService);
|
|
5015
4737
|
this.appConfigService = inject(AppConfigService);
|
|
5016
4738
|
this.activatedRoute = inject(ActivatedRoute);
|
|
5017
4739
|
this.currentRouteFilterId = toSignal(this.activatedRoute.queryParamMap.pipe(map((params) => params.get('filterId'))));
|
|
5018
4740
|
}
|
|
5019
|
-
get filterCountersService() {
|
|
5020
|
-
return this.queryPushedCounter ? this.queryPushedFilterCountersCloudService : this.filterCountersCloudService;
|
|
5021
|
-
}
|
|
5022
4741
|
ngOnInit() {
|
|
5023
4742
|
this.enableNotifications = this.appConfigService.get('notifications', true);
|
|
5024
4743
|
this.notificationDebounceTime = this.appConfigService.get('notificationDebounceTime', 3000);
|
|
@@ -5037,10 +4756,6 @@ class TaskFiltersCloudComponent extends BaseTaskFiltersCloudComponent {
|
|
|
5037
4756
|
else if (filter && filter.currentValue !== filter.previousValue) {
|
|
5038
4757
|
this.selectFilterAndEmit(filter.currentValue);
|
|
5039
4758
|
}
|
|
5040
|
-
else if (changes['queryPushedCounter'] && !changes['queryPushedCounter'].firstChange && this.filtersLoadedFor) {
|
|
5041
|
-
this.initFilterCounterNotifications();
|
|
5042
|
-
this.loadFilterCounters(this.filtersLoadedFor);
|
|
5043
|
-
}
|
|
5044
4759
|
}
|
|
5045
4760
|
/**
|
|
5046
4761
|
* Loads the filter list filtered by appName
|
|
@@ -5049,7 +4764,7 @@ class TaskFiltersCloudComponent extends BaseTaskFiltersCloudComponent {
|
|
|
5049
4764
|
*/
|
|
5050
4765
|
getFilters(appName) {
|
|
5051
4766
|
this.filtersLoadedFor = appName;
|
|
5052
|
-
const filters$ = this.
|
|
4767
|
+
const filters$ = this.filterCountersCloudService.getTaskFilters(appName);
|
|
5053
4768
|
this.filters$ = filters$.pipe(catchError(() => of([])));
|
|
5054
4769
|
filters$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe({
|
|
5055
4770
|
next: (res) => {
|
|
@@ -5101,9 +4816,8 @@ class TaskFiltersCloudComponent extends BaseTaskFiltersCloudComponent {
|
|
|
5101
4816
|
if (!this.appName) {
|
|
5102
4817
|
return;
|
|
5103
4818
|
}
|
|
5104
|
-
this.notificationsSubscription?.unsubscribe();
|
|
5105
4819
|
if (this.enableNotifications) {
|
|
5106
|
-
this.
|
|
4820
|
+
this.filterCountersCloudService
|
|
5107
4821
|
.getEngineEvents(this.appName, FilterCounterEntityType.TASK)
|
|
5108
4822
|
.pipe(takeUntilDestroyed(this.destroyRef))
|
|
5109
4823
|
.subscribe((events) => {
|
|
@@ -5206,7 +4920,7 @@ class TaskFiltersCloudComponent extends BaseTaskFiltersCloudComponent {
|
|
|
5206
4920
|
this.countersSubscription?.unsubscribe();
|
|
5207
4921
|
this.countersSubscription = combineLatest([
|
|
5208
4922
|
this.countersFilters$.pipe(catchError(() => of([]))),
|
|
5209
|
-
this.
|
|
4923
|
+
this.filterCountersCloudService.getFilterCounters(appName, FilterCounterEntityType.TASK)
|
|
5210
4924
|
])
|
|
5211
4925
|
.pipe(takeUntilDestroyed(this.destroyRef))
|
|
5212
4926
|
.subscribe(([, { counters }]) => {
|
|
@@ -5241,18 +4955,16 @@ class TaskFiltersCloudComponent extends BaseTaskFiltersCloudComponent {
|
|
|
5241
4955
|
this.currentFilter = undefined;
|
|
5242
4956
|
}
|
|
5243
4957
|
refreshFilterCounter() {
|
|
5244
|
-
this.
|
|
4958
|
+
this.filterCountersCloudService.refreshFilterCounters(this.appName);
|
|
5245
4959
|
}
|
|
5246
4960
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: TaskFiltersCloudComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
5247
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: TaskFiltersCloudComponent, isStandalone: true, selector: "adf-cloud-task-filters", inputs: { searchApiMethod: "searchApiMethod"
|
|
4961
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: TaskFiltersCloudComponent, isStandalone: true, selector: "adf-cloud-task-filters", inputs: { searchApiMethod: "searchApiMethod" }, outputs: { filterSelected: "filterSelected", filterClicked: "filterClicked", filterCounterUpdated: "filterCounterUpdated", updatedFilter: "updatedFilter" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@if (filters$ | async; as filterList) {\n <mat-nav-list>\n @for (filter of filterList; track filter.id) {\n <a mat-list-item\n [activated]=\"filter.id === currentRouteFilterId()\"\n [routerLink]=\"[TASKS_ROUTE]\"\n [queryParams]=\"{ filterId: filter.id }\"\n [attr.data-automation-id]=\"filter.key + '_filter'\"\n class=\"adf-task-filters__entry\"\n [class.adf-active]=\"filter.id === currentRouteFilterId()\"\n [attr.aria-current]=\"filter.id === currentRouteFilterId() ? 'page' : null\"\n [id]=\"filter.id\"\n [title]=\"filter.name | translate\"\n [attr.aria-label]=\"filter.name | translate\"\n (click)=\"onFilterClick(filter)\">\n <span matListItemTitle>\n {{ filter.name | translate }}\n </span>\n @if (showIcons) {\n <mat-icon matListItemIcon\n data-automation-id=\"adf-filter-icon\"\n [adf-icon]=\"filter.icon\"\n aria-hidden=\"true\" />\n }\n @if (counters[filter.key]) {\n <span matListItemMeta\n [attr.data-automation-id]=\"filter.key + '_filter-counter'\"\n class=\"adf-task-filters__entry-counter\"\n [class.adf-active]=\"wasFilterUpdated(filter.key)\"\n >\n {{ counters[filter.key] }}\n </span>\n }\n </a>\n }\n </mat-nav-list>\n} @else {\n <div class=\"adf-app-list-spinner\">\n <mat-spinner [attr.aria-label]=\"'ADF_CLOUD_TASK_LIST.LOADING' | translate\" aria-live=\"polite\" />\n </div>\n}\n", styles: [".adf-task-filters__entry-counter{padding:0 5px;border-radius:var(--mat-sys-corner-large)}.adf-task-filters__entry-counter.adf-active{background-color:var(--mat-sys-secondary);--mat-list-list-item-trailing-supporting-text-color: var(--mat-sys-on-secondary)}\n"], dependencies: [{ kind: "ngmodule", type: MatProgressSpinnerModule }, { kind: "component", type: i2.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "ngmodule", type: MatListModule }, { kind: "component", type: i2$1.MatNavList, selector: "mat-nav-list", exportAs: ["matNavList"] }, { kind: "component", type: i2$1.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i2$1.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "directive", type: i2$1.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "directive", type: i2$1.MatListItemMeta, selector: "[matListItemMeta]" }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: IconModule }, { kind: "component", type: i2$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i3.IconDirective, selector: "mat-icon[adf-icon]", inputs: ["adf-icon"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
|
5248
4962
|
}
|
|
5249
4963
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: TaskFiltersCloudComponent, decorators: [{
|
|
5250
4964
|
type: Component,
|
|
5251
4965
|
args: [{ selector: 'adf-cloud-task-filters', imports: [AsyncPipe, MatProgressSpinnerModule, TranslatePipe, MatListModule, RouterLink, IconModule], template: "@if (filters$ | async; as filterList) {\n <mat-nav-list>\n @for (filter of filterList; track filter.id) {\n <a mat-list-item\n [activated]=\"filter.id === currentRouteFilterId()\"\n [routerLink]=\"[TASKS_ROUTE]\"\n [queryParams]=\"{ filterId: filter.id }\"\n [attr.data-automation-id]=\"filter.key + '_filter'\"\n class=\"adf-task-filters__entry\"\n [class.adf-active]=\"filter.id === currentRouteFilterId()\"\n [attr.aria-current]=\"filter.id === currentRouteFilterId() ? 'page' : null\"\n [id]=\"filter.id\"\n [title]=\"filter.name | translate\"\n [attr.aria-label]=\"filter.name | translate\"\n (click)=\"onFilterClick(filter)\">\n <span matListItemTitle>\n {{ filter.name | translate }}\n </span>\n @if (showIcons) {\n <mat-icon matListItemIcon\n data-automation-id=\"adf-filter-icon\"\n [adf-icon]=\"filter.icon\"\n aria-hidden=\"true\" />\n }\n @if (counters[filter.key]) {\n <span matListItemMeta\n [attr.data-automation-id]=\"filter.key + '_filter-counter'\"\n class=\"adf-task-filters__entry-counter\"\n [class.adf-active]=\"wasFilterUpdated(filter.key)\"\n >\n {{ counters[filter.key] }}\n </span>\n }\n </a>\n }\n </mat-nav-list>\n} @else {\n <div class=\"adf-app-list-spinner\">\n <mat-spinner [attr.aria-label]=\"'ADF_CLOUD_TASK_LIST.LOADING' | translate\" aria-live=\"polite\" />\n </div>\n}\n", styles: [".adf-task-filters__entry-counter{padding:0 5px;border-radius:var(--mat-sys-corner-large)}.adf-task-filters__entry-counter.adf-active{background-color:var(--mat-sys-secondary);--mat-list-list-item-trailing-supporting-text-color: var(--mat-sys-on-secondary)}\n"] }]
|
|
5252
4966
|
}], propDecorators: { searchApiMethod: [{
|
|
5253
4967
|
type: Input
|
|
5254
|
-
}], queryPushedCounter: [{
|
|
5255
|
-
type: Input
|
|
5256
4968
|
}], filterSelected: [{
|
|
5257
4969
|
type: Output
|
|
5258
4970
|
}], filterClicked: [{
|
|
@@ -8062,7 +7774,7 @@ const isDropdownCloudValidValue = (value, options) => !!value && isDropdownCloud
|
|
|
8062
7774
|
const isDropdownCloudRestField = (field) => field?.optionType === 'rest' && !!field?.restUrl;
|
|
8063
7775
|
const isDropdownCloudLinkedField = (field) => !!field?.rule?.ruleOn;
|
|
8064
7776
|
const getOptionsFromPath = (data, path, id, label) => {
|
|
8065
|
-
const properties = path.split('.')
|
|
7777
|
+
const properties = path.split('.');
|
|
8066
7778
|
const currentProperty = properties.shift();
|
|
8067
7779
|
if (data === null || typeof data !== 'object' || !Object.hasOwn(data, currentProperty)) {
|
|
8068
7780
|
return { options: [], errors: [`${currentProperty} not found in ${JSON.stringify(data)}`] };
|
|
@@ -8080,11 +7792,7 @@ const resolveDropdownCloudVariableOptions = (field, variableConfig = field?.vari
|
|
|
8080
7792
|
if (data == null) {
|
|
8081
7793
|
return null;
|
|
8082
7794
|
}
|
|
8083
|
-
|
|
8084
|
-
if (!optionsPath.trim()) {
|
|
8085
|
-
return { options: [], errors: ['Options path is empty'] };
|
|
8086
|
-
}
|
|
8087
|
-
return getOptionsFromPath(data, optionsPath, variableConfig?.optionsId ?? DEFAULT_VARIABLE_OPTION_ID, variableConfig?.optionsLabel ?? DEFAULT_VARIABLE_OPTION_LABEL);
|
|
7795
|
+
return getOptionsFromPath(data, variableConfig?.optionsPath ?? DEFAULT_VARIABLE_OPTION_PATH, variableConfig?.optionsId ?? DEFAULT_VARIABLE_OPTION_ID, variableConfig?.optionsLabel ?? DEFAULT_VARIABLE_OPTION_LABEL);
|
|
8088
7796
|
};
|
|
8089
7797
|
|
|
8090
7798
|
/*!
|
|
@@ -12282,13 +11990,6 @@ class ProcessFiltersCloudComponent {
|
|
|
12282
11990
|
*
|
|
12283
11991
|
*/
|
|
12284
11992
|
this.searchApiMethod = 'GET';
|
|
12285
|
-
/**
|
|
12286
|
-
* (optional) Resolves the initial counters of the filters with a single call to
|
|
12287
|
-
* `POST /query/v1/count`, then keeps the counter of the `running-processes` filter in sync
|
|
12288
|
-
* with the counts pushed by the engine over the web socket, without any further call to the
|
|
12289
|
-
* count endpoint. Both filter components have to use the same value.
|
|
12290
|
-
*/
|
|
12291
|
-
this.queryPushedCounter = false;
|
|
12292
11993
|
/** (optional) Toggles showing an icon by the side of each filter */
|
|
12293
11994
|
this.showIcons = false;
|
|
12294
11995
|
/** Emitted when a filter is being selected based on the filterParam input. */
|
|
@@ -12313,13 +12014,9 @@ class ProcessFiltersCloudComponent {
|
|
|
12313
12014
|
this.appConfigService = inject(AppConfigService);
|
|
12314
12015
|
this.processListCloudService = inject(ProcessListCloudService);
|
|
12315
12016
|
this.filterCountersCloudService = inject(FilterCountersCloudService);
|
|
12316
|
-
this.queryPushedFilterCountersCloudService = inject(QueryPushedFilterCountersCloudService);
|
|
12317
12017
|
this.activatedRoute = inject(ActivatedRoute);
|
|
12318
12018
|
this.currentRouteFilterId = toSignal(this.activatedRoute.queryParamMap.pipe(map((params) => params.get('filterId'))));
|
|
12319
12019
|
}
|
|
12320
|
-
get filterCountersService() {
|
|
12321
|
-
return this.queryPushedCounter ? this.queryPushedFilterCountersCloudService : this.filterCountersCloudService;
|
|
12322
|
-
}
|
|
12323
12020
|
ngOnInit() {
|
|
12324
12021
|
this.enableNotifications = this.appConfigService.get('notifications', true);
|
|
12325
12022
|
this.notificationDebounceTime = this.appConfigService.get('notificationDebounceTime', 3000);
|
|
@@ -12337,9 +12034,6 @@ class ProcessFiltersCloudComponent {
|
|
|
12337
12034
|
else if (filter && filter.currentValue !== filter.previousValue) {
|
|
12338
12035
|
this.selectFilterAndEmit(filter.currentValue);
|
|
12339
12036
|
}
|
|
12340
|
-
else if (changes['queryPushedCounter'] && !changes['queryPushedCounter'].firstChange && this.filtersLoadedFor) {
|
|
12341
|
-
this.loadFilterCounters(this.filtersLoadedFor);
|
|
12342
|
-
}
|
|
12343
12037
|
}
|
|
12344
12038
|
/**
|
|
12345
12039
|
* Fetch the filter list based on appName
|
|
@@ -12348,7 +12042,7 @@ class ProcessFiltersCloudComponent {
|
|
|
12348
12042
|
*/
|
|
12349
12043
|
getFilters(appName) {
|
|
12350
12044
|
this.filtersLoadedFor = appName;
|
|
12351
|
-
const filters$ = this.
|
|
12045
|
+
const filters$ = this.filterCountersCloudService.getProcessFilters(appName);
|
|
12352
12046
|
this.filters$ = filters$.pipe(catchError(() => of([])));
|
|
12353
12047
|
filters$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe({
|
|
12354
12048
|
next: (res) => {
|
|
@@ -12532,7 +12226,7 @@ class ProcessFiltersCloudComponent {
|
|
|
12532
12226
|
this.countersSubscription?.unsubscribe();
|
|
12533
12227
|
this.countersSubscription = combineLatest([
|
|
12534
12228
|
this.countersFilters$.pipe(catchError(() => of([]))),
|
|
12535
|
-
this.
|
|
12229
|
+
this.filterCountersCloudService.getFilterCounters(appName, FilterCounterEntityType.PROCESS_INSTANCE)
|
|
12536
12230
|
])
|
|
12537
12231
|
.pipe(takeUntilDestroyed(this.destroyRef))
|
|
12538
12232
|
.subscribe(([, { counters }]) => {
|
|
@@ -12555,7 +12249,7 @@ class ProcessFiltersCloudComponent {
|
|
|
12555
12249
|
});
|
|
12556
12250
|
}
|
|
12557
12251
|
refreshFilterCounter() {
|
|
12558
|
-
this.
|
|
12252
|
+
this.filterCountersCloudService.refreshFilterCounters(this.appName);
|
|
12559
12253
|
}
|
|
12560
12254
|
fetchProcessFilterCounter(filter) {
|
|
12561
12255
|
return this.searchApiMethod === 'POST'
|
|
@@ -12563,7 +12257,7 @@ class ProcessFiltersCloudComponent {
|
|
|
12563
12257
|
: this.processListCloudService.getProcessCounter(filter.appName, filter.status);
|
|
12564
12258
|
}
|
|
12565
12259
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ProcessFiltersCloudComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
12566
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ProcessFiltersCloudComponent, isStandalone: true, selector: "adf-cloud-process-filters", inputs: { appName: "appName", searchApiMethod: "searchApiMethod",
|
|
12260
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ProcessFiltersCloudComponent, isStandalone: true, selector: "adf-cloud-process-filters", inputs: { appName: "appName", searchApiMethod: "searchApiMethod", filterParam: "filterParam", showIcons: "showIcons" }, outputs: { filterSelected: "filterSelected", filterClicked: "filterClicked", success: "success", error: "error", updatedFilter: "updatedFilter" }, usesOnChanges: true, ngImport: i0, template: "@if (filters$ | async; as filterList) {\n <mat-nav-list>\n @for (filter of filterList; track filter.id) {\n <a mat-list-item\n [activated]=\"filter.id === currentRouteFilterId()\"\n [routerLink]=\"[PROCESSES_ROUTE]\"\n [queryParams]=\"{ filterId: filter.id }\"\n [attr.data-automation-id]=\"filter.key + '_filter'\"\n class=\"adf-process-filters__entry\"\n [class.adf-active]=\"filter.id === currentRouteFilterId()\"\n [attr.aria-current]=\"filter.id === currentRouteFilterId() ? 'page' : null\"\n [id]=\"filter.id\"\n [title]=\"filter.name ?? '' | translate\"\n [attr.aria-label]=\"filter.name ?? '' | translate\"\n (click)=\"onFilterClick(filter)\">\n <span matListItemTitle>\n {{ filter.name ?? '' | translate }}\n </span>\n @if (showIcons) {\n <mat-icon matListItemIcon\n data-automation-id=\"adf-filter-icon\"\n [adf-icon]=\"filter.icon ?? ''\"\n aria-hidden=\"true\" />\n }\n @if (counters[filter.key ?? '']) {\n <span matListItemMeta\n [attr.data-automation-id]=\"filter.key + '_filter-counter'\"\n class=\"adf-process-filters__entry-counter\"\n [class.adf-active]=\"isFilterUpdated(filter.key ?? '')\"\n >\n {{ counters[filter.key ?? ''] }}\n </span>\n }\n </a>\n }\n </mat-nav-list>\n} @else {\n <div class=\"adf-app-list-spinner\">\n <mat-spinner [attr.aria-label]=\"'ADF_CLOUD_PROCESS_LIST.LOADING' | translate\" aria-live=\"polite\" />\n </div>\n}\n\n", styles: [".adf-process-filters__entry-counter{padding:0 5px;border-radius:var(--mat-sys-corner-large)}.adf-process-filters__entry-counter.adf-active{background-color:var(--mat-sys-secondary);--mat-list-list-item-trailing-supporting-text-color: var(--mat-sys-on-secondary)}\n"], dependencies: [{ kind: "ngmodule", type: IconModule }, { kind: "component", type: i2$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i3.IconDirective, selector: "mat-icon[adf-icon]", inputs: ["adf-icon"] }, { kind: "ngmodule", type: MatProgressSpinnerModule }, { kind: "component", type: i2.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "ngmodule", type: MatListModule }, { kind: "component", type: i2$1.MatNavList, selector: "mat-nav-list", exportAs: ["matNavList"] }, { kind: "component", type: i2$1.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i2$1.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "directive", type: i2$1.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "directive", type: i2$1.MatListItemMeta, selector: "[matListItemMeta]" }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
|
|
12567
12261
|
}
|
|
12568
12262
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ProcessFiltersCloudComponent, decorators: [{
|
|
12569
12263
|
type: Component,
|
|
@@ -12572,8 +12266,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
|
|
|
12572
12266
|
type: Input
|
|
12573
12267
|
}], searchApiMethod: [{
|
|
12574
12268
|
type: Input
|
|
12575
|
-
}], queryPushedCounter: [{
|
|
12576
|
-
type: Input
|
|
12577
12269
|
}], filterParam: [{
|
|
12578
12270
|
type: Input
|
|
12579
12271
|
}], showIcons: [{
|
|
@@ -15928,9 +15620,6 @@ class DataTablePathParserHelper {
|
|
|
15928
15620
|
return undefined;
|
|
15929
15621
|
}
|
|
15930
15622
|
const properties = this.splitPathIntoProperties(path);
|
|
15931
|
-
if (properties.length === 0) {
|
|
15932
|
-
return undefined;
|
|
15933
|
-
}
|
|
15934
15623
|
const currentProperty = properties.shift();
|
|
15935
15624
|
const propertyIndexReferences = this.getIndexReferencesFromProperty(currentProperty);
|
|
15936
15625
|
const purePropertyName = this.extractPurePropertyName(currentProperty);
|
|
@@ -15962,7 +15651,7 @@ class DataTablePathParserHelper {
|
|
|
15962
15651
|
switch (char) {
|
|
15963
15652
|
case separator:
|
|
15964
15653
|
if (isPropertySeparatorOutsideBrackets()) {
|
|
15965
|
-
properties.push(currentPropertyBuffer
|
|
15654
|
+
properties.push(currentPropertyBuffer);
|
|
15966
15655
|
currentPropertyBuffer = '';
|
|
15967
15656
|
}
|
|
15968
15657
|
else {
|
|
@@ -15982,9 +15671,8 @@ class DataTablePathParserHelper {
|
|
|
15982
15671
|
break;
|
|
15983
15672
|
}
|
|
15984
15673
|
}
|
|
15985
|
-
|
|
15986
|
-
|
|
15987
|
-
properties.push(lastProperty);
|
|
15674
|
+
if (currentPropertyBuffer) {
|
|
15675
|
+
properties.push(currentPropertyBuffer);
|
|
15988
15676
|
}
|
|
15989
15677
|
return properties;
|
|
15990
15678
|
}
|
|
@@ -17420,5 +17108,5 @@ const DATE_FORMAT_CLOUD = 'YYYY-MM-DD';
|
|
|
17420
17108
|
* Generated bundle index. Do not edit.
|
|
17421
17109
|
*/
|
|
17422
17110
|
|
|
17423
|
-
export { ADF_FORM_TAB_NAV_ENABLED, ADF_TASK_RUNTIME_BUNDLE_FALLBACK_ENABLED, APP_CUSTOM_SCREEN_TOKEN, ApplicationVersionModel, ApplicationVersionResponseModel, AppsProcessCloudService, AssignmentType, AttachFileCloudWidgetComponent, BaseCloudService, CLOUD_FORM_FIELD_VALIDATORS, CloudFormRenderingService, ContentCloudNodeSelectorService, DATE_FORMAT_CLOUD, DEFAULT_OPTION, DEFAULT_TASK_PRIORITIES, DROPDOWN_CLOUD_WIDGET_SET_VALUE_DEBOUNCE, DateCloudFilterType, DateCloudWidgetComponent, DateRangeFilterService, DescriptorCustomUIAuthFlowType, DisplayModeService, DisplayRichTextWidgetComponent, DropdownCloudFieldValidator, DropdownCloudWidgetComponent, EditProcessFilterCloudComponent, EditServiceTaskFilterCloudComponent, EditTaskFilterCloudComponent, FORM_CLOUD_DIRECTIVES, FORM_CLOUD_FIELD_VALIDATORS_TOKEN, FORM_CLOUD_SERVICE_FIELD_VALIDATORS_TOKEN, FilePropertiesTableCloudComponent, FileViewerWidgetComponent, FilterCounterEntityType, FilterCountersCloudService, FormCloudComponent, FormCloudDisplayMode, FormCloudModule, FormCloudService, FormCustomOutcomesComponent, FormFieldType, FormSpinnerComponent, GroupCloudComponent, GroupCloudModule, GroupCloudWidgetComponent, HIDE_FILTER_LIMIT, IdentityGroupService, IdentityUserService, LocalPreferenceCloudService, NotificationCloudService, PROCESS_CLOUD_DIRECTIVES, PROCESS_FILTERS_CLOUD_DIRECTIVES, PROCESS_FILTERS_SERVICE_TOKEN, PROCESS_FILTER_ACTION_DELETE, PROCESS_FILTER_ACTION_RESTORE, PROCESS_FILTER_ACTION_SAVE, PROCESS_FILTER_ACTION_SAVE_AS, PROCESS_FILTER_ACTION_SAVE_DEFAULT, PROCESS_LISTS_PREFERENCES_SERVICE_TOKEN, PROCESS_SERVICES_CLOUD_DIRECTIVES, PeopleCloudComponent, PeopleCloudModule, PeopleCloudWidgetComponent, PeopleModeOptions, ProcessCloudContentService, ProcessCloudModule, ProcessCloudService, ProcessDefinitionCloud, ProcessFilterCloudAdapter, ProcessFilterCloudModel, ProcessFilterCloudService, ProcessFilterDialogCloudComponent, ProcessFiltersCloudComponent, ProcessFiltersCloudModule, ProcessHeaderCloudComponent, ProcessHeaderCloudModule, ProcessListCloudComponent, ProcessListCloudModule, ProcessListCloudPreferences, ProcessListCloudService, ProcessListCloudSortingModel, ProcessListRequestModel, ProcessListRequestSortingModel, ProcessPayloadCloud, ProcessQueryCloudRequestModel, ProcessServicesCloudModule, ProcessTaskListCloudService, PropertiesViewerWidgetComponent, PropertiesViewerWrapperComponent,
|
|
17111
|
+
export { ADF_FORM_TAB_NAV_ENABLED, ADF_TASK_RUNTIME_BUNDLE_FALLBACK_ENABLED, APP_CUSTOM_SCREEN_TOKEN, ApplicationVersionModel, ApplicationVersionResponseModel, AppsProcessCloudService, AssignmentType, AttachFileCloudWidgetComponent, BaseCloudService, CLOUD_FORM_FIELD_VALIDATORS, CloudFormRenderingService, ContentCloudNodeSelectorService, DATE_FORMAT_CLOUD, DEFAULT_OPTION, DEFAULT_TASK_PRIORITIES, DROPDOWN_CLOUD_WIDGET_SET_VALUE_DEBOUNCE, DateCloudFilterType, DateCloudWidgetComponent, DateRangeFilterService, DescriptorCustomUIAuthFlowType, DisplayModeService, DisplayRichTextWidgetComponent, DropdownCloudFieldValidator, DropdownCloudWidgetComponent, EditProcessFilterCloudComponent, EditServiceTaskFilterCloudComponent, EditTaskFilterCloudComponent, FORM_CLOUD_DIRECTIVES, FORM_CLOUD_FIELD_VALIDATORS_TOKEN, FORM_CLOUD_SERVICE_FIELD_VALIDATORS_TOKEN, FilePropertiesTableCloudComponent, FileViewerWidgetComponent, FilterCounterEntityType, FilterCountersCloudService, FormCloudComponent, FormCloudDisplayMode, FormCloudModule, FormCloudService, FormCustomOutcomesComponent, FormFieldType, FormSpinnerComponent, GroupCloudComponent, GroupCloudModule, GroupCloudWidgetComponent, HIDE_FILTER_LIMIT, IdentityGroupService, IdentityUserService, LocalPreferenceCloudService, NotificationCloudService, PROCESS_CLOUD_DIRECTIVES, PROCESS_FILTERS_CLOUD_DIRECTIVES, PROCESS_FILTERS_SERVICE_TOKEN, PROCESS_FILTER_ACTION_DELETE, PROCESS_FILTER_ACTION_RESTORE, PROCESS_FILTER_ACTION_SAVE, PROCESS_FILTER_ACTION_SAVE_AS, PROCESS_FILTER_ACTION_SAVE_DEFAULT, PROCESS_LISTS_PREFERENCES_SERVICE_TOKEN, PROCESS_SERVICES_CLOUD_DIRECTIVES, PeopleCloudComponent, PeopleCloudModule, PeopleCloudWidgetComponent, PeopleModeOptions, ProcessCloudContentService, ProcessCloudModule, ProcessCloudService, ProcessDefinitionCloud, ProcessFilterCloudAdapter, ProcessFilterCloudModel, ProcessFilterCloudService, ProcessFilterDialogCloudComponent, ProcessFiltersCloudComponent, ProcessFiltersCloudModule, ProcessHeaderCloudComponent, ProcessHeaderCloudModule, ProcessListCloudComponent, ProcessListCloudModule, ProcessListCloudPreferences, ProcessListCloudService, ProcessListCloudSortingModel, ProcessListRequestModel, ProcessListRequestSortingModel, ProcessPayloadCloud, ProcessQueryCloudRequestModel, ProcessServicesCloudModule, ProcessTaskListCloudService, PropertiesViewerWidgetComponent, PropertiesViewerWrapperComponent, RICH_TEXT_PARSER_TOKEN, RadioButtonsCloudWidgetComponent, ScreenRenderingService, ServiceTaskFilterCloudService, ServiceTaskFiltersCloudComponent, ServiceTaskListCloudComponent, ServiceTaskListCloudService, StartProcessCloudComponent, StartProcessCloudService, StartProcessScreenCloudComponent, StartTaskCloudRequestModel, TASK_ASSIGNED_STATE, TASK_CANCELLED_STATE, TASK_CLAIM_PERMISSION, TASK_COMPLETED_STATE, TASK_CREATED_STATE, TASK_FILTERS_CLOUD_DIRECTIVES, TASK_FILTERS_SERVICE_TOKEN, TASK_FORM_CLOUD_DIRECTIVES, TASK_LIST_CLOUD_DIRECTIVES, TASK_LIST_CLOUD_TOKEN, TASK_LIST_PREFERENCES_SERVICE_TOKEN, TASK_RELEASE_PERMISSION, TASK_SUSPENDED_STATE, TASK_UPDATE_PERMISSION, TASK_VIEW_PERMISSION, TaskAssignmentFilterCloudComponent, TaskCloudEntryModel, TaskCloudModule, TaskCloudNodePaging, TaskCloudPagingList, TaskCloudService, TaskFilterCloudAdapter, TaskFilterCloudModel, TaskFilterCloudService, TaskFilterDialogCloudComponent, TaskFiltersCloudComponent, TaskFiltersCloudModule, TaskFormCloudComponent, TaskFormModule, TaskHeaderCloudComponent, TaskHeaderCloudModule, TaskListCloudComponent, TaskListCloudModule, TaskListCloudService, TaskListCloudSortingModel, TaskListRequestModel, TaskListRequestSortingModel, TaskQueryCloudRequestModel, TaskStatusFilter, TaskVariableCloud, UploadCloudWidgetComponent, UserPreferenceCloudService, UserTaskCloudButtonsComponent, UserTaskCloudComponent, VariableMapperService, WebSocketService, getDateCloudWidgetRange, getExpressionEvaluationEnabled$, materializeSubmissionValues, processCloudPresetsDefaultModel, provideCloudFormRenderer, provideCloudPreferences, provideScreen, radioButtonsSchema, resolveTaskRuntimeBundleFallback$ };
|
|
17424
17112
|
//# sourceMappingURL=adf-process-services-cloud.mjs.map
|